4 ms·
Java is so popular, easy to learn and use that there are tons of terrible frameworks and bad programmers in the community. Rebel against it all you want but in
by spullara 15y ago
Java is so popular, easy to learn and use that there are tons of terrible frameworks and bad programmers in the community. Rebel against it all you want but in the hands of great developer you can get pretty amazing software written in Java like Hadoop, HBase, Lucene, Cassandra, etc. Java is the assembly language of the JVM and since most of the cooler new languages are on the JVM (and written in Java often) it will likely remain as the way to eek the best performance out of your applications and likely has the library you need to get your job done.
As for your points in here. Most of them I can respond with "don't do that".
- regularfry 15y ago"Don't do that" is useless advice when whatever "that" is is being inflicted by a third party.
- deleted 15y ago[deleted]
- jshen 15y agoI don't think those are examples of great software. They are very useful, and many fill a niche that needed filled, but they aren't great software IMO. Hadoop is a very leaky abstraction to give one example. I've seen it crash frequently because people used wild cards for their input and the job tracker would run out of heap and crash.
- currywurst 15y agoHadoop is a leaky abstraction because it crashes ? Does not compute! I'm not very familiar with the others, but Lucene is really an example of great software. In a few lines, it makes you feel as if you can build a Google by yourself !
- jshen 15y ago"Hadoop is a leaky abstraction because it crashes ? Does not compute!" Hadoop is an abstraction over a distributed file system, that allows programmers to crunch large amounts of data using map reduce. It leaks in the sense that you have to think about implementation details of the job tracker or you will crash it. That's a leak, right?
- MrMan 15y agoBytecode is the assembly language of the JVM. Java is the Java of the JVM.
- spullara 15y agoThe differences between Java and its bytecode are pretty small. There are only a couple things that you can do in bytecode that you can't do in Java source and they are mostly irrelevant.
- seanp2k 15y agoMostly, this. I've seen Java go fast and work well and scale and do other "enterprise-y" things, but there is tons and tons of awful software out there. I just feel like there are better choices for most projects.
- jimbokun 15y ago"As for your points in here. Most of them I can respond with "don't do that"." The problem is if you are writing Java, you are probably working with people who do do that.
- spullara 15y agoSince we were talking about Java and not bad engineering management and poor design choices, I thought I would point out that programming in Java doesn't have to be like that. Perhaps I should call it Java!EE.