Now this is an interesting read – I heard about this by the way on the javaposse.com, episode #145, but the original blog post leading up to this announcement and the comments on Derek Siver’s blog on oreillynet.com following his decision to abandon 2 years of development with Ruby on Rails paint an altogether more interesting story that the JavaPosse gave credit to.
See this original post announcing his new found love for Ruby on Rails, and then this most recent post 2 years later announcing the scrapping of the rewrite of the system in Ruby on Rails and deciding to go back to PHP to rewrite it from scratch, again.
What I find most interesting about this is the amount of attention Silver’s second post, the one announcing to ditch RoR, had from the community. This must hold the record for the most comment posts ever for a single blog post. I sifted through some of the comments – there’s a lot of foaming at the mouth going on, but there’s also some interesting comments. The main thing to be gained from all of this I think is the reinforcement of the fact that any one technology by itself does not not guarantee success, and that every tool/technology is aimed at solving particular problems. Selection of the right tool for the job is part of the battle. Rails as a framework is well suited to building web applications, ‘in it’s own way’. The problem seems to come if you need to deviate from it’s cookie cutter approach, then you start fighting against it, and this is where you lose the initial gains from it’s approach getting you up and running quickly.
Another point the ‘Posse made was that rewriting a system in technology ‘X’ does not necessarily buy you gains just from using technology ‘X’, because making a second attempt at writing any system is almost certainly going to result in a more effective system the second time round, once you’ve learnt from the lessons the first time. The fact that cdbaby.com had to spend 2 years rewriting their system in a new technology to find out that Rails wasn’t for them is unfortunate to say they least, but armed from the lessons learnt from the first implementation in PHP and the lessons learnt from the RoR aproaches to web application development, they were then able to build a better system (3rd time lucky), in the original technology they started with.
There’s a lot of good lessons to be learned from this story, and maybe the most important is that blindly jumping on the next Ruby on Rails bandwagon, whatever that may be, will most likely not gain you instant success.