Microsoft effectively put Java author James Gosling on trial yesterday for the failure of Java technology to live up to Sun Microsystems Inc’s marketing slogan Write Once, Run Anywhere. Mostly using contemporary press reports and Sun marketing documents as its evidence, Microsoft told the story of poor compatibility and poor performance when using Java for cross- platform program development. The tactics were in sharp contrast to the previous day’s strategy, when Microsoft concentrated on building Java up as a significant threat to its business. Yesterday’s testimony appeared to be attempting to show that, at least with its current capabilities, Java offered no such threat. Gosling fought back by saying that most of Microsoft’s claims were ancient history and that newer versions of Java, including the Java Development Kit 1.2, officially due out next week but already in the hands of many developers, solved most or all of the problems. But Gosling was clearly uncomfortable with some of the claims made over the years by Sun’s marketing department, which he implied often presented a simplified picture of the complexities of cross-platform development. He admitted that there had been both source and binary code compatibility problems between older versions of Java, particularly after Sun had modified the security model in version 1.2. He also admitted that the changing method of support for native user interface widgets, from the older AWT to the new swing class libraries that are now part of the Java Foundation Classes had also caused some problems among developers. We are not perfect – that is correct he said. But Gosling said that Java was continuing to evolve. In three years, we’ve made write-once run-anywhere as close to being absolutely true as possible.
Branding program
Microsoft lawyer Tom Burt went on to attack Sun’s 100% Pure Java branding program. Netscape Communications Corp, Java’s first licensee, acknowledged by Gosling as the primary distribution mechanism for Java Virtual Machines through its browsers, could not even keep compatibility with the brand, said Burt. Gosling blamed this on the business difficulties Netscape was going through at the time, because it could no longer charge money for the sale of its browsers. Netscape eventually gave up on JVM development in favor of supporting the Open Java API, enabling users to plug-in JVMs developed by third parties. Burt then showed internal Sun emails that proved Sun was not running its own Java applications through the Java/compatibility tests. Gosling admitted that the group marketing the brand within Sun had not done a good job explaining the scheme to internal developers. A Sun spokesperson said later that Sun now does put its applications through the branding, and has passed over 20 Java applications as 100% Java-compatible. The issues here appear to be moving somewhat away from antitrust and closer to the Sun- Microsoft contract dispute over Java, already fought-out in San Jose. Microsoft says it’s not trying to undermine Java, but is giving consumers an additional choice by offering a platform dependent version of Java that is both faster and more practical than Sun’s version. If Java is dying, then we’re offering a cure said Microsoft spokesman Mark Murray. But Government lead attorney David Boies said that Microsoft had attempted to choke Netscape as the primary distribution mechanism for Java by giving away Internet Explorer for free, tying it to the operating system, signing cooperative deals with service providers, and then shutting Sun out by implementing a competing virtual machine.