Live data from Hacker News

Java 25 officially released

mail.openjdk.org

251–260 of 260 posts

Re: Java 25 officially released

#251
post #108
post #98

Earlier quoted context omitted.

I'm doing that in 2 weeks. The next major version of our product will require 25. edit: I wrote "require" when I meant "ship with". We ship a Temurin JRE together with our product, so it's being updated with each new installation.

Nice! It really isn’t hard to stay on top of it imo. The only thing stopping anyone from upgrading is their own company culture at this point.

You still have to test everything.

Re: Java 25 officially released

#252

Earlier quoted context omitted.

Java's biggest risk towards continued adoption, by far, is the culture surrounding it - old Java programmers and old Java programs continue to be needlessly verbose, even if the language now has the tools (pretty much) to be as terse as other popular, modern languages. It's an uphill battle, but it might just climb the hill because it's still such a behemoth.

It all failed when .stream() appeared. Why make people use .stream() for functional programming, plus streams aren’t even reusable, I almost wish they invented a new operator based on an exotic UTF-8 character than those 9 extra characters. Fonts should have a ligature for .stream(). And now let’s talk about .collect(toList())… And records which look like ugly beans… Java is the land of the verbose. But it can probab…

One benefit is that it makes these operations lazy. There are no intermediate lists created when you call a map on a stream. If map were a method in a list, it would need to return a new list. And if you have multiple such maps etc, it would create more such lists for each map invocation.

Re: Java 25 officially released

#253

Earlier quoted context omitted.

As opposed to Google, Meta, and Microsoft?

Yes. I just decided some 20 years ago to never touch or learn Oracle products. Is it forbidden to do so? My career is fine without them.

Do you use or have used MySQL in the past?

Re: Java 25 officially released

#254
post #108

Earlier quoted context omitted.

Nice! It really isn’t hard to stay on top of it imo. The only thing stopping anyone from upgrading is their own company culture at this point.

You still have to test everything.

We do full testing before every release either way. There’s no excuse for not upgrading.

Re: Java 25 officially released

#255

Earlier quoted context omitted.

That download link takes you to jdk.java.net, which hosts OpenJDK builds built by Oracle.

I don't get it, what is wrong with that ? Those are OpenJDK binaries and also explicitly named as such not Oracle JDK binaries.

I am saying that those binaries are built by Oracle:

"Production and Early-Access OpenJDK Builds, from Oracle"

That's all.

Re: Java 25 officially released

#256

Earlier quoted context omitted.

It all failed when .stream() appeared. Why make people use .stream() for functional programming, plus streams aren’t even reusable, I almost wish they invented a new operator based on an exotic UTF-8 character than those 9 extra characters. Fonts should have a ligature for .stream(). And now let’s talk about .collect(toList())… And records which look like ugly beans… Java is the land of the verbose. But it can probab…

Nobody complains about the Rust turbo-fish operator which is pretty verbose too. Java has already has introduced a direct toList()/toArray() anyways. let v = (1..5).collect:: >(); // Cool Rust

If v’s type can be inferred, you don’t need to give that extra hint to the type checker, likewise for 1..5. And Java Streams’ toList produces an immutable list.

Re: Java 25 officially released

#257

Earlier quoted context omitted.

> it's verbose and boring to use. Python code that follows traditional Python paradigms is called "Pythonic". Java code that follows Java paradigms is called "awful". To be fully transparent, I've never written Java professionally, only for a couple small hobby projects 10 years ago, plus some while in school, so my opinion isn't worth the pixels you're reading it on, but I look at most Java code with abject horror.…

Well, there are lots of people out there who view "Pythonic" as a euphemism for awful tbh. Throughout my career I've seen multiple large Python codebases be rewritten in Java after they turned into a mess, including - perhaps most embarrassingly - Google's internal code review tool Mondrian, which was written by Guido van Rossum himself. One reason Java codebases feel more abstract is that they're attempting to solve…

This is what is very often overlooked - Python and Java have an overlap, but the symmetric difference of their problem spaces is substantial. One can write CRUD servers with any language and this is what’s usually discussed in lieu of a real comparison. But this subset of their intersection is minuscule and is too shallow to hold for a comparison that would have an impact. This is universal across lots of discussions comparing “programming languages” or their “ecosystems” which is hard without material experience in all of them.

