**************************************************************
*                                                            *
*                         CYBERSPACE                         *
*         A biweekly column on net culture appearing         *
*                in the Toronto Sunday Sun                   *
*                                                            *
* Copyright 1999 Karl Mamer                                  *
* Free for online distribution                               *
* All Rights Reserved                                        *
* Direct comments and questions to:                          *
*                                         *
*                                                            *
**************************************************************


Java scared me at first. The web has been so successful because 
HTML, the mark-up language that lets a web browser make your 
text look real pretty, is reasonably easy to learn.

HTML began life as a quick-and-dirty hack -- something busy 
scientists could master in a few hours and the average computer 
user could stumble through in a few days.

Java's not something the average computer user can learn in a 
few days. Java is an object-oriented computer language. It's a 
nudge less complicated than C++, arguably the preferred 
language of Real Programmers, but it's still a major step up 
from HTML.

Java was invented by high-end computer manufacturer Sun 
Microsystems. Java was intended to be a universal computer 
language. A "write once, run anywhere" computer language had 
long been the dream of pretty much anyone who couldn't decided 
between buying Mac or IBM. The Internet and Netscape's 
inclusion of Java support in its browser helped give Java 
instant critical mass.

My initial fear was Java would dominate the web, locking the 
average Joe out of this equalizing medium. People would be so 
transfixed by web pages with dancing babies and Java versions 
of Mine Sweeper, no one would care anymore to read home-brewed 
pages about the Avro Arrow or body piercing techniques.

A great loss, surely.

Fortunately for the vox populi, the Java dream has turned into 
something of a nightmare. The reality of Java today is not 
"write once, run anywhere" but "write once, port for 
everything." A truly universal Java program has to be ported 
about 17 different times because Java interpreters written for 
various web browsers, operating systems, and development 
environments all go about solving certain problems in "novel" 
ways.

Like most computer nightmares, blame is laid at Microsoft's 
feet. Sure, why not?

Java, being backed by Sun and Netscape (two major players in 
the early days of the net), took on the aura of a Microsoft 
Killer. Novell and Corel have previously picked up the sling 
shot and laced on the bronze greaves of the Microsoft Killer 
and came away bleeding money.

You would have to be very creative to think up a dumber move 
than to take on a company with enough cash in the bank that it 
can go a year without revenue.

Oh well, maybe Java would be different this time. Novel and 
Corel went after the arms and legs, the application side. Java 
aimed for the heart, Microsoft's Windows operating system. With 
Java, software development is  no longer tied to a specific 
operating system like Windows.

Microsoft does not react well when it senses its eventual 
demise. It fights back, using every trick and dollar at its 
disposal. In the early days of Java, many people in the 
industry assumed Microsoft would throw 300 of the worlds 
smartest developers on a project to create its own portable 
language.

When it announced that it would license Java from Sun and then 
mentioned less-than-specific plans for "extending" the 
language, a few realized the battle for Java as a Microsoft 
Killer was over before it had even begun. 

The man who invented Java for Sun, James Gosling, recently 
accused Microsoft of creating a "divergent" version of Java. 
Programs written on Microsoft Java either won't run or won't 
run well on any other platform. Since it is Java's theoretical 
universality that makes people put up with the generally crappy 
performance, it becomes pointless to write Windows applications 
in Java. You may as well write in native C code.

While it's fashionable to blame Microsoft for all of Java's 
problems, developers themselves have a laundry list of 
complaints. The Java Skeptics page at 
ourworld.compuserve.com/homepages/Stuart_L_Hodgins/jskeptic.htm 
gives one a good overview of many of the non-Microsoft inspired 
problems. In summary, developers view Java programs as slower, 
prone to crashing more, and the language limits one to fewer 
features.

The Java apologist side can be viewed at 
www.disordered.org/Java-QA.html. Many of the answers to the 
criticisms amount to "this problem will be solved in the not-
too-distant future when everyone agrees on something." The 
problem is, as developers have come off the Java high and are 
waking up to its bitter realities, Java's future now depends 
developers actually believing the language has one.

    Source: geocities.com/lapetitelesson/cs/text

               ( geocities.com/lapetitelesson/cs)                   ( geocities.com/lapetitelesson)