Now that we have the overview of sharding out of the way, it’s time to build the servers. I’ll be using EC2 and Ubuntu 9.10 in this guide. If you’d like to skip the manual labor in this part of the guide, the complete build scripts are available on github.

During the past few months, I’ve been diving into the MongoDB world and have really been enjoying it. It has been a nice breath of fresh air and I can agree that MongoDB is to databases what Rails was to frameworks. I’m not going to dive into the basics of MongoDB in this guide on sharding, but instead will describe setting up a basic production cluster in the cloud. There are numerous server configurations to accomplish a sharded cluster, and I urge you to explore and comment on different configurations that have worked for you. I will be explaining my own configuration, down to the nitty gritty details.

Pulling in tweets with the Twitter Streaming API with web applications can be a challenge. Adam Wiggins of Heroku discussed a way to consume the API with EventMachine. Another post described using this method with thin and sinatra. I decided to take it one step further and created a demo application that you can deploy on Heroku and use MongoDB for fast and efficient storage.

In my previous post I discussed a git workflow for small teams. After repeating that long process for every new feature that needs to be developed, you might find yourself cutting corners and skipping parts of the process (I know I did). Why not take the best of both worlds and have a bulletproof workflow while still being lazy?

A finely tuned git workflow can save you an enormous amount of time over the long run. Over time, I have improved my development process by trying out multiple different strategies. I wanted to share the process I’m currently using that has proven to be successful in a small team environment.

I’m excited to finally announce the grand opening of my personal site to the public! It has been long overdue and I feel I owe quite a bit to the Ruby and Rails communities that helped me get where I am today. It is definitely odd being a web developer without a home of his own, and I felt the need to change that.