Making a Change

Flying to Canada, towards the Change

Probably you’ve noticed lack of updates recently, and there was a good reason for that. My life has dramatically transformed over the past several months as I moved to a different country.

I don’t want to put you to sleep with boring details. Just enough to say that I’ve been working on making this move a reality during the past 3 years. The main reason for that was quite simple: I wanted to make a difference in the world, shaping it into a better place to live. Canada offered much more opportunities for doing that than Russia did. Continue reading

Capistrano + Rails + Bundler + RVM + Unicorn + EC2

Capistrano   Rails   Bundler   RVM   Unicorn   EC2In simple cases, if you use Heroku, application deployment process can be as easy as one shell command. But Heroku does not provide enough scaling and flexibility for more advanced scenarios or more serious load.

If you need to test something and then be able to expand to thousands of requests per second, EC2 from Amazon Web Services is definitely the way to go. It provides you with a virtual system which is totally under your control. You can add additional storage, move storage between servers and increase CPU/memory in almost real-time.

The downside, though, is that you have to setup the whole application infrastructure by yourself: from frontend servers to deployment scripts to security customizations. There is no preferable way of doing one thing or another, so here I’m offering what worked perfectly for me, and what I was not able to find while surfing the Internet for solutions.

Continue reading

Rails + Capistrano + git + BlueHost

UPDATE: I’ve moved from BlueHost, as their quality sucks and techsupport is unable to offer any solution for timeouts/500/503 HTTP errors.

These days developers are being offered with lots of options to host their apps. You can choose everything — from Amazon, to Google, to Heroku.

But sometimes you want to run your app with a set of different programming languages, frameworks, and databases. This is something that a typical PaaS provider can’t offer, so you need a general-purpose hosting.

Here is a brief tutorial on how to setup Rails web application on BlueHost, using git SCM and Capistrano deployment tool.

Continue reading