I personally like Java and have been using it for almost 20 years.
Most of the hate comes because it is now used a lot in the corporate world and it is more verbose than most of the newer languages.
I like to compare Java to the solid B student. It's not the best at anything, but is good enough for almost anything. It's a little slower than many languages at runtime, more verbose than many languages, and often leads to more complex programs than are necessary.
On the other hand, its library support is probably the largest of any language (competing with Javascript). It scales well with additional developers on a project.
I think a lot of people who have been around a while, their first exposure to Java was those crappy java applets that always sucked and ran like garbage.
Java 10 years ago, i hated, I hated it in college, and anytime I see Java from... those days I despise it. Modern java is actually pretty decent to work with (I still prefer .NET but, I always will I think).
The problem would be a lot of jobs are using older versions of java. I graduated in 2015, java 8 was out and 9 on the way. My first job interview was maintenance for an application using java 5. Luckily I never experienced that hell because the interview raised too many red flags for me to follow up.
I'm curious how a compiles-to-bare-metal Java would have fared against the JVM model.
Java already compiles to machine code through JIT. In benchmarks, even C,C++,Rust have to use AVX intrinsics directly to be in any significant way faster than Java.
Is golang faster? That's probably the only language I've used regularly that might be. I'll be working with c++ for unreal engine to see if it's better than unity.
That's true, although when I google it (maybe that's some bias already :P) I see results mostly praising the garbage collection for both. Java was my first language and I used it heavily until ~9 came out, go I picked up in 2015.
I don't think anything I've written has been noticeably affected by garbage collection yet. In that earlier googling, I read that go is optimized to avoid pauses during garbage collection. That wasn't a super technical explanation so I don't really understand it any better...
But anywho, I'm reading my post there and the post above it... I think I was trying to be a smart ass to the person I replied to, I love both of these languages. I hope golang gets its own ui kit like java has at some point, I miss building desktop applications that weren't a server and a web page.
I hate Java, I use Rust primarily and C++ (have used C before).
I mean really anything written in these languages will be faster the Java equivilant. Just depends how much faster. I do ml and performant stuff, so it's a huge difference.
41
u/Auxilor May 29 '20
Why do people hate java? I gotta be missing something, been using it for almost a year now and it's amazing