Live data from Hacker News

IT Runs on Java 8

veekaybee.github.io

201–210 of 556 posts

Re: IT Runs on Java 8

#201
post #184
post #125

Earlier quoted context omitted.

C# is a better language. Java 8 started to catch up with some of the quality-of-live niceties, but Java has a lot of mistakes baked into the language and interfaces that can't be removed without potentially breaking a lot of stuff, which the consortium is not willing to do. C# and DotNet were designed with the wisdom gained from the early days of Java implementation and sidestepped a lot of these messes. Java has a s…

> but Java has a lot of mistakes baked into the language and interfaces that can't be removed without potentially breaking a lot of stuff Absolutely true, but so does C#. In the end it turned out that .NET's reified generics were a mistake (which makes language interop on .NET painful), and more recently async/await.

> In the end it turned out that .NET's reified generics were a mistake

Do you have any resources that explain this point further?

Reified generics have often been praised as the thing that CLR got right (and JVM got wrong). I never understood fully why that is, especially since other languages with generics (e.g. Haskell and OCaml) don't have anything reified (although in all honesty also don't have RTTI so it's really not necessary).

Re: IT Runs on Java 8

#202
post #184
post #125

Earlier quoted context omitted.

C# is a better language. Java 8 started to catch up with some of the quality-of-live niceties, but Java has a lot of mistakes baked into the language and interfaces that can't be removed without potentially breaking a lot of stuff, which the consortium is not willing to do. C# and DotNet were designed with the wisdom gained from the early days of Java implementation and sidestepped a lot of these messes. Java has a s…

> but Java has a lot of mistakes baked into the language and interfaces that can't be removed without potentially breaking a lot of stuff Absolutely true, but so does C#. In the end it turned out that .NET's reified generics were a mistake (which makes language interop on .NET painful), and more recently async/await.

Generics interop just fine on .NET, and async/await had become a starting point for similar designs in many other languages. I don't think you'll find many people who actually write code in that ecosystem agreeing with either of those claims.

Re: IT Runs on Java 8

#203

Earlier quoted context omitted.

> So Java is not only the safe choice for serious server-side software; it's also the bleeding edge. Sure for core Java (OpenJDK), but what the future of JEE licensing and development? Even non-"enterprise" apps typically make use of some JEE stuff like servlets and JDBC. Is it really the "safe" choice when, apparently, the trademark agreements have just fallen apart? https://headcrashing.wordpress.com/2019/05/03/neg…

JDBC is not JEE - it is core Java. Servlets are the original web-container Java spec, independent of JEE. Both are great specs supported by several stable and performant implementations - rock solid tech compared to a lot of the flaky stuff you find advertised today.

How are Java programmers implementing RESTFUL APIs these days?

Re: IT Runs on Java 8

#204

>Java 8 is still the dominant development environment, according to the JVM ecosystem report of 2018. >If you think that’s bad... Why would I think that's bad? The replacement for Java 8 was just recently released, does anybody really expect the world to upgrade so quickly?

Seriously. The replacement is maybe 6 months old and breaks a lot of things— the Java code I work on doesn't work with Java 11. While we can (and at some point will) figure out why and fix it, there's other things to do in the meantime. And just migrating from Oracle JDK to OpenJDK has been enough of a pain in the ass.

I'm currently searching for a replacement JAX-WS implementation so that we can migrate to Java 11, and so far I haven't been able to find one without old-ass CVEs which were patched in core Java.

Re: IT Runs on Java 8

#205
post #106
post #85

The funny thing is that from a purely technological point of view, Java (even the 5-year-old Java 8 and certainly recent versions) is far ahead of most other stuff hyped on HN (as well as less hyped stuff). Virtually no other platform comes close to that combination of state-of-the-art optimizing compilers, state-of-the-art GCs, and low-overhead in-production profiling/monitoring/management. And much of the cutting-e…

>stuff hyped on HN HN is going to be inclined to take a look at new-ish stuff.

Indeed. For better or worse, that's what the "N" in "HN" stands for - "News".

Re: IT Runs on Java 8

#206
post #85

The funny thing is that from a purely technological point of view, Java (even the 5-year-old Java 8 and certainly recent versions) is far ahead of most other stuff hyped on HN (as well as less hyped stuff). Virtually no other platform comes close to that combination of state-of-the-art optimizing compilers, state-of-the-art GCs, and low-overhead in-production profiling/monitoring/management. And much of the cutting-e…

> low-overhead in-production profiling/monitoring/management

This is a joke, right? The management overhead for the JVM in production environments is huge. It's really hard to get it right.

Re: IT Runs on Java 8

#207
post #85

The funny thing is that from a purely technological point of view, Java (even the 5-year-old Java 8 and certainly recent versions) is far ahead of most other stuff hyped on HN (as well as less hyped stuff). Virtually no other platform comes close to that combination of state-of-the-art optimizing compilers, state-of-the-art GCs, and low-overhead in-production profiling/monitoring/management. And much of the cutting-e…

> So Java is not only the safe choice for serious server-side software; it's also the bleeding edge. Sure for core Java (OpenJDK), but what the future of JEE licensing and development? Even non-"enterprise" apps typically make use of some JEE stuff like servlets and JDBC. Is it really the "safe" choice when, apparently, the trademark agreements have just fallen apart? https://headcrashing.wordpress.com/2019/05/03/neg…

I know little about EE (and I'm certainly not speaking for anyone but myself), but I believe Java EE has lost dominance not because of any corporate decision, but because it simply started losing ground to unstandardized open source projects [1], as opposed to EE's JCP. So people who liked EE wanted to ditch the slow-moving JCP in favor of a faster process, and one question was whether the new project will be able to change specifications of namespaces that are traditionally reserved to, and associated with, the JCP. In the end it was decided that no, they will not be able to change JCP namespaces (but can choose to maintain them until the end of time in addition to any innovation they do outside of JCP namespaces). The decision obviously disappointed some, but I don't think it's viewed as catastrophic (although some may think so). And I don’t think that the “negotiations have failed” so much as that either side wasn’t able to achieve what they believed was the best outcome for them, but an agreement has been made. You also need to realize that it wasn't a negotiation between Oracle and some grassroot project, but among multi-billion-dollar corporations, some of whom have fought Java standards for over a decade, so the process was both legally and politically complex. But now everyone can move on.

I, for one, am curious to see how Jakarta EE's current approach of what seems to be an internet-based, democratic semi-standard would work out, and if it can be better than both the JCP as well as more common centrally-controlled open-source projects.

Anyway, this is what Eclipse's director said on the matter:

https://twitter.com/mmilinkov/status/1125213654775889921

[1]: That post you linked to reminds me of those who blame Oracle for killing Solaris. Solaris is a terrific operating system, that was sadly killed by Linux long before Oracle acquired Sun. After a few years of trying, I guess Oracle decided they could no longer save it, and there was no point in continuing to throw good money after bad.

Re: IT Runs on Java 8

#208

Earlier quoted context omitted.

JDBC is not JEE - it is core Java. Servlets are the original web-container Java spec, independent of JEE. Both are great specs supported by several stable and performant implementations - rock solid tech compared to a lot of the flaky stuff you find advertised today.

How are Java programmers implementing RESTFUL APIs these days?

Spring Boot with Webflux and any rx supporting libraries you can get your hands on

Re: IT Runs on Java 8

#209
I'm not sure I can fully agree with the author's point. 'Don't feel bad that your company is running outdated and expensive technology with known vulnerabilities!' I'm not sure how else to read an article seeking to highlight folks running telnet and ColdFusion. Complacency here isn't serving your customer's best interests.

It's absolutely the case that HN / tech social media induces FOMO and Resume Driven Development, but it's very easy become complacent if you adopt such a viewpoint.

Re: IT Runs on Java 8

#210

I'm not sure I can fully agree with the author's point. 'Don't feel bad that your company is running outdated and expensive technology with known vulnerabilities!' I'm not sure how else to read an article seeking to highlight folks running telnet and ColdFusion. Complacency here isn't serving your customer's best interests. It's absolutely the case that HN / tech social media induces FOMO and Resume Driven Developmen…

>'Don't feel bad that your company is running outdated and expensive technology with known vulnerabilities!'

I don't think that is the point of the article.

Post reply on HN