Idle hands are the coder's tools

After being busy for what seems like forever, things have slowed down the last couple of weeks, and I’ve been able to get a few things done. Like putting up a terribly ugly placeholder site for Hand Built Software, and starting this blog.

I’ve also been trying to learn some new things and improve on some things I already kind of know. Last week I built a rails app from scratch, testing all the way. It was nice to truly be the boss of the project and call all of the shots. It was also nice to get back to basics with Test::Unit and do TDD from the start. It was nice to build most of the application without hitting it with the browser; the context switch of switching from Emacs to FireFox wears me out sometimes, and I really dislike using the mouse when I’m coding. The app is a simple secret gift exchange name chooser, with a twist. You can play with it at

Last night and today I built an app using Sinatra, the lightweight Ruby web framework that is all the rage with the kids these days. It was a fun adventure – most of my Ruby experience so far has been within the Rails bubble. I plan to write a couple of posts about the experience – one covering working with Sinatra, the second covering deploying a Sinatra app to Passenger on shared hosting (Dreamhost in this case). This app is a short url unwinder, allowing you to see the destination of a short url before clicking on it. It also provides a web service to handle the lookups that returns JSON. Use it at

I’ll get started on that Sinatra post right now…