Java Makes Programmers Want to Do Absolutely Anything Else with Their Time
forbes.com
forbes.com
http://www.quora.com/Why-do-many-software-engineers-not-like...
It contains four pages from two contributors, the first from our own michaelochurch. So the functional bent and OO bashing is no surprise.
Oh please. It has displaced C and C++ for the vast majority of programming. And call me when people other than a few rabid fans and academics are actually using Haskell and OCaml for real software development.
> While it performs pretty well nowadays, it still isn’t competitive with C or C++ and, with a little love, Haskell and OCaml can or will eclipse it in that domain.
But don't underestimate C and C++. They're still widely used; by some measures, moreso than Java.
There are probably tens of thousands of companies who are using Java for business applications. Java and to a lesser extent .Net run pretty much everything in the enterprise.
Enterprise software is a cess pool of crappy software written by underachieving engineers and dominated by consultants who literally make money through failure.
If you deny this then we probably need to talk about Evolution and Climate Change next!
However, my company has a risk management system that was written in C++. It's a system of large matrix operations that uses a lot of CPU and memory. Being one of the few neck beards at my company who had ever written C++, I was tasked with translating it to java. In order to guarantee correctness, I slavishly maintained the algorithms, classes, etc. This allowed me to compare intermediate results at each step, but obviously didn't allow for any improvements I might otherwise have done. I was hoping for a runtime differential of 2x over the C++ version which would have been adequate for our needs. I paid no attention to runtime performance, though, since correctness was the prime goal - we're talking about real money in the balance. Once I was satisfied with the numbers, I ran some performance tests. I was shocked to find the jave version ran 40% faster than the C++ version. And this was prior to performance enhancements that I was able to put into the java version added largely by the huge ecosystem that has built up around java/JVM programming.
So, yes, I don't like java, but it's hard not to respect it. Obviously, one example doesn't end the debate about performance, but I'll admit to having been shocked at this result.
Apache GitHub project page: https://github.com/apache
I know which I find wayyyy less painful.