Pardon me if I sound stupid, I'm just trying to understand why.
Pardon me if I sound stupid, I'm just trying to understand why.
1. Time spent upgrading Rails is time not spent building awesome things for our customers to use. We're extremely customer focused.
2. Performance is also a huge concern of ours. Over the past few years we've driven response times down dramatically. Upgrading Rails not only presents a slower framework (Rails 3/4 is not faster than 2.3), but a different architecture — changing where our performance chokes are. We'd have to do a ton of work on this front just to keep performance steady. Again, time spent here is time not spent making our existing infrastructure faster.
3. We've spent the past three years working on upgrading the stack. It's not so black and white — we have many of the benefits of newer rails without needing to upgrade everything. There has been a lot of effort here.
In my own personal experience, upgrading frameworks is generally the fastest way to create bugs and work on the opposite of customer impact. I don't think you should feel like you have to be on the bleeding edge.
Either way, being able to contribute back is definitely one of the things people are looking forward to about being on a current version. I've heard a few mention they'd love to be able to send any Rails performance bits upstream much like we see with the Ruby patches lately.
There is a lot less radical change and a lot more focus on compatibility in Rails nowadays, and yet upgrading a substantial app to a new version of Rails is still a shaky proposition. For a lot of companies, the gigantic leap from 2.3 to 3 was more trouble than just paying somebody to maintain 2.3.
Basically, the work is on-going and pretty amazing to watch!