Tangled Webs

   The Myth of Customer Demand
Issue 3.13
Dec 11, 1998

That Was Then

On October 7 of last year, Sun Microsystems filed suit against Microsoft for trademark infringement, false advertising, breach of contract, and unfair competition over alterations Microsoft had made to its implementation of Java. As a result of these alterations, many applications developed using Microsoft's Java development tool (J++) would only run when used with other Microsoft products. Microsoft originally dismissed Sun's lawsuit as a publicity stunt and claimed that Microsoft was only responding to the demands of its customers.

Over the past year, the court case dragged on, and Microsoft introduced several new Java products, many of them quite good, but most with the annoying tendency to support Microsoft Java, not pure Java. On various occasions Microsoft representativies enthusiastically claimed that the company was "fully behind", "very excited about" and even "in love with" with Java. The Microsoft-only Java generated by J++ was there in response to strong "customer demand."

The bulk of the Java development community, however, was fully aware that despite its claims, Microsoft was doing its best to Balkanize Java. Most Java developers stayed away from Microsoft's development tools, and those who made an informed choice to use J++ and subscribe to Microsoft's professed Java vision did so with the understanding that their "Java" applications would only run under Windows.

Of course, speculating on Microsoft's true objectives and proving them in court are very different things. Internal email released at the hearings, however, confirmed that Microsoft's objective was to "eliminate/contain cross-platform Java by growing the polluted Java market... migrate and lock Java developers to Win32 Java," and thereby "kill cross-platform Java."

If that's not a smoking gun, I don't know what is. On November 18th, 1998, the court ruled in favor of Sun. Microsoft was given 90 days to bring its Java products into compliance with the standards or to stop shipping them.

This Is Now

In reality, the court injunction requires Microsoft to do very little. They do not have to remove their proprietary Java extensions, and J++ can still generate non-standard Java. However, Microsoft must make certain that their Java virtual machines can run standard Java as well, and J++ must be set to generate standard Java by default.

Microsoft's engineers and project leaders said that the required changes were simple, and that compliance in 90 days would not be a problem. Patches to the software would be posted to Microsoft's website presently, and all new software would be fully compliant when it shipped. It looked like an overall win for consumers, and Jeff Raikes, Microsoft's group vice president for sales and support, declared that Microsoft was "committed to supporting Java for all our customers."

We should have known better.

Four days later, Microsoft officially announced that it would be removing and dropping all support for its Java virtual machine for Internet Explorer on the Macintosh and Unix platforms. Furthermore, several top Microsoft executives announced that the company is considering dropping Java support from all of its products.

What Comes Next?

At the time of this writing, Microsoft is claiming that they are committed to supporting Java in the "short-term", but will not commit to "long-term" support. While company representatives have offered few specifics, the writing is on the wall. The court ruling will force Microsoft into complying with last year's Java1.1 standard, but it seems fairly clear that Microsoft has no intention to support the current Java1.2 (recently renamed Java2) specification or any future versions of the language.

This has not been welcome news to those developers who chose to use J++. You can practically hear their screams over the Internet these days. These are the people who bought into Microsoft's vision of Java for Windows, and they rank among Microsoft's most loyal developers. Suddenly, Microsoft is threatening to turn all of their work into an evolutionary dead-end at best, or unsupported legacy code at worst.

The sad thing is that it doesn't have to happen this way. The changes required to bring Microsoft's tools into full compliance are minor, and if Microsoft were to make them honestly, J++ would be one of the best Java development tools on the market. Its interface and debugger are excellent, and if J++ truly gave developers the ability to generate both Microsoft Java and real Java, a lot of developers (including this one) would take a hard second look at it.

Microsoft would have absolutely no trouble competing on quality in this area, but to do so would require them to acknowledge and support a software standard they do not own. It seems that is far too much to ask. Completely abandoning their developers, whose needs Microsoft pretends influence their decisions, seems to be a much more palatable option.

[ Home Page] [ Back to Index ] [ Previous Issue ] [ Next Issue ]

© Copyright 1998, Tim Romero, t3@vanguardjp.com
This article fist appeared in the December 9, 1998 edition of The Japan Times.
Tangled Webs may be distributed freely provided this copyright notice is included.
The Tangled Webs Archive is located at http://www.dotco.com/t3/tangledwebs/index.shtml