Tech Industry

Windows developers weigh Java's worthiness

As the Sun vs. Microsoft battle over Java drags on, Windows developers wonder if it is time to write off J++ and adopt Microsoft's "Java killer," C#.

As the legal battle between Microsoft and Sun Microsystems over Java drags into a third year, Windows developers are wondering: Who needs Java anyway?

When Sun sued Microsoft more than three years ago for allegedly failing to comply with Sun's Java licensing terms, Microsoft was pushing its own version of Java, called J++, based on technology licensed from Sun. In recent months, Microsoft has switched gears and is now putting all of its development effort behind a new language called C# (pronounced "C-sharp"), a Java competitor that does not rely on Sun technology.

Now, developers are wondering aloud when Microsoft will officially dump J++ and move on.

Microsoft already has all but abandoned Visual J++. This summer, executives said the tool would not be part of the next release of Microsoft's development tools package called Visual Studio.Net.

Wednesday, Microsoft and Sun attorneys were slated to present oral arguments on pending motions in the Java suit, Microsoft spokesman Jim Cullinan said. But over the weekend, Microsoft said the hearing had been postponed and not yet rescheduled, delaying the trial date for the case even further.

Testers: Who needs Java?
Microsoft earlier this year took the wraps off its C# language, which is one of a handful of languages that will be part of its Visual Studio.Net tool suite.

Greg DeMichillie, group program manager for C#, said Microsoft's .Net strategy will allow existing Microsoft software developers to build Internet-based applications without having to learn a new language, such as Java.

Redmond, Wash.-based Microsoft originally developed C# under the code name "Cool." Before the release of the product, the company said Cool was merely a better version of Microsoft's C++ language. Privately, Microsoft told developers that Cool was meant to be Microsoft's answer to Palo Alto, Calif.-based Sun's Java.

A number of testers who have been dabbling with the first beta release of Visual Studio.Net--which Microsoft released at the Comdex trade show last month and is due to ship in the latter half of 2001--said Microsoft's new language almost completely obviates the need for Java.

"C# is all you really need," said Rick Williamson, chief executive of FarPoint Technologies, a Windows component developer based in Morrisville, N.C. "I'd suspect Microsoft will just drop J++."

Williamson went so far as to say that he considers C# to be the most stable part of the Visual Studio.Net beta.

Another beta tester, Sam Patterson, chief executive of ComponentSource, an Atlanta-based component marketplace, agreed. "Everything you can do in Java, you can do in C# or even Visual Basic now, with Visual Studio.Net," he said. "In the past, because Java was a lower-level language, you could do more with it."

Visual Studio.Net testers did note that unlike Java, C# is not cross-platform and currently supports the development of Windows-based and Microsoft.Net-based applications only.

Developers speculated that Microsoft was talking to third-party software companies about porting the underlying .Net framework interfaces to other platforms, but Microsoft has steadfastly declined to comment on when and if it will do so. The only company that has publicly expressed interest in doing such a port is Corel, which has said it would be willing to port .Net to Linux if Microsoft so requested. Microsoft also invested $135 million in the struggling software maker earlier this year.

Microsoft: Embrace and extend
Microsoft's embrace of Java and its plans to "extend" the Java technology have been hotly debated over the years. Many industry observers considered Microsoft's J++ to be a solid language and Microsoft's Java Virtual Machine to be the best VM implementation on Windows.

But when Microsoft decided against supporting some of Sun's Java platform components, and then--adding insult to injury--added its own set of Java-class libraries to the Microsoft Java implementation, Sun slapped Microsoft with a contract-compliance lawsuit.

In May of this year, Judge Ronald Whyte ruled that Microsoft did not violate Sun's Java copyright and agreed with Microsoft that Sun must deliver technology for Microsoft's current Java Virtual Machine.

Whyte is not slated to decide until trial whether Microsoft can "independently develop" Java technology and incorporate it into Microsoft products. For now, Microsoft is bound under a preliminary injunction to support Sun's Java technology in its products, pending trial.

When asked whether Microsoft had any plans to simply drop the Java suit with Sun, since Microsoft seemingly has no plans to support Java any longer, Microsoft spokesman Cullinan said that since Sun filed the suit, Microsoft has no say-so in that matter. A Sun representative said Sun has always been open to settlement discussions.

Sun is unfazed
At the same time, Sun executives maintained that Sun does not see C# as a threat to Java.

"Two years ago, (C#) would have been a bigger threat, but now Java is the No. 1 programming language for building Internet application systems," said Anne Thomas Manes, director of market innovation at Sun Software. "It's so well-entrenched. We're not worried about losing Java developers to C#.

"There's nothing spectacularly new with C#. It's a nice language and a very reasonable Java alternative," Manes said. "But if you've been developing with Java for the last two or three years, you have no incentive to go to C#."

Meanwhile, Microsoft is making a big marketing push to get C# into developers' hands. The company has already sent about 200,000 test versions of Visual Studio.Net to developers and will ship to developers an additional 500,000 copies in January.

News.com's Wylie Wong contributed to this report.