Multiple buttons with Hubspot's Vex

By Josh Sherman
1 min read
development
javascript

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 value, instead of just boolean true for the OK buttons. […]

How to Capitalize the First Letter in a String in JavaScript

By Josh Sherman
1 min read
development
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 trivial thanks to ucfirst. But in JavaScript, assuming you’re not using php.js, the process is a bit more […]

$10 Showdown: Linode KVM vs. DigitalOcean

By Josh Sherman
6 min read
reviews
hosting
linode
digitalocean

It’s been nearly 2 years since my original $10 Showdown post. In that time both Linode and DigitalOcean have launched new datacenters and made other improvements to their infrastructures. One of the most notable improvements is Linode’s migration from XEN to KVM. Let’s see how they stack up at the […]

Using an 11” MacBook Air for development

By Josh Sherman
2 min read
development
apple
os x

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 is a decent machine, even if you think the screen […]

Intentional infinite loops

By Josh Sherman
1 min read
development
bash

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 memory until it crashes. But what if you want to […]