5 ms·
Okay, replying to myself after a couple of quick Google searches. The situation is quite complex. A big part of the industry seems to be stuck at Java 8 right
by the_grue 8y ago
Okay, replying to myself after a couple of quick Google searches.
The situation is quite complex. A big part of the industry seems to be stuck at Java 8 right now due to several reasons. One of them is the momentum Java 8 gained when it was released in 2017, 8 years after Java 7. It was a strong release, bringing much-awaited features to the aging Java ecosystem. Subsequent released didn't come anywhere close to that.
Another big reason is the uncertainty of the upgrade path. Java 9 was released comparatively short time afterwards, and it is set to expire... last month. [1] Unsurprisingly, many customers chose to stay with a stabilized, thoroughly tested version of Java 8, rather than switch to a bleeding edge (in Java terms, at least), untested Java 9 with a very short time fuse on it. Finally, Java 10, which has been released recently, is also due to expire very shortly - in fall 2018.
So overall this looks like a very aggressive monetization move on Oracle's part, intended to extract $$ from customers who value stability of their platform. It goes completely against the long-established tradition of stability in the Java ecosystem, which is one of the reasons many of the customers chose it, in the first place. I expect a massive migration towards OpenJDK and a backlash in the community, which will ultimately push Oracle aside.
[1] http://www.oracle.com/technetwork/java/eol-135779.html http://www.oracle.com/technetwork/java/eol-135779.html
- pjmlp 8y agoEvery time people suggest OpenJDK to move away from Oracle, they should learn who actually writes OpenJDK code. The roadmap is quite clear, Java 11 planned to be released in September, will be the next LTS release. Business will have one year to migrate to 10, used the 11 preview on their test systems, and eventually migrate to the next LTS release. I applaud Oracle here, business don't do anything unless pushed to do so. I still have to occasionally program against Java 1.4, just because there is this forgotten server no one wants to touch.
- miken123 8y agoUpgrading to a new JDK every 6 months is pushing a bit too hard if you ask me. In case of JDK 8 -> JDK 11 (LTS to LTS) you even have only 4 months. A new JDK may have breaking changes, which may require code changes, acceptance testing, deployment to many customer sites. It is not unusual for that process to take 6 to 12 months, and you certainly do not want to repeat that process every 6 months.
- pjmlp 8y agoSo better start today making sure it runs on Java 10. It doesn't need to be deployed straight into production. Surely there will be very few things to fix by the time 11 is ready. Preview releases exist exactly for that. We don't need Python 2/3 dichotomy on Java.
- _Codemonkeyism 8y agoMy main point with Java upgrades is not source code, but different behaviour in production. Or some side effects you didn't get in testing.
- pjmlp 8y agoYou don't test just for a couple of hours. One sets up a test machine as part of the continuous integration worflow.
- _Codemonkeyism 8y agoYes, but with every large applications I've been bitten by non-functional problems in production with major Java migrations, as non-functional testing is usually not as extensive as user testing. The answer was to: "So better start today making sure it runs on Java 10. It doesn't need to be deployed straight into production." Making sure it runs on Java 10 is not the problem, I expressed myself too fuzzy.
- vbezhenar 8y agoThere's good business opportunity is to fork OpenJDK and backport important patches. May be IBM or Zulu will do that. Might become new de facto JDK. I know that I'm stuck with Java 8 for years even if it means that I won't upgrade JDK at all.
- pjmlp 8y agoIBM preferred to let Oracle buy Sun than invest into covering their offer. Azul is trying to diversify their business as not everyone is willing to pay for their GC implementation. Not sure how well they would do as Java stewards.
- jerven 8y agoIf you are willing to pay for support then why not just buy it from Oracle?
- vbezhenar 8y agoAnother company might be less greedy or offer it for free (to promote their other products or just as a good will).
- peoplewindow 8y agoThe only other companies that have been proposed all make money by charging for support. And since when is charging money for work done 'greedy'?
- the_grue 8y agoI don't see how OpenJDK is different from other big open source community-managed projects. If Oracle is not willing to maintain an up-to-date version of the JDK, there are a lot of businesses big and small, as well as individuals, who will be interested in creating a governing body to oversee bugfixing in old releases, potentially even taking over stewardship altogether (which is probably a good idea, given Oracle's dubious reputation and this boundary hostile move).
- pjmlp 8y agoFor starters none of those projects has parity with Java's JIT and GC implementations. Those that kind of do, are sponsored by corporations not much different from Oracle, other than some geek love. Finally, Oracle was the company that rescued Java, so blame the others for not caring enough.
- the_grue 8y ago> For starters none of those projects has parity with Java's JIT and GC implementations. Aren't you forgetting about Linux, Firefox and Mesa graphics library to name a few? You seem to imply that all open source is amateur's work by definition, which is obviously wrong, as many large-profile, complex open-source projects are maintained by professional developers, employed by powerful companies to work for the benefit of the whole industry. Besides, it's one thing to develop GC from scratch and another to maintain an existing one and backport fixes. > Those that kind of do, are sponsored by corporations not much different from Oracle, other than some geek love. There is nothing wrong in being sponsored by corporations, especially if it's a collaboration between several players, as opposed to a single one. The problems only start when these corporations overtake the maintenance completely and then start leveraging it against the users. > Oracle was the company that rescued Java Pah'lease! Rescued... Oracle just bought Sun's intellectual property and trademarks in hopes of monetizing them later. Guess what, later is now! The only reason Java was in trouble during Sun's time in the first place is because of Sun's proprietary attitude under the pretense of safeguarding the Java standard and preventing fragmentation. It's that attitude that first caused the Java development to stall when Sun ran out of steam and now it has brought us to the spot where the project maintainer is denying us security patches.
- lanna 8y ago> the momentum Java 8 gained when it was released in 2017, 8 years after Java 7 Java 8 was released in 2014, a little less than 3 years after Java 7: Java SE 6: December 11, 2006 Java SE 7: July 28, 2011 Java SE 8: March 18, 2014 Java SE 9: September 21, 2017 Java SE 10: March 20, 2018
- the_grue 8y agoYes, 2017 was a typo, thank you. 2014 is 8 years after 2006.
- deleted 8y ago[deleted]