Live data from Hacker News

Java Is Underhyped

jackson.sh

801–808 of 808 posts

Re: Java Is Underhyped

#801

For my use cases, Java has all the wrong compromises: - not high level enough to compete with Python/Ruby/JS/PHP, etc - not low level enough to compete with Rust/D/Nim/Zig - not specialized enough to compete with Erlang/R/Go/Julia - not opinionated enough to compete with Lisp/Haskell So why use Java ? It's good, it's fast, it's productive, it's well supported, battle tested and documented for decades with a huge pool…

> If I want a distributed system or something with a lot of I/O, Erlang and Go will always be better than Java.

Based on what?

Re: Java Is Underhyped

#802
I write java all the time and have the following things I never want to deal with again:

- Maven

- Gradle

- Weak type systems

- 1 class per file and other dogma that leads to a million tiny pieces of spaghetti (cough GoF)

- java version hell

- garbage collection tuning (yes at scale its necessary and no I don't want to make more grafana dashboards of our application's gc and whatever open-source datastore we are using's gc since they thought it was smart to write in java)

- verbosity to the max

- people convinced none of the points are problems and that they are actually features. Its one thing to deny my pain it is another thing entirely to say its a "good" pain.

Re: Java Is Underhyped

#803
post #777

Earlier quoted context omitted.

I don't mean lombok as a library, which works. I mean developing lombok itself

Ah, sorry, haven't done that. It sucks if it's Eclipse only :-( However I'd expect Lombok users to outnumber Lombok devs 100k to 1 :-)

Specially since it can only done in Eclipse xd

Re: Java Is Underhyped

#804
post #336

Earlier quoted context omitted.

My main issue is that people writing Java (or for the JVM) because of their backgrounds (app-level code printers) almost completely disregard how that code works on the JVM, at scale, in a highly responsive and/or high throughput service. You can't just use a big, "safe bet" framework like spring, which taints EVERYTHING in that project, write a simple REST API and then do heavy work "in the background" without side…

>"Running Java" requires detailed system engineering / ops expertise specific to how the JVM works and can be tuned > almost completely disregard how that code works on the JVM As an occasional clueless programmer, I've had occasion to touch systems written in Java. Could you point me at some resources?

What he wrote is not specific to Java. At scale, any program written in any language will require detailed knowledge. This includes "simple" languages like golang.

Reality is complex, and for non-trivial programs complexity is going to be somewhere.

Re: Java Is Underhyped

#805
post #334

Earlier quoted context omitted.

"Don't let them use the appropriate/preferred tool for the job and see how much fun it is" is a fairly nonsensical proposal for pretty much every profession.

I can't think of one other major programming language that relies so heavily on the IDE to do the development work, can you?

Any non-trivial program will require an IDE, regardless of language.

Re: Java Is Underhyped

#806
The author doesn't seem to be that experienced yet and the arguments/comparisons don't seem so strong IMO. If they say they were hyped about something like Elixir/Haskell but now they are all in for Java, then OK, there might be a quite interesting story to tell. But coming from TypeScript as a backend language to Java as a backend language?... Come on. This is as much of a no-brainer as it can get. It by no means implies Java is any good compared to many other options out there, but is more a testament of how much of a way the JS ecosystem still has to go.

I totally agree that Java is not bad (also chatted with some friends about IntelliJ etc.), but as many have pointed out, it simply has a lot of weird tradeoffs that are already baked into the language. I always say that maybe in a few years I'd just say screw it and go write Java for a big corp. But for now I'd still like to enjoy writing Elixir with similar-minded folks as much as I can. Nothing compares to it in terms of developer experience yet. Maybe it's a form of meaningless stubbornness/resistance idk.

Re: Java Is Underhyped

#807
post #272

Earlier quoted context omitted.

I generally agree, except the part about the low risk of runtime surprises. Java's type system is so weak that it doesn't even prevent null from inhabiting almost every type. The programmer is then forced to manually reason about when a value can be null or not, and of course humans can easily make mistakes in doing so. This inevitably leads to NullPointerExceptions at runtime when a project becomes sufficiently comp…

> Java's type system is so weak that it doesn't even prevent null from inhabiting almost every type. "So weak"? You do realize that this is basically where every language was less than a decade ago?

Yes, Java's type system "so weak". Just because many other popular languages have similarly weak type systems doesn't make them less weak. Also, as a long-time Haskell user, I can assure you that nullable types were nothing new even several decades ago. Perhaps you have only worked with object-oriented languages, where nullability is typically the default (which is a bad idea).

Re: Java Is Underhyped

#808
post #757

Earlier quoted context omitted.

There is an absolute mountain of Java at Google. Pretty sure it's the most used language by LOC.

As if LoC was a usable metric when it comes to a language as verbose as java. Plus all the boilerplate coming not from the language but the OOP design patterns.

No one said it was a usable metric for anything other than the fact that a lot of Java is written at Google.
Post reply on HN