News for hackers. Stuff that matters.
Re:Java Turns 25 – Whats Next? [pdf] by gonzo41 on Sunday September 20, 2020 @01:10PM (#24535314)
Everything is OpenJDK now, forget oracle. AWS put out LTS JRE's etc. Try and get your employer to pay for a jetbrains IDE, IntelliJ IDEA. Use Maven for builds. It's simple-ish. Use Spring for frameworks. Everything's been done so you wont be first with any problems here. And all the stuff from 12 years ago is probably what people know and do, so it's still on point. No one does inheritance anymore composition's all the rage. Not passing judgement on that, it's just a thing.
Re:Java Turns 25 – Whats Next? [pdf] by pron on Sunday September 20, 2020 @02:57PM (#24536376)
> Everything is OpenJDK now, forget oracle.

OpenJDK is the name of Oracle's (one and only) Java implementation project (take a look at the logo at http://openjdk.java.net/). Oracle JDK is the name of the commercially supported product built from OpenJDK, and Oracle also distributes the JDK under a 100% free license (http://jdk.java.net/).

While OpenJDK has been the open-source part of the Sun/Oracle JDK since 2007, Oracle recently completed open sourcing the entire JDK, so that there are no more paid features. The JDK used to be part-free and part commercial, and now it is completely free; you only pay Oracle -- or other companies --- for support if you want it. Other companies contribute to OpenJDK as well, but Oracle still contributes ~90% of the work, and all OpenJDK builds by all vendors are licensed by Oracle. So while you absolutely don't need to pay Oracle (or Sun, as you did before) for using the JDK any more now that it's 100% open, you should at least know that Oracle is the company that (primarily) funds and develops OpenJDK.

(I work on the JDK, i.e. OpenJDK, at Oracle)

Re:Java Turns 25 – Whats Next? [pdf] by watt on Monday September 21, 2020 @04:52AM (#24541172)
There is so much risk associated with anything that Oracle touches, I suspect some very large organizations run the other way without really looking. Instead of Java, they switch to GoLang, and costs be damned.

The real damage that Oracle caused by their Android lawsuit, and by their JDK licencing scheme change, will reverberate for long time.

Re:Java Turns 25 – Whats Next? [pdf] by pron on Monday September 21, 2020 @06:30AM (#24541753)
Well, Google itself heavily uses Oracle's OpenJDK internally (as do Apple, Amazon, Netflix, Facebook, Microsoft, Twitter and many, many others), and have even forked it, contributed to it, and spoke about it at a conference at the Oracle campus [1] -- all at the very height of the lawsuit -- so they clearly aren't concerned. Whatever you think of that lawsuit, the circumstances behind it were so extreme (one company copies over 10KLOC from another in order to directly compete with it in a very lucrative market) that nothing like that had never happened before nor has happened since in the software industry.

> and by their JDK licencing scheme change

The JDK licensing change was that Oracle changed the JDK from part-commercial part-open to 100% open for the first time in Java's history. On the commercial side, the change was from part-upfront, part-subscription to just subscription, which cut the price for customers by a factor of 5, I think.

What's important to remember about Java is that it's huge, and many companies make money off of it, and so companies have an interest creating FUD over Oracle's involvement. I can't speak for other parts of the company, but there's near consensus among Java users that Oracle has been a better steward of Java than Sun, both in terms of technical investment as well as licensing.

[1]: https://youtu.be/DjOcfkhTZkM

Re:Java Turns 25 – Whats Next? [pdf] by gengstrand on Sunday September 20, 2020 @01:33PM (#24535564)
> Use Spring for frameworks.

Or Dropwizard if you want microservices that are more light weight and performant than Spring.

https://glennengstrand.info/software/performance/springboot/...

Or Vert.x or Play if you want to code reactive microservices.

https://glennengstrand.info/software/architecture/microservi...

> No one does inheritance anymore composition's all the rage.

Hmmm, that is oversimplification IMHO. When OOP first gained popularity, there was a lot of emphasis on inheritance. Inheritance got misused resulting in systems that became too rigid to change over time. The proverbial pendulum has swung the other way resulting in this sentiment of "no one does inheritance anymore" but inheritance is still very powerful and productive provided that you learn how to use it correctly. Think of inheritance as an advanced feature best left for more senior engineers to use.

Re:Java Turns 25 – Whats Next? [pdf] by vips7L on Sunday September 20, 2020 @02:19PM (#24535994)
Never use Play imo. Especially if your focus is Java (the language). It doesn't offer a modern workflow or java idioms at all. Not to mention it's dependence on scala and sbt which is its own special hell.

Reactive is probably a mistake with loom looming around the corner.

Re:Java Turns 25 – Whats Next? [pdf] by ThePadawan on Sunday September 20, 2020 @02:47PM (#24536274)
Personal anecdote: I am currently on the job hunt and literally every single position that requires Java also requires experience with Spring (Boot).

It might not be the trendiest, but it's definitely the most popular (as in "in demand").

Re:Java Turns 25 – Whats Next? [pdf] by p2detar on Sunday September 20, 2020 @05:30PM (#24537576)
Yeah, that’s horrible. It’s like Spring Boot is the holy grail or something. People should really invest time in researching other frameworks.
Re:Java Turns 25 – Whats Next? [pdf] by jacques_chester on Sunday September 20, 2020 @02:46PM (#24536264)
Spring Boot has historically been resource-hungry, but that's changing quite quickly.

Modulo usual caveats about not promising anything and safe harbours and forward-looking statements, VMware is interested in Spring efficiency up to a very high level in the org chart. Watch this space.

Disclosure: I work for VMware.

Re:Java Turns 25 – Whats Next? [pdf] by Consultant32452 on Sunday September 20, 2020 @10:40PM (#24539268)
This is almost exactly my experience. IntelliJ is great, I would also add VSCode, MSFT has always made great dev tools. Spring is the standard everywhere basically. I almost never see features past Java 8-ish being used, so your 12 years ago remark is right on.
Re:Java Turns 25 – Whats Next? [pdf] by Nursie on Sunday September 20, 2020 @07:35PM (#24538350)
I find gradle nicer than maven, though it can be more complex.

Does maven still have issues with snapshot builds and classpaths?

I've managed to avoid Spring, everyone I know that's worked with it complains it's difficult to work with.

For microservices I like simple, single-purpose pieces like sparkjava.

Re:Java Turns 25 – Whats Next? [pdf] by neeleshs on Sunday September 20, 2020 @09:27PM (#24538913)
As a counterexample, springboot is the quickest thing to get start and yet allows you to do complex stuff. I for one, love it.
Re:Java Turns 25 – Whats Next? [pdf] by Nursie on Monday September 21, 2020 @06:19AM (#24541678)
> springboot is the quickest thing to get start

What do you mean by this? Startup times, or developer onboarding?

Because I've had this conversation before if the latter. To me, Spring seems like the last gasp of "Enterprise" Java. Too much is implicit and obscure (aspect-oriented programming is an anti-pattern, IMHO), too much is configured (yuck, XML).

Each to their own I guess.

Re:Java Turns 25 – Whats Next? [pdf] by neeleshs on Monday September 21, 2020 @12:04PM (#24544976)
Developer onboarding. Have not used XML for springboot in ages. And aspects - very very rarely if at all.