To sum up the year's headlines about Java, one need only look back at the year-end summary for 1996: "MS, Sun battle for Java." The two titans fought tooth and nail again in 1997 to direct--or deflect--the momentum behind Java, but Sun ended the year a step closer in its campaign to turn its nascent programming language-cum-platform into an international standard.
The biggest victory for Sun came outside the United States, where member countries of the International Organization for Standardization (ISO) approved Sun's bid to be the gatekeeper in the upcoming standardization process. In other words, Sun gets to gather feedback, determine how to evolve the Java specification, then submit it to ISO for standardization approval.
Microsoft fought it every step of the way, pointing out that Sun will have the final say over what goes into the open specification, yet it also will retain ownership of the trademark. From Bill Gates on down, the Microsoft party line runs this way: Java is a good programming language but it should not be elevated to the status of computing platform, where it constitutes a threat to the Windows franchise.
In October, when Redmond shipped Internet Explorer 4.0 as well as programming tools with its own version of Java, Sun's claims that Microsoft wants to turn Java into an extension of Windows reached fever pitch. After finding IE 4.0 "incompatible" with its own Java specification, Sun immediately slapped Redmond with a lawsuit, claiming Microsoft was infringing the Java trademark by using the Java coffee-cup logo to promote products that don't adhere to the "write-once, run-anywhere" dictum. Microsoft almost immediately countersued, claiming breach of contract and other unfair dealings.
The legal maneuvers play into Microsoft's hands: the longer Java is tied up in court, the less momentum Sun can build among developers. However, Sun has just won another small battle on that front: a judge last week agreed to hear the case next February, not in June, as Microsoft attorneys had hoped.
Meanwhile, Microsoft has been removing the logo--as well as most traces of Java code--from its Web site. (Like Microsoft, Netscape's latest browser is not fully Java-compatible, but the company enjoys a much cozier relationship with Sun. Not taking any chances, however, Netscape removed the Java logo from Navigator in November.)
If Sun can sway enough developers to Java, of course, then Microsoft's strategy will have less impact. Sun has had mixed results on that front. While it has been able to count on vocal support from groups such as the Java Lobby, many developers have had trouble building 100 percent pure Java applications, as Java lacks many essentials that programmers take for granted in more mature languages such as C++.
Major software maker Corel had to retool its plans for an all-Java suite of office applications. "Office for Java" was due this summer but has been pushed back to 1998 and renamed "Corel Central."
Lotus had better luck, as it released its Java "eSuite" last month, giving business users their first Java-only alternative to traditional office applications.
To boost developer momentum, Sun launched a "100 percent pure Java" campaign in the first part of the year to give pure-Java developers perks and promotions in exchange for their loyalty. But many developers found it a chore to go pure. To placate developers who were having trouble attaining purity, Sun floated a "100 percent pure pending" option in June, but it sank quickly back into the swamp after a month or two in the summer spotlight.
The "Pure" campaign is still in effect, but Sun acknowledges that Java is still young, and that programmers need to bolster their applications with features from the underlying operating system, be it Unix, Windows, or Macintosh. The next version of the Java Development Kit, which just hit beta last week, aims to provide easier access to "native" resources without a loss of security, as well as improved graphics interfaces and application building blocks.
Will the evolution of Java proceed fast enough to keep the language-platform pure, or will developers succumb to the pressure of writing Java applications for Windows and other platforms? The answer could lie somewhere in 1998.