
Posted on September 09, 1998 at 9:04:48 PM Central.
Consider an InfoWorld article published today. The first sentence of the article says that "... James Gosling ... told a court here on Wednesday that Microsoft's Java technology does not allow developers to write applications that will run on any platform." This sounds like a great hook for a news article, but unfortunately it is false. Later, the article says "When a software developer uses Microsoft's Visual J++ developer tool to write an application that uses both the Java and C programming languages it will run only on Microsoft's Java Virtual Machine...". That's true, but Sun has always maintained that mixing C and Java code is non-portable. Apparently Gosling is trying to make the argument that since it is possible to write non-portable Java applications with J++, then all applications written with J++ are non-portable. This is such a classic fallacy that I can't imagine why people would fall for it.
Sun apparently believes that Java licensees should be required to ship everything in the Java specification but not allowed to add anything more. What, then, is the point of licensing Java? However, it gets worse when one considers Sun's selective enforcement of this policy. Apple is a Java licensee, and Apple's VM contains features that are not in the Java specification called JDirect. JDirect allows developers to write Java applications that will only run on MacOS. Why hasn't Sun sued Apple? Because the suit is not about Java. If you're Anyone But Microsoft, you can add all the features you want to Java. If you're Microsoft, licensing Java just gives Sun an excuse to try to bully you.
Should Sun play fair or is Microsoft getting what they deserve? I invite your feedback.