The software, which could take the form of a new language, could be similar to Java in its object-oriented design that has attracted so many developers to Sun's programming language, sources said.
Still unknown, however, is whether it will include Java's cross-platform capabilities or be tied strictly to Windows. The company is using the code name "Cool" to refer to the Java alternative, according to developers and Microsoft insiders.
"Cool is Microsoft's Java language competitor," said a developer close to Microsoft, who spoke on the condition of anonymity. "We are aware of it and have been watching it."
Microsoft officials acknowledged that the company has discussed the concept of a new language but insist that it's not a major focus. "Yes, we are looking at lots of new things," said Michael Risse, product manager for Microsoft application development tools. "Where is that in the overall context? It's in the 10 percent exploratory case. Nobody is writing any code to any new language in this company today and in the foreseeable future."
Outside of Microsoft, however, several partners claim Cool is more than just an "idea on a whiteboard," as Risse characterized it. Rather, they say, it will epitomise Microsoft's belief that users want a Java-like product more for its productive development environment than for its cross-platform support. "We're not just talking about C++ extensions. Microsoft needs something radically new, and that's what Cool is supposed to be," said a Windows developer who has worked closely with Microsoft and requested anonymity.
A third developer and Microsoft partner added this: "Everyone has a different idea about what Cool is. Some people are saying Cool will be based on the technology Microsoft acquired from Colusa a few years ago. [Colusa was] building a run-time language like Visual Basic. Microsoft has offered a proposition for a new language that looks a lot like Java but is missing some of the key features of C++."
Sources close to the company say factions within Microsoft are fighting over the language strategy. While some executives are pushing for a completely new language, others favour beefing up C++ to make it better than Java, sources said. In addition to using the code name Cool to refer to an entirely new language, Microsoft also has used Cool to refer to extensions to its Visual C++ language.
News of Cool is trickling out on the heels of some recent legal manoeuvering by Microsoft in its breach-of-contract lawsuit with Sun. Earlier this month, Microsoft asked US Judge Ronald Whyte for permission to create a Java alternative that would not be bound by Sun compatibility tests. Whyte hasn't ruled yet, although he termed the concept "very interesting." The issue likely won't be resolved for several months.
Late last month, Microsoft issued a patch that includes Sun's Java Native Interface to the Visual J++ development tool, as Whyte ordered in November. If Cool is Microsoft's answer to Java, it creates even more questions for IT developers, such as Microsoft's status as a Java licensee and the extent to which it will attempt to make Cool cross-platform, as Java is.
One developer believes, and hopes, that Cool will not be cross-platform. "There are a lot of developers who say Java has lost momentum," said Mike Sax, president of Sax Software. "If anything, making [Cool] not cross-platform seems like a smaller risk than going along with the Sun ruling and letting Sun call the shots." If Microsoft makes Cool a product, the company will have a sizeable challenge in gaining market acceptance, other developers said. "Java is entrenched and is appreciated by a whole group of people out there who don't want to be tied to Microsoft for everything," said the Windows developer. "The world doesn't really need an alternative to Java from Microsoft."
Additional reporting by Antone Gonsalves and Scott Berinato, PCWeek, and Deborah Gage, Sm@rt Reseller.