I can kind of understand the disgruntlement of experienced developers when first playing around Ruby on Rails.
What comes up after the first amazement:
- too easy, where’s the catch ?
- playing with C pointer tables and weird C++ constructions makes me feel quite the hacker, everyone could do Rails
- why’s everyone using J2EE ?
Of course, it’s not that simple – it still takes at least a good design to make a good program, even in RoR. And hype nonwithstanding, RoR is no miracle receipe, it’s just a good framework for creating web apps (not big batch processings, not device drivers, nor videogames).
It’s not even suitable to build high-volume web apps, since the performance bits still need working on – not to mention that Ruby is an interpreted language. J2EE also has the advantage of maturity, most things you might need have been worked into libraries and tools (for instance certificates and smart card handling are still in the works for Ruby on Rails).
Meanwhile it’s good fun. I hope that RoR will grow. And also that it will remember the lessons learned from J2EE, and avoid equating feature-rich with complex.
I’ve read posts by people praising Python on Django. But unless there are suddenly 5 more hours in a day or my brain evolves into a supercomputer, i think i’ll stick to Rails for now.
Django looks cool from a Python perspective but all things equals, it’s more verbose (and less DRY) than RoR.
If I was coerced into using Python, I’d most certainly go for Django over TurboGears or web.py.
I was so in love with Python back in the days!
I used to find its syntax cleaner than Ruby which had too many syntactic sugar but Rails changed the game. It’s the first framework that leverages its host language to focus on beauty. Rails just turns all that raw sugar into nicely packaged yummy candies!
As far as scalability is concerned, it’s an happy problem. You can always address it by narrowing down the bottlenecks and optimize them. Hardware is cheap, clean code produced by happy people is priceless.
I like DHH’s very down to earth approach to tackle performance issues : http://www.infoq.com/interviews/David-Hansson
Rails is of course no silverbullet… it’s simply the most enjoyable and self-rewarding way to write database-driven web apps at this point in time so let’s just enjoy it!