Ruby on Rails Development

Ruby on Rails History — A Look Back

Ruby on Rails Development

Ruby on Rails is a popular web application framework written in Ruby, a general purpose object oriented programming language. Just like many other web application frameworks, Ruby on Rails utilizes the model view controller (MVC) architecture. It includes tools which allow it to make many common development functions easier out of the box. Through the use of scaffolding, Ruby on Rails can automatically construct views and models needed for most basic websites. In fact, that is the reason behind Ruby on Rails; to make websites easier to create. Ruby on Rails history still is short, but a lot has happened in that short time.

Based on his work on Basecamp, a 37signals project management tool, David Heinemeier Hansson first released Ruby on Rails as open source in July 2004. However, it was not until February 2005 that he shared the commit rights to it. Later, in December 2005, version 1 of Ruby on Rails was released.

Since Ruby on Rails needs a web server to run, early versions generally used the Mongrel web server. Of course, it could also be run on other web servers from Apache to nginx. On nginx, it could either run as a module, such as Passenger, or via CGI, Fast CGI, or mod_ruby.

Version 1 was eventually replaced with version 1.2 in January 2007. Although there were a few improvements to it, there were not many. It ran on additional web servers and was easier to install on most web servers.

Ruby on Rails became very popular and mainstream after Apple decided to bundle and ship it with their Mac OS X operating system, Leopard, in October 2007. Although the early systems shipped with Ruby on Rails version 1.2, later versions shipped with version 2.0 when it was released in December 2007. Version 2 and later versions of Ruby on Rails offered both HTML and XML as output formats.

Although version 2.1 was released in June 2008 and version 2.2 was released in November 2008, it was not until version 2.3 was released in March 2009 that many changes were implemented. Version 2.3 included templates, engines, Rack, and nested model forms. Templates allowed the programmer to create a skeleton of a website, Rack was the new enhanced web server, while the engines and nested model forms allowed the programmer to reuse previous code. All were major improvements over earlier versions.

During the same time in 2008, Merb emerged as another web application framework which had many redundant features of Ruby on Rails, but it also implemented some more advanced techniques. The Ruby on Rails team and the Merb team decided to merge their efforts. In August 2010, Ruby on Rails version 3 was the first version that implemented the combined efforts of both teams. The merged version 3 eliminated the unnecessary duplication of the two teams.

Rudy on Rails 3.0 implemented Unobtrusive JavaScript that separated the logic side from the website structure. Since there is an industry wide shift towards jQuery, it was fully supported in version 3 as a replacement for Prototype.

In August 2011, version 3.1 was released, introducing the asset pipeline, CoffeeScript and SaSS.

Leave a Reply