Live data from Hacker News

Java Turns 25 – Whats Next? [pdf]

oracle.com

151–160 of 286 posts

Re: Java Turns 25 – Whats Next? [pdf]

#151

Earlier quoted context omitted.

Ironically, while Java was the original "write once, run anywhere" language, it never succeeded in that regard (e.g. browser applets were never popular). Ironically, I believe Javascript has. I was pretty much exclusively a Java programmer for the first decade and a half of my career, before moving to Node and TypeScript. I don't think I could ever go back at the point. Most importantly, this is my first time where t…

Is there any major player or project doing backends in JS?

As far as I know, all major players care about performance and scalability, which JS cannot afford on a single-threaded runtimes.

Re: Java Turns 25 – Whats Next? [pdf]

#152

Earlier quoted context omitted.

Other than Effective Java, I recommend looking at some of the Google libraries, specifically Guava [1] and Guice [2] for dependency injection. Java is fundamentally a slow adopter of new techniques (it just got lambdas in JDK 8), but a lot of the Google libraries fill in the gaps. Note that if you are learning Java for Android development, that's a whole different sub-discipline. In that case I recommend the Android…

> (it just got lambdas in JDK 8) Interesting use of the word 'just'. At the risk of making readers feel old... Java 8 was released _6 and a half years ago_.

You're making me feel old, and I'm not even old. Or perhaps I should blame codebases that are still trying to be Java SE 1.6 compatible…

Re: Java Turns 25 – Whats Next? [pdf]

#153
post #16

Earlier quoted context omitted.

At least two significant things happened: 1) It finally got anonymous functions in Java 8, so you no longer have to use anonymous classes and complicated design patterns as substitutes. 2) The distribution model changed from targeting a preinstalled JRE to bundling your own runtime with jlink and jpackage (i.e. the same as native applications and .NET Core).

Right, these are both one-day study exercises I think to come up to speed. Java's designed like this - almost everything is additive and builds on the same principles.

I think it might take a little more than one day to fully understand Java 8's new features around lambdas and streams.

Re: Java Turns 25 – Whats Next? [pdf]

#154

My comment is sexist, but culturally relevant from where I'm from. Java is like your old wife/husband/spouse. It's not sexy, you probably don't enjoy much when doing things with it. But it's dependable and reliable, And, aren't you where you are now thanks to it? Newer languages.. yeah they're sexier, more fun to play with, make people think you're cool when with them, but they might end up wasting your time :)

> Java is like your old wife/husband/spouse. It's not sexy, you don't enjoy doing things with it. Sorry to hear about your marriage going bad. Maybe some counseling will help?

Perhaps a psychiatrist if you've started referring to your spouse as "it" :/

Re: Java Turns 25 – Whats Next? [pdf]

#155
post #117

Earlier quoted context omitted.

I use typescript a lot. It's way better than JS but the type erasure problem is far worse than Java. Essentially all types are erased, so bugs where typings don't match what you expect and everything blows up are common. This isn't possible in Java because it's statically typed at runtime. JS also uses several times more memory, is slower, and has a terrible (non existing) threading model. Yes you can run multiple in…

> bugs where typings don't match what you expect and everything blows up are common > the only overhead is making sure objects were passing around match on both ends Seem like is it a big deal based on the first sentence. I've never been convinced of the single language argument. Sharing code between frontend and backend sounds good but as in practice there's little overlap... models have subtle differences, there's…

It's more about the ability to share programmers than the literally code, in my opinion.

Re: Java Turns 25 – Whats Next? [pdf]

#156

My comment is sexist, but culturally relevant from where I'm from. Java is like your old wife/husband/spouse. It's not sexy, you probably don't enjoy much when doing things with it. But it's dependable and reliable, And, aren't you where you are now thanks to it? Newer languages.. yeah they're sexier, more fun to play with, make people think you're cool when with them, but they might end up wasting your time :)

> Java is like your old wife/husband/spouse. It's not sexy, you don't enjoy doing things with it. Sorry to hear about your marriage going bad. Maybe some counseling will help?

[deleted]

Re: Java Turns 25 – Whats Next? [pdf]

#157
I started learning Java in 1996 and it was a real revelation back then. Coming from very platform-specific C, everything felt comparatively easy. And Javadocs were amazing.

Just a few months ago I dusted off an old project from 1997, loaded it up in IntelliJ IDEA, built it, and ran it. It worked! And that's Java's best feature, it's long-term language and library stability. I worry that it is at risk now with Oracle's new 6-month release cycle.

Re: Java Turns 25 – Whats Next? [pdf]

#158

Earlier quoted context omitted.

Yeah it's a losing battle to suggest Java is mostly fine on HN. In this bubble we only use FP and/or Go/Rust and/or C++.

Those are the languages we love at least. I’m willing to bet that most of us are java developers to pay the bills.

Then it's only a matter of time before they learn to love the well being gift that is Kotlin

Re: Java Turns 25 – Whats Next? [pdf]

#159

Earlier quoted context omitted.

In my opinion, Java as a web language is good when you don't need to really understand what's happening (like in low-traffic situations). If concurrency isn't an issue, then the massive amount of libraries can help you a lot. In high-traffic environments, that ignorance punishes you. I've always felt Java and the JVM are of the mindset that you need a Ph.D. to even understand how it works or how to configure it, and…

> You need to know if you're blocking threads, if there's memory contention, and if libraries you pull in are using the forkjoin common pool (which you're likely using as a default threadpool). And when something blows up, finding the reason (even for any of the above issues) is really tough. You can use flight recorder, heap dumps and gc logs all day, but good luck navigating it all unless you're a genius. I've seen…

There's tooling such as Blockhound

Re: Java Turns 25 – Whats Next? [pdf]

#160
post #62

Earlier quoted context omitted.

I believe there are few runtimes out there that have such a good monitoring and profiling tools for free and out of the box as Java. Java Flight Recorder, remote debugging and monitoring can be really useful for rare production performance issues.

It's funny you should mention that in response to a post talking about Erlang. :P Because, yes, there are few. The BEAM happens to be one that definitely beats the JVM on that front.

In which précise aspect does it outperform jvm tooling?
Post reply on HN