I do a lot of side projects. “But how do you find the time?” you ask? My trick is not one of skill, but laziness. Whenever I start moving on a side project idea I try to find any way I can to make version one easy.

Take Paste Forward (please!) - a very simple service and I wanted the software to be written in no time. Given the amount of time I have for these things, writing and supporting my own email slurper was out of the question. I noticed Heroku was running a beta with CloudMailin - a perfect fit. Then I searched around and found a well-written Pastie gem to tie things up. I was in business.

Admittedly those steps were obvious. Finding a service that does work for you for free and finding an open source library that connects to an API-less service is definitely step one. For my next obvious trick? Sinatra! I’ve used Sinatra for seven side projects, including this blog here. The cute thing is some of those side projects are hardly more than static sites. Sinatra works great for getting a static site out there on Heroku for free. Building something with a mite of complexity, but a very minimal set of page types? Look at Sinatra as a quick way to get your site running.

Sometimes I’ll build a site (or page, really) that includes a small bit of data which could change from time to time. I like to use YAML to serialize that data, making it easier to update as needed. An obvious examples is the YAML file in my simple Magic Lunch Ball open source project. Perhaps less obvious, the project data on my homepage is also stored in a YAML file. Editing my project list is easier in the YAML file than in HTML. Plus the HTML is more concise with that little bit of Ruby looping thrown in.

Hai to the Ku is just a JavaScript app. Using the Twitter API and JSONP, tweets are gathered as the page is loaded guaranteeing an always-fresh stream of tweet-zen. Back when I wrote Get Hoffed (a tragically retired site that was the source for Hoff photos and tweets on the internet), I wanted to try out one of the static site generators that were about. So I got to know StaticMatic and built a little Ruby script that would update the photo and tweet content twice daily. StaticMatic would generate the static pages which would be served to eager Hoff fanatics quick, quick.

The truth is, while lazy leads the way in these side project decisions, there is a fair bit of curiosity that goes into the tech choices as well. I first used Sinatra on Follow Cost. Sinatra was definitely something I wanted to give a spin. What a great side benefit it is to learn a new technology while building something fast. Most importantly, completing a minimum viable product rather than avoiding it for dread of “loading up the stack” is a gigantic benefit. Don’t let the size of your typical working environment be your reason not to get things done. Use laziness to your advantage.

Feb 14, 2011    Subscribe · Email Me · Twitter · GitHub