Archive for November, 2008

Bye-bye Rails

Having just completed a few projects in Rails, I’m happy to give it up and stick to Java instead. It was a lot of fun picking up Ruby & Rails and definitely worth my while, but I’m not going to bet more time or money on it. Without getting emotional about it, I found that:

Rails is immature

New versions of Rails differ quite a lot, which means the examples, libraries, books and plugins that you use date pretty quickly.  Considering that the frameworks benefits are hinged on convention, I expected things to change less drastically. It is as if Rails is simply too young to care about backwards compatibility just yet. Having to unlearn something I just got under the belt or redo a system design for a version upgrade is very frustrating.

I have to add that this also goes for the Rails community, who earned themselves a reputation for behaving juvinile. The best example was when founder DHH gave a big fuck you to all the naysayers. In my book that put him closer to Paris Hilton than Larry Wall. Another episode that lifted the veil was the now infamous Rails is a Ghetto debacle.

Rails is slow

Whether it scales or not being moot, you pay a big price for server-side computations. Pre-computing everything you can, caching the daylights out of everything that moves and outsourcing the heavy lifting to other web-services quickly erodes the wonder of getting a CRUD site up in 15 minutes.

Rails is selfish

One of my first projects had to do with Symbols and Dates, but I could not use either those words because they are reserved. That might sound petty, but it had bigger implications. By convention class names also determine the table and column names, so the compromise I made for Rails also made their way through to the database and any other code that access the DB. The benefits of Active Record becomes pretty slim once you start rolling ORMs by hand anyway.

Rails is shallow

I had a hard time finding best-of-breed external libraries and plugins.  Perhaps it is too soon for the best tools to have risen above the rest. The darling of today could be incompatible tomorrow and obsolete next week. You read a lot about The Rails Way and being on Edge but some stability and documentation goes a long way. Even if it is a bit Enterprisey. 

What now?

Having just said all that, I’m sure Rails might be perfect for someone else or for projects other than mine. I might even give it another go one day. For the time being I’m much more excited to see what Python is all about.

November 21st, 2008


Calendar

November 2008
M T W T F S S
« May    
 12
3456789
10111213141516
17181920212223
24252627282930

Posts by Month

Posts by Category