Live data from Hacker News

Java 12

jdk.java.net

411–420 of 478 posts

Re: Java 12

#411
post #407
post #401

Earlier quoted context omitted.

More popular where? Had it not been for Google's adoption of Gradle for Android and it would have been left for Grails maintenance projects. And even then, the pressure for perfomance has been so much that it is being superceded by a Kotlin based DSL. How to improve Gradle has been a common talk at every Android conference since Android Studio has been introduced.

Everywhere? Google Trends says Groovy is just as popular as it was 10 years ago. The number of downloads has increased significantly but it is not because of Gradle, as Gradle bundles Groovy. It is also currently placed #16. on TIOBE Index And last, Groovy with compile static is in most cases, just as fast and memory efficient as Java. Some people always talk down Groovy, yet the numbers speak for them self. Before K…

Certainly not in Germany where it vanished from JUGs.

https://trends.google.com/trends/explore?q=%2Fm%2F07sbkfb,%2...

Java worldwide average 86%

Groovy worldwide average 2%

Pretty popular indeed.

Re: Java 12

#412
post #392

Earlier quoted context omitted.

Not every Java shop is going to drop Eclipse and Netbeans just to make JetBrains happy. As for Android, lets see what happens with Fuchsia. The overwhelming majority of Java developers don't even know who Steve Yegge is.

> Not every Java shop is going to drop Eclipse and Netbeans just to make JetBrains happy. True. They will drop them because Eclipse has been faltering for ages and has been dropped by IBM, and Netbeans has always been a subpar unloved stepchild used by the kind of devs that don't know better and think SlickEdit or Notepad++ are great editors. > The overwhelming majority of Java developers don't even know who Steve Ye…

I guess Fortune 500's have missed that memo, including IBM own subsidiaries.

Lets talk back in 5 years from now.

I am betting Kotlin would become yet another language that happens to compile to the JVM, after the Android honeymoon goes away.

Re: Java 12

#413

Earlier quoted context omitted.

Completely agree, except that MS was so crazy hostile to OSS that they scared off all the serious guys a decade ago. I wish them the best. The CLR has some compelling features that make it objectively better than JVM on so many levels. But the lack of ecosystem is killing them. And has been forever. The new MS CEO is great in my mind but it will take many years to turn the ship around. Devs don't forget. Best example…

Resharper is $139 a year for a personal license and the price goes down 20% after the first year and 40% year after that. You can also pay monthly. They also have a perpetual license. If you cancel after the first year, you can keep using the version that was current 12 months ago. But the one thing missing in Java is anything like LINQ. I don’t mean the syntax I am referring to the idea of LINQ -> expression trees -…

It's not built in to the language, but JOOQ and QueryDSL come fairly close.

I do miss LINQ though. The Java options are all clunkier because the type system isn't nearly as flexible

Re: Java 12

#414
post #402

Earlier quoted context omitted.

The basics of maven might be sound (though it could make it easier to work with local dependencies) and npm et al have basically copied it. Where maven dropped the ball is the myriad of maven plugin magic, maven's implicit lifecyle, and a pom.xml's Turing pits, etc. I've developed Java apps since almost the beginning, and am as much of a markup geek as could be, but still hate maven with a passion, and often times do…

> Where maven dropped the ball is the myriad of maven plugin magic, maven's implicit lifecyle, and a pom.xml's Turing pits, etc. Could you be a bit more concrete? I don't recognize any of your descriptions in my experience of maven. There are probably some bad plugins out there, but as in any system the solution is not to use them. The complete lifecycle is listed in the documentation, and it's all very common-sense.…

I may be biased by doing freelance work (eg. seeing only crap projects), but almost all customers struggle with fckn maven: migrating freaking jetty-maven-plugin, servlet api versioning conflicts, ad-hoc scripting using ant plugin, shading/fatjar plugins, multiple mvn central listings for the same artifact, fragile local dependency resolution, dozens of pointless submodules. A customer of mine even had a solid 3 week outage when they wanted to setup a product for blue/green deployment based on maven. Makes autotools look like a sane build tool.

Re: Java 12

#415

Earlier quoted context omitted.

Resharper is $139 a year for a personal license and the price goes down 20% after the first year and 40% year after that. You can also pay monthly. They also have a perpetual license. If you cancel after the first year, you can keep using the version that was current 12 months ago. But the one thing missing in Java is anything like LINQ. I don’t mean the syntax I am referring to the idea of LINQ -> expression trees -…

It's not built in to the language, but JOOQ and QueryDSL come fairly close. I do miss LINQ though. The Java options are all clunkier because the type system isn't nearly as flexible

I can't tell from looking at the examples, but can I do things like pass around arbitrary expressions:

  Person.Get(p => (p.Age > 65 && p.Sex == "M") || (p.Age > 63 && p.Sex == "F"))
and have a method

  public List Get(Expression> expression)
and have that expression interpreted correctly at run time by separate providers?

You get full compile time checking and IDE supported autocomplete.

Re: Java 12

#416
post #412

Earlier quoted context omitted.

