this post was submitted on 05 Apr 2024
520 points (94.7% liked)

Programmer Humor

20039 readers
2132 users here now

Welcome to Programmer Humor!

This is a place where you can post jokes, memes, humor, etc. related to programming!

For sharing awful code theres also Programming Horror.

Rules

founded 2 years ago
MODERATORS
 
you are viewing a single comment's thread
view the rest of the comments
[–] [email protected] 40 points 10 months ago (3 children)

Java is great if you actually want to earn a living.

[–] [email protected] 28 points 10 months ago (1 children)

You're not wrong, it's still a staple today, but it lost a lot of its shine a while ago. They are mimicking "new" features introduced in other languages, but make a point to preserve retrocompatibility.

I can't imagine how convoluted the JVM has become in the last 10 years.

[–] [email protected] 34 points 10 months ago (2 children)

I don't really see how that is bad..? Java wants to be widely applicable and taking the best features from other languages helps that goal, right?

[–] jaybone 23 points 10 months ago (1 children)

C++ fanboys will talk a bunch of shit about Java for this, but c++ has been doing this same shit (and more poorly) pretty much since its inception.

And most of the newer Java stuff is syntactic sugar, so I’m not sure why that commenter is calling out JVM implementations. I’m guessing they don’t know much about the JVM, since you can compile these higher level syntax tricks down into bytecode just like you might compile more verbose source code.

Static analysis of compiled code with javap might be more difficult, but I’m betting the commenter doesn’t know what that is either.

[–] [email protected] 1 points 10 months ago

I think the last new instruction the JVM added was invokedynamic like 10 years ago. I believe they did it so lambdas could be called efficiently. Polymorphic incline cache and stuff.

But the JVM has grown more complex in other ways. The way to force simd instructions is pretty wild, for example.

I don't know enough to call it a mess or not. It works though.

[–] [email protected] 5 points 10 months ago* (last edited 10 months ago) (1 children)

Because Java sucks at taking those features. I mean look at Java's Optional abomination of a class and compare it to C# or Typescript's optional chaining ( ?. ) language feature.

There's a reason Kotlin was created, because Java is still bogged down by all its legacy kruft.

[–] QuaternionsRock 3 points 10 months ago

It still boggles my mind that C# is as good as it is given where it comes from. Java really fucked up with type erasure and never fully recovered imo.

[–] [email protected] 14 points 10 months ago (2 children)
[–] [email protected] 5 points 10 months ago

Difficulty of finding such a job not shown.

[–] [email protected] 3 points 10 months ago

That one dude still using Delphi is getting screwed.

Also, these salary numbers seem... real low. I get that it's the median so maybe a huge number of overseas engineers are pulling the results down but in my neck of the woods 105K is less than what we pay juniors.

[–] [email protected] -4 points 10 months ago (2 children)
[–] [email protected] 10 points 10 months ago

Could you have picked any creepier clown foto? Lol

[–] [email protected] 4 points 10 months ago

That's almost comically besides the point of the comment.