3 ms·
It didn't take Github as a whole a year to go from 3.2 to 5.2. It took a small team within Github to work with everyone to upgrade from 3.2 to 5.2, with most of
by quaunaut 8y ago
It didn't take Github as a whole a year to go from 3.2 to 5.2. It took a small team within Github to work with everyone to upgrade from 3.2 to 5.2, with most of the changes introducing business value in the form of security and technical debt fixes(as many issues as I have with Rails, which are many, deprecations aren't willy nilly and generally have great reasoning behind them).
- pknopf 8y agoHis point still stands. You can find other platforms we're updating is a lot easier. That is the issue.
- KurtMueller 8y agoWhat other platforms have you updated that was a lot easier?
- daybreaker2 8y agoand at github's scale at that.
- dylanz 8y agoI'd love to know what other frameworks would be easier. It's all relative. I've been involved in upgrades of a lot of statically typed projects, in many languages, and... it's all the same. Major upgrades are always a pain in the ass.
- titusjohnson 8y ago- 10 year old codebase under active development. - 2 major versions and 4 years out of date. - Upgrade started as a half-hearted "in your free time" effort with no official team, or maybe 1 dev (article says both). - Upgrade included "cleaning up technical debt and improving the codebase", (you could define almost any work under that umbrella). - At the end there were only 4 devs full-time on the upgrade. I don't know of any platform that would make the above situation all that much easier...
- JohnBooty 8y agoI'd like to hear about some of these platforms. 5+ years of continuous development, 2 major versions, heaps of new framework functionality, etc.
- goatlover 8y ago> You can find other platforms we're updating is a lot easier. Care to name the platforms that would be much easer to update at Github's size across two major versions?
- ilikehurdles 8y agoIt depends on scale. It tooks us at a previous company over a year to update from Java 6 to Java 8 (technically 7, but 8 was released before we got done with the upgrade so we jumped to 8), and that didn't involve any major new frameworks. Where I'm at today I don't even want to think about upgrading from Elasticsearch 5 to 6+. Terabytes of data indexed each day plus way too many consumers. I think web frameworks are easy to upgrade compared to databases or schema, at least when you're faced with distributed architectures.
- Bluestrike2 8y agoFor what it's worth, I'd be weary of putting too much weight on these types of articles when it comes to judging how difficult Rails upgrades are. Rails was hugely popular for years (and still is, in a lot of ways). There are countless articles about it and it's been for a ton of projects. There are a lot of internal Rails apps built on earlier versions that are owned by companies with either limited in-house development resources, or none at all; in which case, it's easy for decision-makers on the business side to push off updates (assuming they even know about them). "That doesn't sound like a big deal, we'll just do it for the next one." A bit of time passes, and then you're two major releases behind and you're looking at a serious effort. Or maybe it's developers who make that decision for what are likely valid reasons in the short-term. Upgrades across multiple major releases aren't exactly uncommon because of that, and there are a lot of articles detailing them, blog posts discussing or complaining about them, questions on SO, etc. as a result. For the most part, though, I don't that that Ruby or RoR is uniquely difficult to upgrade compared to other frameworks. I've handled upgrades across versions that have gone ridiculously smoothly, and some not so smoothly.
- kenhwang 8y agoLast I heard, Github also runs it's own build of ruby and much of the complexity stemmed from incompatibilities with that.