Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

"I skipped the Rails 3 upgrade just simply because I couldn't justify the time sink."

This is where you lost me. I spent about 2 hours, aggregate, spent solving upgrade-related problems across a bunch of different apps.

Where is the time sink?



The time sink is in migrating all the plugins/gems that either dropped support for Rails 2.x in favor of 3 (i.e. no version that supports both), or were abandoned for some other competing gem. What this means is that for any app that uses lots of plugins, it's a nightmare to upgrade to Rails 3.0, not because of Rails itself, but because it means you have to migrate all those plugins simultaneously just to preserve existing functionality.

There are entire sites like http://railsplugins.org/ to help you figure out if your plugins are Rails 3 compatible. Unfortunately, there simply aren't enough users to crowdsource the compatibility of all the plugins out there.


100% correct. The other fun one is rspec 1.x supports Rails 2.x but not Rails 3.x. spec 2.x supports Rails 3.x but not Rails 2.x. Since the Rails support was modular, I have no idea how this situation resulted. But it basically means I have to upgrade with no test suite.


Which gems are we talking about, specifically? If it was abandoned, then you should be replacing them anyway. Backward compatibility is vastly overrated.


Actually, it doesn't really matter if it was abandoned or not. Upgrading a large number of dependencies at once is going to create problems for any project. Hell, working out the redis-rb nightmare of an upgrade took well over a week of effort trying to coordinate with the various projects that depend on it.

But, if you think backward compatibility is vastly overrated, there's really no seeing eye-to-eye on this.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: