So it turns out Java is dead meat at Microsoft -- or maybe not, depending on what report you read last week. According to various sources, Microsoft plans to license a Java clone and build its products around that. Or possibly kill its Java products completely. Or conceivably create its own new Javalike language.
Confused? So is everybody else, apparently. But the one thing all the reports agree on -- from trade newspapers to The New York Times -- is that Microsoft is working on, well, something codenamed Cool. Cool may be Microsoft's Next Big Thing. It may be a new language, though Microsoft denies that. It may be Javalike or a replacement for Java. (In these news stories, Microsoft seems obsessed with Java.)But no two descriptions of Cool are quite the same.
Nope, I don't know what Cool is, either. But based on history, technology and what corporate IT shops actually need, we can make some pretty good guesses about what Cool isn't -- and what it really should be.
First things first: What Cool won't be is a head-to-head competitor of Java. Microsoft doesn't win head-to-head competitions with savvy competitors. Remember Microsoft Money? And the Microsoft Network? And even Internet Explorer, before it was stitched into Windows 95? Microsoft won't win by playing catch-up with Java.
No, Microsoft wins by leapfrogging the competition and leveraging the technology it builds into its operating systems. That's how Microsoft Excel took the spreadsheet market away from Lotus 1-2-3 and how Microsoft Word stripped WordPerfect of its word processor dominance. When Windows took over PCs, 1-2-3 and WordPerfect were left in the dust.
A new Javalike language? Forget it. But what about a language that does some things Java can't do?
What if, instead of a traditional programming language, Cool turns out to be an object-oriented modelling system -- one designed to make it easier to build distributed, transaction-based applications?
Right now, building real distributed systems is very, very hard. So hard, most shops don't even try. A language or tool that makes it easy -- now that's something IT shops need.
Funny thing, too -- that's also the kind of new technology Microsoft is building into its next version of Windows. Windows 2000's Active Directory will make it far simpler for distributed applications to find their way around the network. COM+, another highly touted Windows 2000 feature, is supposed to radically simplify transaction programming and make middleware obsolete.
All that's missing is an easy way for developers to design and generate big chunks of distributed applications automatically -- a modelling system that would do for distributed programming what Visual C++ did for building graphical applications.
Is that the mysterious Cool? If it isn't, it ought to be. It's what corporate IT shops need. It would give us a huge boost in creating distributed systems -- and, not incidentally, would give IT shops a real reason to want Windows 2000.
Of course, it won't be Java -- or Javalike, or a Java replacement. It won't even make Java obsolete. But unless Microsoft truly is obsessed with Java, there's no reason it should be.
We don't need another Java -- and neither does Microsoft. What we need is a better way to build distributed applications. And that really would be cool.
Frank Hayes, Computerworld's staff columnist, has covered IT for 20 years. You can contact him at email@example.com