Live data from Hacker News

Why Java is still relevant

medium.com

31–40 of 82 posts

Re: Why Java is still relevant

#31

Also a lot of the de-facto Big Data/NoSQL/Distributed Computing stack is Java(/Scala). Hadoop, HBase, Cassandra, Neo4j, Storm, its actually pretty interesting to note that most of the popular nosql solutions are in Java. On top of that its the number 3 language on Github. I'm not a huge fan of Java but I'd be pretty surprised if someone was saying Java wasn't relevant. Don't quote me on this, but its also the fastest…

Java and Mono have been shown to be roughly comparable overall in speed, each a bit worse or better than the other in some ways, I've read.

Re: Why Java is still relevant

#32
post #29

>> Stream.of(1, 2, 3, 4, 5, 6, 7) .map(x -> x * x).filter(x -> x % 2 == 0) .reduce(0, (sum, x) -> sum + x); If I catch anyone writing Java code that I will have to work on writing Lambda expression crap like the above I will hit the ceiling. How can you debug junk like that?

I write code like that with LINQ and such in .NET all the time and have no problem debugging it.

Re: Why Java is still relevant

#33

Also a lot of the de-facto Big Data/NoSQL/Distributed Computing stack is Java(/Scala). Hadoop, HBase, Cassandra, Neo4j, Storm, its actually pretty interesting to note that most of the popular nosql solutions are in Java. On top of that its the number 3 language on Github. I'm not a huge fan of Java but I'd be pretty surprised if someone was saying Java wasn't relevant. Don't quote me on this, but its also the fastest…

It's also because of automatic garbage collection and the fact that programmers today can't handle memory management.

Re: Why Java is still relevant

#34

This is one of my first posts, and English is not my native language, so comments not just on the content but also on the language are more than welcome.

I was impressed by your clear writing. Some minor suggestions since you asked for feedback: * "mandatory requirement" is redundant. If something's not mandatory, then it's not a requirement! :)

* "Many admit that as much as Java is not much fun to write code with, the JVM is a different story.": This sentence is awkward. Perhaps something like: "Many admit Java code is not much fun to write, but the JVM doesn't limit your choice of language."

* "Scala shares the Java Technology Stack, and knowing Java is a big plus when learning Scala, especially due to the common library ecosystem, and the insights into the JVM workings.": This sentence is awkward. It could be simplified into something like: "Knowing Java is a big plus when learning Scala because the languages share a common library ecosystem."

If you are interested in more resources about English writing, I recommend Joseph M. Williams' Style: Toward Clarity and Grace. Strunk & White's Elements of Style is a classic (and short), but some people dislike it.

Re: Why Java is still relevant

#35
post #29

>> Stream.of(1, 2, 3, 4, 5, 6, 7) .map(x -> x * x).filter(x -> x % 2 == 0) .reduce(0, (sum, x) -> sum + x); If I catch anyone writing Java code that I will have to work on writing Lambda expression crap like the above I will hit the ceiling. How can you debug junk like that?

I find that perfectly readable. I would be more likely to catch an error in that line than in the equivalent in imperative style. It's a matter of habit. It all depends on what you are used to write, whether you are used to functional style or not.

Re: Why Java is still relevant

#36
post #24
post #13

Earlier quoted context omitted.

As someone who coded both Java and Javascript today, I attest that boring is also when every little darn thing takes 10x the amount of time and code as it rightfully ought to.

Really? I guess you spend too much time coding than solving a problem. Java / Python / C# / Go... All the same.. I spend more time solving a problem than actually coding. Once I have a solution rewriting in an another language is a piece of cake.

Right.

I think Java does suffer from a little too much boilerplate, but that is solved by becoming proficient in an IDE which doesn't actually take too long. Even for this old hacker who only picked up an IDE 2 years ago after nearly 20 years of emacs.

Re: Why Java is still relevant

#37
post #33

Also a lot of the de-facto Big Data/NoSQL/Distributed Computing stack is Java(/Scala). Hadoop, HBase, Cassandra, Neo4j, Storm, its actually pretty interesting to note that most of the popular nosql solutions are in Java. On top of that its the number 3 language on Github. I'm not a huge fan of Java but I'd be pretty surprised if someone was saying Java wasn't relevant. Don't quote me on this, but its also the fastest…

It's also because of automatic garbage collection and the fact that programmers today can't handle memory management.

Programmers in the past couldn't handle memory management either.

Re: Why Java is still relevant

#38
post #13

Earlier quoted context omitted.

Things are boring when you already know them. Things are interesting when you're learning something new. Most of the excitement over other languages comes down to the fact that you are starting from scratch and everything is fresh.

As someone who coded both Java and Javascript today, I attest that boring is also when every little darn thing takes 10x the amount of time and code as it rightfully ought to.

Java is very verbose, but also very strict and explicit. Besides all the obvious benefits to that, it means you can utilize auto-complete/intellisense/refactoring tools that let you pound out code at a rate on par with dynamic languages, even if you are producing 10x the amount of code. Fully learning these tools, e.g. in Eclipse, is a meta-skill that can take some time to get good at, but if you're working with Java for anything over a few weeks, it's definitely worth it.

Re: Why Java is still relevant

#39
post #6

Java will wane in relevance as Oracle turns it into a way to squeeze support contracts out of users (see the recent timezone-update kerfuffle).

Actually, Oracle have proved a LOT more committed than Sun to improving the language. They put one of the smartest guys in charge of Java 8, charged him with turning the ship around and have given him a lot of resources to work on it. Even Java 7, while including few language features, did include a lot of JVM improvements.

The timezone-update tool, on the other hand, really is a minor issue. So some people will have to use IBM's tool instead. Yeah, it's lame, but I don't think it's going to change anyone's mind.

Re: Why Java is still relevant

#40
post #16

Earlier quoted context omitted.

I have always found it rather unfortunate that the JVM is the best platform for Clojure, and unfortunate that interop with Java is so important. All of the blemishes on the language seem to be a consequence of those two things.

I think the idea is to have Clojure support as many runtimes as possible, or whichever runtime is best for the task. The JVM was the start and at this point has the biggest momentum, but there's not much stopping people from porting the language to a different runtime.

I really truly love Clojure the language. To me the vector, map, etc syntax is a perfect amount of syntactic sugar--it institutionalizes idiomatic use of these structures.

But... sometimes the JVM feels awfully heavy-weight and far from the metal. I have to wonder what a Clojure on SBCL or Racket would look like. Ignoring for a moment the benefits of the epic number of JVM libraries, I can't help but think that the foundations of those languages would be a pretty low impedance mismatch for Clojure The Language. Hey, Clojure-on-CL or Clojure-on-Racket could even support real tail recursion.

Post reply on HN