Mike's Blog

Notes to myself, shared with the world. A collection of projects, thoughts, and ideas — mostly about computers.

See all my blog posts, sorted by year, in my blog archive.

Subscribe
Why CI?

Why CI?

In recent years (and in some cases, for many years), Continuous Integration (CI) has been taking off. Almost any open source project you look at is using some kind of CI tool like Jenkins, TravisCI, or CodeShip. In the simplest cast, the CI server is just running unit tests. In more complex cases, the CI server runs unit and integration tests, produces a build, and maybe even deploys the software.

Continue reading…
Fitbit Surge vs. Garmin Forerunner 35

Fitbit Surge vs. Garmin Forerunner 35

I was recently shopping around for a new GPS running watch, and I tried both the Fitbit Surge and the Garmin Forerunner 35. These devices are both good GPS watches with a similar feature set, so I thought it would be worthwhile to see how they stack up against each other.

Continue reading…
When's My Code Going Out?

When's My Code Going Out?

At SpotX, we manage our codebase with Git. Our commits flow from our develop branch to production, with a code-freeze branch in-between. Like this:

Continue reading…
How I Manage Passwords with KeePass

How I Manage Passwords with KeePass

Several weeks ago, I wrote a blog post about how horrible it is to have to deal with the various password restrictions websites use. Of course, that post was influenced by Jeff Atwood’s post, Password Rules are Bullshit. While writing the post, I did some research on what makes a good password. And after writing it, I spent several weeks thinking about my own password management strategies.

Continue reading…
Chasing Bugs: PHPUnit Hides Errors

Chasing Bugs: PHPUnit Hides Errors

I love stories about hunting down interesting bugs. I find things like left-pad breaking the internet, cloudbleed, and the sleep bug in Eve Online extraordinarily interesting.

Continue reading…
Dealing with Passwords

Dealing with Passwords

Jeff Atwood wrote a post on Coding Horror today calling out bullshit password rules. And he’s dead on. Password rules, as most sites implement them today, are not improving security. They might actually be hurting it. Even NIST agrees.

Continue reading…
So You Want to Learn Docker

So You Want to Learn Docker

With the rapid growth Docker is experiencing, it seems like everyone is trying to learn how to use the technology. In fact, I've invested many over the last year in teaching myself to use Docker. When I was just starting out, I spent a lot of time searching for the quickest, easiest way to learn.

Continue reading…
Testing is Hard

Testing is Hard

One of my friends and colleagues writes for the Project Management for Developers blog. He recently wrote an article about the importance of testing. I want to respond to his blog post and provide some additional insight into testing from a developer perspective.

Continue reading…
Automated Jekyll Deployments

Automated Jekyll Deployments

My last post was about using Jekyll as a podcasting platform. Now, I want to talk about how I set up automatic deployments with Jekyll. I’m deploying to a Dreamhost server, but the principles I applied should work for most servers that provide ssh access.

Continue reading…
Podcasting with Jekyll

Podcasting with Jekyll

I recently did some volunteer work to upgrade the website for a podcast. I chose to re-write the site from scratch, but needed to migrate all of the existing content. After some research, I determined that Jekyll fit our needs best because:

Continue reading…