‘Lean and mean’ development driven by recession

In the past 10 years Java and .net have come to dominate enterprise development and during that time there has been steady stream of frameworks purportedly...

Ruby on Rails has proven itself to be the development framework of choice for websites, writes Paul Wilson, director at EdgeCase UK, which aims to establish Scotland as a centre of excellence for Ruby and Ruby on Rails.

In the past 10 years Java and .net have come to dominate enterprise development and during that time there has been steady stream of frameworks purportedly designed to make the coding easier. Yet there has been no discernible increase in productivity.

All the Java frameworks have achieved is an illusion of simplicity: complexity is swept out of the code to be hidden under a carpet of XML, or layer is piled upon layer of abstraction, each solving the problems introduced by the layer beneath. Other languages and frameworks have gone in the other direction, achieving fast development times, while sacrificing cost of change.

Ruby on Rails

It is time for a change, of course, and for once there is a clear path out of the shoals. Five years ago some of the best and brightest of the Java community jumped ship to row out into the clear blue waters of Ruby on Rails development.

Rails is now a mature and proven framework that has been used to build many of the websites we use daily. One of the most high profile is LinkedIn. Venture capitalists love Rails because it is both rapid and robust: working features can be pushed to users quickly, while providing a solid foundation for enhancements and changes. CTOs love it for the same reason.

Agile approach

Rails achieves its speed and vigour by taking a minimalist approach in a highly-readable language and by being test-driven to the soul. Ruby on Rails is an agile framework in an agile language - something which has infected the Ruby community.

Brian Marick, former chair of the Agile Alliance, once commented that Ruby shops are often more in tune with agile than most but typically don't identify themselves as agile. As Sir Terry Pratchett wrote: "I imagine that fish have no word for water."

Migration to Ruby is much easier in 2010 than it was in 2005: JRuby is a mature implementation used in countless successful projects and Ruby can live comfortably with Java code running in the same Java Virtual Machine. IronRuby, the .net equivalent, is catching up rapidly and is now at 1.0-rc2.

With IT budgets still tight and business demanding value for IT money as recession bites, enterprise is not just ready for Ruby, but desperately needs it. Now Rails is a truly mature web-platform and Ruby interoperable with existing Java (and soon .net) code, there has never been a better time to try the productivity gains of Ruby on Rails. As JRuby lead Charles Nutter says, "Java folks need to see things like remote_form_for that makes your form use Ajax with a one-line change."

Read more on Web software