I recently replayed the excellent Portal 2 by Valve. One of my favorite things in the game are the automatic robotic sentry turrets. The contrast of their cutesy voices with the fact that they fire machine guns at you on sight makes them a core part of the gallows humor present in the Portal series of games. As I played through the game, I realized that a lot of the voice cues trigger on events that are similar to another robot closer to home - the iRobot Roomba robotic vacuum cleaner. I decided I had to find a way to combine these two things!

Continue reading...

I ran into an interesting Windows quirk recently. I set up a spare Windows 7 box as a GitLab-CI Runner to see if it was any better than an existing Jenkins-based pipeline. The runner is pretty easy to set up, a few commands and I had it set up as a service running under Windows built in Local System account - the recommended configuration.

I configured the runner to clone a master repo (set up as a public repo in GitLab) and run some build scripts. One of those scripts checks out a submodule which comes from another GitLab repo, but this one's permissions are set to internal. This caused the script to barf because internal repos in GitLab require authentication.

Continue reading...

SSL, or Secure Sockets Layer, is one of the technologies essential to security on the web. It allows a web browser and server to form an encrypted connection. Encryption is an essential part of web security. If you're browsing the web in a coffee shop or airport without encryption, it's trivial for anyone else to see exactly what you're looking at.

Continue reading...

I've been operating my site on various flavors of shared web hosting for years. Shared hosting has a lot of benefits: it's cheap, easy to set up, and hides almost all of the nuts and bolts. I finally decided to take the plunge and remove the training wheels by hosting my site on AWS.

Continue reading...

Recently, I've been watching the excellent show Mayday (or Air Disasters in the USA). The anatomy of how complex systems break down and fail has always fascinated me, and this show does an awesome job of presenting that information in an engaging fashion.

Continue reading...