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

I think most of the arguments people have any time Rails does a major change can really be re-interpreted as:

"I have a moderately complex Rails app that I want to upgrade, but I don't have much confidence in my tests, I maybe don't have proper separation of concerns, and I just know that one hacky thing I did a while back is going to bite me in the ass."

It's just something that happens over time in any moderately complex app. I see Rails point release candidates as a good reminder to bust out rcov and spend a few days plugging up the gaps in test coverage before the stable release comes out.

If you've been procrastinating upgrading your Rails 2.3.x app to 3.0.x, you're really gonna have fun going straight from 2.3.x to 3.1. Sometimes you just gotta rip off the band-aid.



"I have a moderately complex Rails app that I want to upgrade, but I don't have much confidence in my tests, I maybe don't have proper separation of concerns, and I just know that one hacky thing I did a while back is going to bite me in the ass."

This says it all for me. Upgrading an app or parts of an app that have great test coverage is really pretty straightforward. It's only more difficult if you weren't following best practices all along.


> Upgrading an app or parts of an app that have great test coverage is really pretty straightforward. It's only more difficult if you weren't following best practices all along.

Like people working with Rails in the the real world with real, less-than-perfect programmers.

Yes, if I'm an ideologically pure, saint-like programmer with 100% test coverage and purely idiomatic ruby, then upgrades should be a breeze.

Except the plugin ecosystem problems still arise-- even the 'perfect' programmer has to be perpetually upgrading to the latest-and-greatest plugins since the last authentication/taggable/whatever plugin has been abandoned in favor of the flavor-of-the-week.


This happens with all languages and frameworks too. There are ASP.NET 1.1 apps at the last place I worked because when we did a test upgrade to 2.0 things started failing.... and there were no automated tests (yet a requirement of bugless releases :) so henceforth nobody wanted to invest in upgrading.

Its the nature of the software beast that upgrading a large and complex application to a new version of the language or framework is difficult and maybe prohibitively difficult. Once something is written and it works it often times stays as is... sometimes for decades.




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

Search: