I've been reluctant to explore other services for hosting web applications, but with costs for even a small application on Heroku I've been considering other options.

Last week I successfully transferred the hosting of my blog from Heroku to Linode. Performance wise Heroku was ideal for this website and it handled the traffic well enough considering that I ran the site on one dyno. So if performance and uptime is satisfactory then why make the move?

I've got a number of other Rails applications that are sitting on Heroku. One is a production application, while the rest are simply prototypes and work in progresses. For the production application I've enabled a number of addons to ensure the application responds well to traffic but these addons come at a price. By the time I've added the minimum addons needed I'm looking at close to $100 dollars a month. That's expensive for just a small application.

The beauty of Heroku is that it requires little maintenance. Need more dynos? Add them on. Need more worker processes? Add them on. Everything is easy to maintain through the Heroku web interface. That maintainability comes at a price though and it's a price that I think is becoming too expensive. This is where the move to Linode comes in.

At $20 per month for their basic server it's much more cheaper than keeping a two dynos running on Heroku. This is only half the story though. The other half to this puzzle is Cloud 66. It's a fully configured application stack that sits on your Linode server. It's geared towards Rails and other Ruby based applications so it fits my criteria nicely. The nice thing about Cloud 66 is that it handles the setup and maintenance of your application stack giving you the choice to setup servers with different cloud providers if you need to.

I'm still in the early days of using Cloud 66 and Linode but so far I'm liking what I'm seeing. The end goal is to move all my main Rails applications over to Linode and with some running using Cloud 66 and some just running on a bare server without Cloud 66. Heroku is a great service for hosting Rails applications but it's price is far too expensive for me and when there's cheaper alternatives out there that don't require as too much maintenance.

The other benefit to this move is that I'm starting to learn more about the internals of hosting Rails applications again. I'll use Cloud 66 for most applications, but I will aim to have a Linode server for small Rails applications that are just ideas. Learning how to host Rails applications without all the Heroku magic can only make me a better developer as it broadens my knowledge as a developer. That's all I'm aiming to be, a better developer. And if this hosting move help me do that then I'm happy.