Blog
Review: Bose QuietComfort 20 Acoustic Noise Cancelling Headphones
tl;dr - If you don't have a pair, I feel bad for you. Get at 'em! I've been devout fan of not only Sony headphones but also being wireless. For the last few years I have been using the Sony [...]
How to capitalize the first character of each word in a string in Javascript
The other day I had posted on capitalizing the first letter of a string in JavaScript. But what if you wanted to capitalize the first letter of every word? With PHP it's just a simple call to ucwords and just [...]
Migrating from Mandrill to SparkPost
If you're reading this then you where probably slapped by MailChimp's latest announcement to merge Mandrill into MailChimp. You may be outraged because you were on their free tier which is going away. Personally I don't agree with your rage [...]
Multiple buttons with Hubspot's Vex
I've been implementing HubSpot's Vex library as a replacement for stock alert(), confirm() and prompt() dialogs on SceneKids recently. In one use case, I wanted to be able to have 3 buttons on the dialog with each button returning a [...]
How to Capitalize the First Letter in a String in JavaScript
I'm still kind of spoiled by the built-in functions in PHP (as well as Ruby and Python for this particular task). Something like capitalizing the first letter of a string is a trivial task in most languages: <?php // Capitalize [...]
$10 Showdown: Linode KVM vs. DigitalOcean
It's been nearly 2 years since my original $10 Showdown post. In that time both Linode and DigitalOcean have launched new data centers and made other improvements to their infrastructures. One of the most notable improvements is Linode's migration from [...]
Using an 11" MacBook Air for development
I do it, and I do it well. In fact, I've built an iOS game on it and used one exclusively without an external display while working at Sumo HQ in Austin, TX this past week. The 11" MacBook Air [...]
Intentional infinite loops
It's happened to all of us. A script just locks up and we're unsure why. At closer inspection we find that we're written a loop that has no terminating condition. It is an endless loop and in many cases consumes [...]
Pocket is Purgatory for articles
Read it later? More like read it never. It all started out innocently enough. I started to use Pocket to stash articles so I wouldn't be sidetracked while I was working. I would go back and catch up on the [...]
How to sync local files to Spotify mobile
One of the main reasons that I gave Apple Music a try recently was because I wanted to have some of my personal music collection available on my mobile devices. Turns out there is a way to coax similar functionality [...]