Wednesday, June 01, 2005

I don't know how old java is exactly, though I remember the first releases way back. They didn't teach it in school or the college I went to, until a good few years later. Still, bad things like this discussion have never stopped. The whole 3 page article is already summarized at the beginning; memory and speed are the big problems.

Really now, when it first came out, it was even more a problem then it is these days. Because everybody has plenty of RAM, but mid 90's I was stuck with 8 or 16MB max, and the CPU wasn't much faster as the first Pentiums just started to roll out the door. In those days, Java was even worse then it is today on those two points and still today perception hasn't changed much. That is the least you can say about the whole thing.


The most complete website I could find about total performance comparison of languages is The Computer Language
Shootout Benchmarks
site, which not only takes a bunch of different tasks to perform, but also considers memory usage, cpu and amount of code lines into the test. Even more sweet is the possibility to select a large amount of languages to compare (against Java or something else).


As you can see, Java isn't that bad, according to these benchmark results (lies, damn lies and benchmarks), but talk to anybody who is not a Java programmer and I'm sure you'll get nothing but badmouthing about it. I'm not a Java programmer, and I can tell you it isn't my favorite language either. I prefer python, which, although should be slower then Java, feels so much faster. The cause of all this is the fact that Java is easy to pick up, but few really master this beast. It is not impossible to make really good software using Java (we are talking desktop here), and a really good proof of this is azureus. If only all Java apps where like this!


The solution? Well, should there be any? the market always has a natural selection. On the desktop I don't really see Java taking off, if it hasn't happened after all these years, it's never going to happen, excluding a few apps now and then. But in business software it is already the defacto standard, and it will be long before this will change, and for some reason nobody gives a damn about memory and CPU usage there.

No comments: