There are several different ways to run your Rails app. Starting from simple
$ rails server and to Phusion Passenger, which is quite complex tools itself. Today, though, I want to focus on nginx.
Capistrano + Rails + Bundler + RVM + Unicorn + EC2
In 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.
HTML Processing with Python and BeautifulSoup
Today I’m going to focus on a very specific task: getting HTML content between two tags using python and BeautifulSoup module.
Global Trend Finder – Google Instant Analytics
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.
Chrome V8 Benchmark Results
V8 Benchmark Suite – version 7
Chrome@Laptop 12535
Firefox@Laptop 8117
Opera@Laptop 5036
Safari@Laptop 3617
Safari@iPad2 466
Chrome@iPad2 106
Laptop’s config: Core i7-2720QM, 12 Gb of RAM
AJAX Error Message
In the previous post we looked into creating AJAX-based progress indicator. But how do we supposed to tell the user if something goes wrong? Like a problem with backend connection, or database overload.
Here I will show you how to handle errors and display them easily in a fancy manner.



