Java 27 already? I just learned about Java 26. But I’m not complaining, the JEPs that is getting introduced on every release are quite exciting features. I highly recommend following the Java official YouTube channel, they publish entertaining, yet informative videos/shorts about tips/tricks/features.
Just one more push to Java 17; from there on it should be smooth sailing. I hope you have built up a comprehensive regression test suite as part of the migration.
I think they are saying Java is dead?! Not sure how else to interpret the comment. If that's the case I have to disagree. There are probably billions of lines of Java in enterprise, it will never die.
my standard Java analogy is it's like a garbage truck. Java is out there every day doing a job that's absolutely critical but rarely, if ever, in the lime light.
I disagree. The open web likes bashing it as a scrape goat. Reddit, X/Twitter, etc. It's died down some lately but there were at least a couple a years when this was very out there.
They moved to a schedule instead of waiting for features to be finished.
Basically we get a new major version release on a schedule. Everything that is finished gets packaged in and everything else pushed to the next release.
The issue before was that they marked beforehand "version X will contain feature Y" and then feature Y got delayed by 3 years which means everything else in version X also got delayed by 3 years even though they were done 6 months ago.
It's too many releases now. At some points, the numbers just become noise. I think most people will stick to the LTS releases, but even those come out every two years.
The numbers have become meaningless noise already. This release should've been called 26.1, then 27.0, 27.1, 28.0 and so on. Year.version. How Canonical does it with Ubuntu.
The current numbering scheme is annoying and distracting, bears no information yet is still error prone.
I think you mean "(Year % 100).version". Or is it "(Year - 2000).version"? Pardon me for being overly pedantic, but ever since Y2K it really bugs me when someone refers to a 2-digit number as "the year".
I believe that's by design: applications are encouraged to upgrade often. That's usually a smooth process for standard-conforming applications.
Applications that need to move slower can stick to LTS versions. LTS hopping has become a little bit more viable since the interval has been shortened to two years, i.e., four major versions.
> I believe that's by design: applications are encouraged to upgrade often.
I'm not sure what's your thought process here. I'm not saying they should have a release every 2 years instead of every half a year, but that their numbering scheme is bad.
It makes upgrading harder. If they'd just put the date in the version field, people would know how old the software is (this applies to every software btw not just Java and Ubuntu).
Their current versioning system doesn't help anyone in any imaginale circumstance.
With each new Java release the previous one becomes instantly unsupported (meaning that it receives no security updates), unless you pay Oracle (or another vendor). So you are forced to update if you want security updates (or run only LTS releases, or pay a vendor).
Rust releases are just compiler toolchain, maybe some new syntax features. Java includes the JVM which is subject to way more security issues and needs much more frequent updating.
Patches are released continuously. The upstream versions get them immediately and they are then backported to LTS versions. Whether the patches actually become available simultaneously I cannot say without.
I work with dotnet but my understanding is that some applications/ teams are still on java 8 with spring boot or whatever so it isn't like they aren't modernizing but they are choosing to do so at their own time which is fine I think
Java is swell and all, but having seen how the vendor treats even their large customers, I could never in good conscience recommend them to anyone I do business with. Better to miss out on the latest features and work with more respectful vendors IMO.
What vendor? OpenJDK is free and libre. If you mean Oracle, then that's a choice your employer made and yeah, you're SoL, especially for working in such a place.
This is the official Java channel.
Article seems AI generated. Is there an official announcement we could be discussing instead?
I didn't read the article, it doesn't open for me (HN hug?).
Java was great at its time but then had to go. Oracle gaining control over them sped up this process.
Poor Android got caught up and now half our phones don’t work
I disagree. The open web likes bashing it as a scrape goat. Reddit, X/Twitter, etc. It's died down some lately but there were at least a couple a years when this was very out there.
Basically we get a new major version release on a schedule. Everything that is finished gets packaged in and everything else pushed to the next release.
The issue before was that they marked beforehand "version X will contain feature Y" and then feature Y got delayed by 3 years which means everything else in version X also got delayed by 3 years even though they were done 6 months ago.
The current numbering scheme is annoying and distracting, bears no information yet is still error prone.
I think you mean "(Year % 100).version". Or is it "(Year - 2000).version"? Pardon me for being overly pedantic, but ever since Y2K it really bugs me when someone refers to a 2-digit number as "the year".
Applications that need to move slower can stick to LTS versions. LTS hopping has become a little bit more viable since the interval has been shortened to two years, i.e., four major versions.
I'm not sure what's your thought process here. I'm not saying they should have a release every 2 years instead of every half a year, but that their numbering scheme is bad.
It makes upgrading harder. If they'd just put the date in the version field, people would know how old the software is (this applies to every software btw not just Java and Ubuntu).
Their current versioning system doesn't help anyone in any imaginale circumstance.
> This release should've been called 26.1, then 27.0, 27.1, 28.0 and so on.
And how does that bear any information any differently?
Rust releases every 6 weeks, since 2016...
If you don't want to update, just don't?
If you feel (!) pressured, you should work on that.
Maintaining binary compatibility is a principal goal of the platform which continues to constrain design decisions for all future changes.
Then releasing more often is better, because the security fixes get out of the door faster?!
If previously a Java Update took 3 years, then the corresponding JVM version would be 3 years old as well.
If there were patch release in between, I see no difference to now.
Otherwise what are we doing here?
That said backwards compatibility problems still hit as some libraries enjoy using internal APIs.
It's not an every time thing and it's been easier and easier with updates.