Wednesday, September 14, 2011

RoR

RoR is yet another framework for web development. Its major principles are: DRY (Don't Repeat Yourself), CoC (Convention over Configuration) and MVC design pattern.

Ruby was design by Japanese computer scientist Yukihiro "Matz" Matsumoto since mid-1990s. RoR started to become hot back in 2006 due to the release of rails (initial release in 2004) by a Finnish programmer David Heinemeier Hansson. It peaked around end of 2008, since then it is declining (see tiobe index report).

Frankly I don't like RoR very much. It gives you a complete/complicated infrastructure from the very beginning, sure. But following development is restricted to this framework. Building the development environment involves Ruby, Rails is a confusing process, especially when you need to incorporate postgreSQL, Git, Github and Heroku. It's an entire self-contained platform. It adds another layer of abstraction, for example, with the use of HAML and SASS.

RoR Tutorial Book
Starting a Rails app with HAML, Rspec, Devise and Web app theme

Personally, I would prefer PHP, or Python. PHP has a huge body of code repository. Setting up development environment for PHP is much easier.

Twitter has been using RoR, but when scaling the size the site became unstable. Twitter thus updated part of its server end to use Scala in 2008-2009. Now in April 2011, they further replaced the RoR front end to Java, see twitter's engineering log. The Netbeans IDE used to support RoR, but dropped it in 2011, see here.

Ruby will continue to have a seat in its corner. Ever ranked within top 10, and still in top 11 right now is quite an achievement. But I don't think it'll ever sweep the floor as claimed years ago.

No comments:

Blog Archive

Followers