> Not every Java shop is going to drop Eclipse and Netbeans just to make JetBrains happy. True. They will drop them because Eclipse has been faltering for ages and has been dropped by IBM, and Netbeans has always been a subpar unloved stepchild used by the kind of devs that don't know better and think SlickEdit or Notepad++ are great editors. > The overwhelming majority of Java developers don't even know who Steve Ye…

I guess Fortune 500's have missed that memo, including IBM own subsidiaries. Lets talk back in 5 years from now. I am betting Kotlin would become yet another language that happens to compile to the JVM, after the Android honeymoon goes away.

>I guess Fortune 500's have missed that memo, including IBM own subsidiaries.

They probably did. They're late for all memos. The Fortune 500 is not were you'll go to gauge adoption. Heck, half of them still have IE6 only apps.

There are hundreds of thousands of companies, and just 500, well, Fortune 500.

Apparently you use the most established and boring development-wise of companies (Fortune 500) to prove Kotlin is not used widely, but you're OK with vaporware like Fucscia that's not even beta yet as an argument that Dart and co are.

>I am betting Kotlin would become yet another language that happens to compile to the JVM

And I bet you're wrong. Let's see in 5 years. We were on HN 10 years ago, we'll probably be here then. I'll set a reminder.

Re: Java 12

#417

Earlier quoted context omitted.

Were there any hiccups in the upgrade?

I've done this a few times. Most are due to reflection limitations with the newodule system. They can be worked around by adding exceptions to removal of reflection metadata largely. Kinda a PITA but not too hard. Active libraries have pretty good Java 11 support these days though. It's really improved a lot on the past year or two

> Active libraries

So my upgrade is going to be tremendously hard for this application, then. Good to know

Re: Java 12

#418
post #402

Earlier quoted context omitted.

> Where maven dropped the ball is the myriad of maven plugin magic, maven's implicit lifecyle, and a pom.xml's Turing pits, etc. Could you be a bit more concrete? I don't recognize any of your descriptions in my experience of maven. There are probably some bad plugins out there, but as in any system the solution is not to use them. The complete lifecycle is listed in the documentation, and it's all very common-sense.…

I may be biased by doing freelance work (eg. seeing only crap projects), but almost all customers struggle with fckn maven: migrating freaking jetty-maven-plugin, servlet api versioning conflicts, ad-hoc scripting using ant plugin, shading/fatjar plugins, multiple mvn central listings for the same artifact, fragile local dependency resolution, dozens of pointless submodules. A customer of mine even had a solid 3 week…

> migrating freaking jetty-maven-plugin

There's a jetty-maven-plugin? What for? When I use jetty I treat it as a library, embed it in my application, write my own main() and then my application is just a normal application.

> servlet api versioning conflicts

> multiple mvn central listings for the same artifact

These are a genuine problems but they're ones that every mature ecosystem struggles with. Maven has better tooling than most IME - you can use the enforcer plugin to require dependency convergence, and when multiple packages contain the same API you can put exclusions in a common parent. No ecosystem has really solved the problem of package renames nicely, IME.

> ad-hoc scripting using ant plugin

Yeah don't do that. If people will insist on shooting themselves in the foot, there's only so much you can do to stop them.

> shading/fatjar plugin

What went wrong there? IME the shade plugin is very good. There are a couple of inherent JVM-level limitations (having to specify transformers for service locator files etc. because of the way the JVM spec is written) but it's hard to imagine any other build tool could do better.

> fragile local dependency resolution

Not my experience at all - what specifically goes wrong?

> dozens of pointless submodules

Submodules are cheap. IME when coming to work on a new project it's much easier to understand the build/dependency structure if there are lot of submodules rather than a complex build - e.g. rather than trying to have a custom build phase for generating some RPC stubs or whatever, it's fine to just have them in their own submodule and then it's obvious to the reader what the dependency graph looks like. What's the downside?

> A customer of mine even had a solid 3 week outage when they wanted to setup a product for blue/green deployment based on maven.

What? How?

> Makes autotools look like a sane build tool.

Strongly disagree with that one. Autotools has several layers of template/macro expansion that all seem to do much the same thing (so why not just one?) and encourages builds that use arbitrary unversioned command line tools from the host system, meaning you very rarely get reproducible behaviour on a host with a different setup. Maven gives consistent, declarative builds - what's not to like?

Re: Java 12

#420
post #351

Earlier quoted context omitted.

What tooling? Being forced to use InteliJ, without any proper support on Eclipse and Netbeans? Still not able to use several of Android Studio features available to Java, like incremental compilation and slim APKs? Kotlin advocates seem to forget JVM will never be rewritten in Kotlin, the language is just yet another guest, with the usual syndrome to wrap existing libraries, having to take care about FFI for Java acc…

> What tooling? Being forced to use InteliJ, without any proper support on Eclipse and Netbeans? Seeing that both Eclipse and Netbeans are now more or less dead (and speaking as a long time Eclipse user, from the very first version to around 4), yes, first class vendor-direct InteliJ support is more than enough. And more than most languages (including Groovy) ever had. > As for Kotlin/Native, there is nothing to worr…

Fuchsia is language agnostic. This is a boon. Writing for Fuchsia isn’t like writing for Unix where C is king. Fuchsia is able to natively host many more ecosystems than Linux cares to bother with. It gives me great confidence.
Post reply on HN