On the other hand, how universal is the problem of migrating from one ORM to another? Not all problems Java I has been leveraged to solve are relevant today. This is the extra baggage we have to carry forward.

Re: Java 25 officially released

#258
post #82

Earlier quoted context omitted.

Oracle makes me too uneasy. Can I use Java without the worry of incurring Oracle's wrath? Maybe, if I make sure I use openjdk/jump through some hoops I'll be fine. Or, I could just use any other language and not have that worry looming over me. C# is right there if I want a java-like experience without the anxiety of Oracle breaking my kneecaps. I don't know how to use java and not violate one of Oracle's EULAs. I co…

> Oracle makes me too uneasy. Can I use Java without the worry of incurring Oracle's wrath? Hey! I work at Microsoft and helped us launch the Microsoft Build of OpenJDK. I can categorically say that yes you can use Java without worrying. As long as you don't use a commercial binary from a vendor that has certain licensing restrictions. Our build of OpenJDK is free for any use, and comes with commercial support (you k…

From another HN very :) lengthy thread:

"Where I work now, we went through 2 or 3 rounds of funding. Each round involved lawyers doing due dilligence, checking the licensing

of all the software we use, and all the libraries we use, and so on. No issues were raised regarding Java or MySql. Bottom line, I don't know

the difference between this and that license, what I do know is that Oracle licensing for Java and MySql gave us zero grief."

Apr '18 https://news.ycombinator.com/item?id=16859559

Re: Java 25 officially released

#259
The verbosity of Java may certainly annoy/put off new devs a lot, but with advanced tooling and ai, that's not a biggie i think. Personally, i think a live-reloading feature would make java very popular again, and rapidly so. In my internship (mid-00s), a senior consultant said to me "remember, we don't sell Java, we sell Sun". I thought that was backward, preferring "we sell English, and England offers an implementation, or you could chose the US, or a Canadian alternative perhaps? etc". Little did i know.

Java's from the era [1] of virtualization : machines, languages, web (with applets, flash etc) where you focus on writing code once, and delegate the running to a VM, reaching an ever growing list of platforms/devices the VM knew.

But then came Steve book of Jobs and vajazzled so-called phones and desktops, far better than Bill electronic Gates. Why write an App in java and have that run [2] on Phones, Web, Desktop and Server when you can create N-code bases, one for each platform and device?? Oh and why would you want games in Flash [3] when you could be saving your battery to watch a cat tumble over a dog in 8K definition???

Seriously though, I think, the vm era is going to come back in the next few years, and expand into new areas, such as UI vm to deal with os/platform specifics. A healthy-level of tech decoupling is a good strategy, for everyone, but not full isolation. The vm model is much better for consumers and devs - far less lock-in, more future-proof [4], more freedom to innovate and try new markets. Usually, the vast majority of consumers and most devs have ordinary / run-of-the-mill issues. Most popular apps/sites are about shopping, basic entertainment, library-functions (search, referencing, reading), and chatting.

[1] 80s/90s [2] with slight platform variations [3] Flash or some alternatives. Jobs banned Flash for security+energy consumption reasons. [4] abstract/wrap intricacies of lower layers

Re: Java 25 officially released

#260

Earlier quoted context omitted.

Swing is swing, it's as good as it's always been (eye of the beholder). As I understand it, it hasn't completely rotted on the shelf, they've made updates to the rendering to better leverage modern hardware, but it's not a modern toolkit by any means. But it is maintained, it still works. JavaFX is good (I really like FX), and maintained, and portable. They just came out with 25 I think. But it's a completely differe…

Sure, but the same might be said of the subset of Java that existed twenty years ago; this is different from what people mean when they say "Java's good now".

JavaFX is better than swing, having done both (swing in a past life). CSS support is the big deal, plus modern rendering pipelines. Add that to the nice FP goodies and for-real cross-plaf packaging, (plus LLMs to get you through the crufty bits), it's IMO a serious contender for desktop UI.
Post reply on HN