Is Java a Virus?
(fredness), January 16, 2000

Java is an object oriented computer language that requires a compiler AND a system specific interpreter. Is this some kind of joke? This dual requirement insures that Java will be painfully slow and difficult to program by design.

Compiled languages like C justify being harder to develop with by offering more optimized run time code.

Interpretted script languages like Basic, Perl, and Javascript are extremely easy to program and have very modest development environment requirments. By being interpretted and easy to program they sacrifice the runtime performance offered by compiled languages.

Java requires a system specific compiler tool, yet is also interpretted when run on the target platform - the worst of both worlds. Interpreted means it is slow, compiled means that Java has a steep learning curve and complicated development environment. C and other languages by comparison are remarkably fast, efficient, easy to develop, and even more cross platform than Java could ever hope to be.

So who benefits from Java? Compiler makers and computer manufactures see a gold mine in Java support and acceleration, even though existing languages require less compiler support and run faster on less sophisticated hardware. Everyone else is just a sucker to the Java hype. Or in a different parlance; Everyone else is host to the Java virus.

Will virus protection software ever detect and excise all Java compilers and code for better system health? This virus is particularly nasty in part because in addition to being a very bad architecture, it has a psychological component that renders an infected code developer incapable of objective decision making regarding code efficiency, portability, and ease of maintainance. Perhaps java is so slow and cumbersome to develop for that it will atrophy when more pressing matters engage computer and compiler makers.

With the hype of the Internet appliance growing, it seems cost and performance now have a new voice for ultra-cheap ultra-compact ultra-low power devices. Devices that can do the same thing directly without sluggish Java and the unnecessary amount of hardware and software it requires will quickly assert their own leaner and more fit model for distributed computing. Java will soon be relegated to obscure and niche applications where no serious performance or complexity constraints are pressing until ultimately its will wither away completely ... say by the year 2010.

Related ...