Software Development West '97was full of the typical things you'd expect to find at a software conference: thousands of companies trying to set up demo appointments for anyone with a pulse, a loud MSJ party that ended only after the hotel Goon Squad kicked us out of our suite at 2:30am, and, of course, a Bill Gates key-note. Let us sum up what he said: Java is a language, and Microsoft is committed to providing tools for Java just as it provides tools for C++ and Basic. COM provides the framework that allows programmers to decide for themselves what language or languages to use. Bill also alluded to the fact that Microsoft will be enhancing COM to make it even better at bringing all languages together.
Outside of Microsoft, the perception continues to be that Java is Methadone for programmers addicted to Microsoft languages, tools, and operating systems. But internally, the Remondtonians view Java as just another useful tool for developers to use, and Microsoft is supporting it fully. The fact that Microsoft didn't invent Java is just as unimportant as the fact that Microsoft didn't invent COBOL, Fortran, Basic, Pascal, C, or C++.
We like to note the parallels between the current Java jihad and the last time many in this business were whipped into a similar religious fervorback when C++ arrived on the scene. Magazines with "C" in their title changed to "C/C++", columns in publications such as MSJ were renamed, and all the compiler vendors scrambled to put out the ultimate C++ compiler. Now, just like before, Microsoft, Borland, and Symantec have all scrambled to crank out Java products, and developers again have multiple choices of vendors from which to buy their tools.
One of Java's most touted features is that pure Java programs run on virtual machines to give them total platform independence. Developers are promised the opportunity to write their programs once and have them run on a variety of platforms. We've heard this song before. C promised this too. In reality, you can only write platform-independent Java programs by sticking to facilities that are common to all the target platforms.
Truly rich software will always need to exploit the platform it's running on. Microsoft learned this the hard way with Word 6.0 for the Mac, which was developed using the same code base as Word 6.0 for Windows. It turned out that Mac users didn't want to run a Windows-centric version of Word that ignored the Mac idiom. Microsoft wised up by creating a version Word 7.0 tailored for the Mac.
Windows platforms, Sun platforms, Mac platforms, WebTV platformsthey all have their strengths and weaknesses. As Java becomes more popular and more widespread, the need for platform-specific code will also become more widespread. With all of the new developments from Microsoft, JavaSoft, Sun, Netscape, and a host of others, Java runs the risk of becoming another Unix, with so many different enhancements, flavors, and dialects that the promise of platform-independence doesn't pan out. We here at MSJ can't predict Java's future, but we can predict Java coverage in MSJyou will definitely read more about it in these pages.
© 1997 Microsoft Corporation. All rights reserved. Legal Notices.