This morning, I've been reading this memo, allegedly an internal memo at Sun. It may or may not be authentic, but the contents pretty well sum up one of the reasons for Why Java Sucks - huge memory consumption.
This is really more serious than I'm making it sound. Consider this thread from comp.unix.solaris. A training lab of 32 Ultra-10's that need to be upgraded for one reason only - Java. You now have the very real scenario of Java costing you money.
I've never liked Java. It's slow, it's a memory and cpu pig, and the syntax is too verbose for my tastes. Combine that with the problems listed in the memo (which I realize are targeted at Solaris, but most of which are true on other platforms) and I can't find a single reason to use Java for, well, anything.
Java in our mail servers
Matts on 2003-02-09T18:54:27
We have a single Java component right now in our mail servers - an application to do "branding", which basically means wrapping the outgoing email in banners for your company logo and so on. It'd be a few lines of code in perl (ok, maybe quite a lot more, but still). I don't know how many lines of Java it is, but the component on our server consumes about 68M of RAM. It's the biggest memory consumer on our mail servers, with the nearest second place going to my spam scanning code at about 8M (written in Perl).
Java stuff
kjones4 on 2003-02-09T20:58:34
I keep trying to like Java but for the simple tasks that I need to program, Perl has always been a better fit. Microbenchmarks that I've run show Java to be faster in many respects. However, when I create a Java version of one of my existing Perl programs, the Java version is always significantly slower. Probably because most of my programs are dominated by reading from files, running regexes, and adding elements to fairly large arrays.
How to kill a product
dws on 2003-02-10T01:37:25
As I read the memo, the part that jumped out was the emphasis on adding new features at the expense of stability. The same happened with Smalltalk years back at ParcPlace. The mindset at one point was "features, features, features." Stuff got shovelled in faster than it could be cleanly assimilated, with little attention being paid to bug fixes. There was even serious talk at one point about deleting the entire bug database and starting over. Sounds like the same has been happening at Sun. I suspect that the JRE internals have long ago devolved into a "Big Ball of Mud" that's impossible to refactor for both technical and political reasons.
Re:How to kill a product
I suspect that the JRE internals have long ago devolved into a "Big Ball of Mud" that's impossible to refactor for both technical and political reasons.
Sounds kind of like perl5, doesn't it?
:)
Of course, the perl developers actually admit there is a problem, and are doing something about it. Not to mention that the problem wasn't as bad in the first place . . . .
Having said all that, I totally agree with the djberg96's statement:
I've never liked Java. It's slow, it's a memory and cpu pig, and the syntax is too verbose for my tastes. Combine that with the problems listed in the memo (which I realize are targeted at Solaris, but most of which are true on other platforms) and I can't find a single reason to use Java for, well, anything.
Some of my coworkers think I'm a lunatic for saying these things.