Hacker News new | past | comments | ask | show | jobs | submit login

No disrespect intended to the programmers of these things: they solve problems I do not have by obsoleting functioning code that I do have.



If you don't like it then why are you on Rails? Rails has been defined by doing the right thing at the cost of stability since the beginning. If you want stability you should pick almost any other platform.

Claiming that Rails solves problems you "do not have" is blub thinking at its finest. Okay, I'll grant you that the routing changes are perhaps a little gratuitous. But consider the replacement of the ad-hoc manual SQL generation by arel. You will probably never even notice when this makes a query work that would have blown up before, or when your load times decrease because of lazy querying.

ActiveModel is another place where they've added huge power and flexibility. The fact that you no longer have to use ActiveRecord to get some of its best functionality is a huge win. Just because you haven't noticed how it might help you doesn't mean it won't if you give it a chance.

Even if you really don't need anything in Rails 3, it's still a straw man argument, because Rails 3 is all about modularization and embracing much wider development paradigms. If you want to use RSpec and FactoryGirl now you can do so with fully integrated generators. If ActiveRecord is useless to you, there is a well-defined API for any other ORM to integrate just as tightly. More importantly, the APIs that the components use are now public and documented, and will remain stable over time. This makes Rails useful for an order of magnitude more projects than it used to be.

Also, I should add that I'm in the same boat as you. I have a 50,000 line/200 model app dating back 3.5 years, and the Rails 3 upgrade is going to be painful. I put up with it though, because I much prefer a cutting edge platform to one where new thinking can never get a foothold.


His point may have been that he already has the code, so for the existing code it isn't really an advantage.


If he plans to continue development on that code, then upgrading will pay dividends. If not, keep running the old code. Who's holding a gun to his head? Should progress stop to support all the old untouched projects in the world?


I agree it depends on how much you think you're going to modify. In any case it might make sense to wait until all the bugs that aren't caught until widespread adoption have been fixed.


Is this not the same argument people used to keep using PHP?


What's wrong with that?

If you have a large working corpus of code in Blub, you absolutely shouldn't replace it just because a new version of Language on Locomotives comes out.

What you should do is exactly what patio11's doing here: evaluate if an upgrade brings you something that offsets the disruption the rewrite will cause.

For me, this also includes factoring in whether or not I'm going to be actively developing the application in the next year. If so, I do things like keep the framework versions current just so, nine months down the line, I'm using a framework version that I can still get docs and plugins for.


You're right. If the new features and speed updates of Rails3 don't matter to you, then it makes perfect sense to wait until you upgrade. Not knowing your situation, I can't really tell you what exactly the benefits will be of upgrading.




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

Search: