Legacy blog (2004–2016). This blog is no longer updated. For current content, visit DigitalHobbit's RPG Blog (tabletop RPGs) or GammaVibe (engineering & entrepreneurship).

Building a Twitter Filter With Sinatra, Redis, and TweetStream

It's been way too long since my last programming focused blog post, so let's try to rectify this situation: Background A couple months ago, Twitter made available their Streaming API. This provides developers with a very efficient way to tap into the public Twitter stream. All you need to do is open and maintain a single HTTP connection, passing in a few filter parameters....

November 8, 2009 · 13 min · 2653 words · DigitalHobbit

Magic Mouse

magic mouse Yesterday, Amazon finally delivered the Magic Mouse that I had pre-ordered a couple weeks ago. (Since I was in the market for a Bluetooth mouse anyway, this seemed like a perfect excuse to pick one up...) The final verdict is still out, but I figured I'd share my initial impressions. Obviously, the biggest feature the Magic Mouse adds is Multi-Touch, very much like the iPhone or iPod Touch....

November 7, 2009 · 5 min · 880 words · DigitalHobbit

Upgrading an older MacBook Pro to 6GB of RAM

If you own a MacBook Pro and would like to upgrade to more than 4GB of RAM but think that your model does not support this, you may want to read the rest of this article. I bought a MacBook Pro 17" in April 2008, as my primary development machine....

September 5, 2009 · 3 min · 605 words · DigitalHobbit

iPhone Development is Fun!

It's been a while since I completed my first iPhone development project, and I figured I'd finally write up my initial experience with this platform. A bit late, but better than never......

May 10, 2009 · 7 min · 1437 words · DigitalHobbit

Workling and Amazon SQS

If you need to perform any time consuming work in your Rails actions, you'll probably want to offload this into a background job. There are many different frameworks to help with this, and the one we use is Workling. The nice thing about Workling is that it provides an abstraction layer that allows you to decouple your actual background job implementation from the background execution strategy....

April 4, 2009 · 4 min · 673 words · DigitalHobbit