Picking back up Ruby on Rails

It’s been a while since I last used rails (2.x days), but I want to pick it up and use it again for some new contracting work that has come up. Wondering what one would suggest I go about this, with Rails 4 just around the corner. Should start in on 3.2, or should I just bite the bullet and start using 4? I know a lot of backwards capability is removed/deprecated on major version changes, so picking up 3.2 is a worry to me if it’s just going to be obsolete in a few months.

It's been a while since I last used rails (2.x days), but I want to pick it up and use it again for some new contracting work that has come up. Wondering what one would suggest I go about this, with Rails 4 just around the corner. Should start in on 3.2, or should I just bite the bullet and start using 4? I know a lot of backwards capability is removed/deprecated on major version changes, so picking up 3.2 is a worry to me if it's just going to be obsolete in a few months.

This reminds me a lot of the old "which laptop should I buy? I hear Apple is releasing a new xxx in yyy…" question. You can chase your tail an awful lot in technology, and the measured answer I have heard to that laptop question is the same one I'm giving you now.

Use the best tool for the job in front of you that you can buy today.

In the laptop space, that means buy the best currently-available laptop, knowing full well that the very fact that you can purchase it AT ALL means it is already no longer state-of-the-art. Buy it, use it, make money with it; assuming, of course, that you have work coming in that you need to complete.

So too with Rails: you have projects to do for clients who want to pay you to do them, so use the latest *proven* version of Rails (or Sinatra, or PHP, or whatever tool fits the job) and get that work done and billed. If you have free time, try out the next-gen stuff, and contribute to the cause by filing tickets for things you find broken or confusing.

But please, don't use beta software for production work unless you are a core committer or similar "ninja". I say this from bitter experience, and nearly a year of my life lost to nail-biting anxiety while a beta tool made it nearly impossible for me to finish paying work. I was lucky to escape that treadmill still gainfully employed. I don't do that sort of thing any more.

<opinion> I wouldn't expect Rails 4 to be released before RailsConf next spring. And I wouldn't expect it to have all of the rough spots fixed up until the summer -- although the core team are very disciplined about releases -- it's still a huge code base to get entirely right. </opinion>

Walter