San Francisco (6/24/97) -- In what Sun calls a move to lock developers into the Windows platform, Microsoft has announced that future versions of its Java virtual machine will support direct calls to the entire set of Win32 APIs (application programming interface) -- a feature Microsoft calls J/Direct.
Microsoft Product Manager Tom Johnston says upcoming versions of Microsoft's Java software developer kit will let developers write Java applications that can run Win32 DLL's (Dynamic Link Libraries) without using native methods. "It looks as if you're importing the DLL," he explains, "and making it look, in a sense, like a Java class." According to him, "developers are telling us that they are more productive in Java than in C, but they don't have the fine grain control." And fine grain control, at the expense of interoperability, is what Microsoft is providing with J/Direct.
On the Internet newsgroups J/Direct is being called the death of Java. And some developers say it will create two versions of the Java platform: Windows and non-Windows. But Microsoft's Johnston says his company is simply aiming "to increase what the Java developers today can do." He predicts that J/Direct will be used in things like vertical applications that use data gathering from a device, multimedia applications that want to talk directly to the hardware, and applications that require tight integration with other applications.
Everyone, except Microsoft of course, seems to think Microsoft is doing more than lending a friendly helping hand to Java developers. JavaSoft's director of corporate marketing, George Paolini, is predictably unequivocal: "their only motive is to lock developers into the Win32 APIs." But Paolini says that J/Direct will backfire because developers want interoperability, not access to Windows APIs. "It's the classic mistake high technologies go through: milk the cash cow instead of adapting to the new paradigm: this is Wang [Laboratories Inc.] trying to hold off the PC, and the PC subsuming Wang's PC features," he remarks, referring to the beating the company took at the hands of PC and LAN technology in the early 1990s.
Microsoft builds its "arsenal"
J.P. Morgenthal, president of New Horizon Computing Corp., an IT consulting firm, says that Microsoft is simply acknowledging the shift towards thin client computing. J/Direct, he predicts, will encourage Windows developers to switch from C++ to Java, in turn building an "arsenal of Java programmers." Morgenthal does not think that a host of Win32-specific Java applications will spring up immediately because the "conservative [developer] community isn't going to touch Java for at least a year." So by the time Microsoft has trained its "arsenal," he predicts, JavaSoft will have made the Java language stable and fast enough that developers won't even need to use J/Direct.
Does J/Direct mean Microsoft is abandoning ActiveX? Microsoft says no. Paolini says yes. "If you look back over the last six months, they [Microsoft] have seriously backed off pushing ActiveX," he says. Morgenthal disagrees. "ActiveX is still an excellent way to do inter-object communications on a Windows platform. [With] J/Direct we're talking about raw access. That isn't the stuff that compound documents are made of," he says.
In the end it will be developers, not Sun or Microsoft, who determine J/Direct's success or failure. According to one Java developer, Keng Lim, CEO of Kiva Software Corp., the ability to call C++ code without having to go to JNI (Java Native Interface) "could be very appealing for a lot of Windows developers." But, he says, developers are also keenly aware of the appeal of Java's portability, and porting code costs money. "If you just want to sell on Windows," he predicts, "if you don't care about portability, then it's a compelling solution."
Lim says his company won't be supporting J/Direct right away, but others seem less sure. Tool vendors Symantec and Borland did not have any comment on whether they would be supporting J/Direct in their Java development environments.
J/Direct will eventually ship in all copies of the Microsoft Win32 Java virtual machine. It will first appear in the next release of Internet Explorer, expected four to six weeks from now. Microsoft says it will release J/Direct development tools at the same time in its Java software development kit. J/Direct will ship as part of future versions of Windows 95 and NT, and it will be in the Internet Information Server as well.