"The biggest problem is that Java is really slow."
"Write-once-run-anywhere. Ha. Hahahahaha."
In my opinion the latter is really the biggest problem. The whole reason for Java's existance is the latter.
Java as a network application environment has basically 2 parts:
1. Download portable byte code
2. Run portable byte code.
The first part is the network part and of course downloading is very simple, and this part works flawlessly, but in my opinion does not get you where you want to go.
The second part is the problem. Since Java can not control the execution environment (every computer is different) it fails in its mission to run everywhere. This is what John is talking about.
At work I have to have 5 different versions of Java installed on my PC, because each application was developed for a different version of Java, and (apparently) they can not run on a different version of Java. This does not even include trying to run on a computer with a totally different operating system, such as a Linux computer.
My New I/O system is simpler: run the application on a host (where you can control the environment), and display on the client. Since it is much simpler to display then to run a program, you you will be able to "write once, display anywhere", and in the case of New I/O it will really work.
P.S. Here is some more Java controvery.
Monday, April 18, 2005
John Carmack Destroys Java!
In his March 27th blog entry John Carmack (of Doom game fame), discusses coding games for cell phones. In it he really clobbers Java. I quote: