During the 3 and 1/2 years that Windows 2000 was being developed, the message was clear: Microsoft was betting the company on this product, and all future plans depended on Win2K's success. A mere 7 months after its release, however, things have changed dramatically. Win2K has sold far less well than expected, and Microsoft is talking endlessly about its .NET strategy, which won't be fully realized until 2002 to 2003, according to CEO and President Steve Ballmer. I've said in the past that Win2K's monolithic development was a life lesson for the company because the lengthy development time almost guaranteed that the market would move on during the process. But it's hard to fathom that the company spent so much time and money developing Win2K, only to abandon it now.
Of course, Microsoft isn't actually abandoning Win2K, and company officials note that .NET will be built on this OS's successors. But de-emphasizing Win2K—at a time when the company should be doing everything it can to grow sales—is curious. Win2K is currently selling at less than one million units per month, and Windows NT 4.0, which hasn't lost a step since Win2K's release, is still outselling the new OS. Indeed, with Service Pack 1 (SP1) finally available, you'd think that Microsoft would rally the troops with a promotion aimed at corporate adopters who were waiting for SP1's release. Instead, the company seems content to prep us all for .NET.
We know that Microsoft wants to move us to a software subscription model that will have us pay the software company every month, in the same way that we now subscribe to cable TV services. We can also see that such a change won't come easily or, of course, anytime soon. On a technical level, .NET isn't even that complex: One might think of the .NET initiative as simply the next version of Windows DNA 2000, in the same way that COM+ is the next version of COM. Sure, some additional services are built in—developers, especially, will appreciate the new .NET structured programming model, for example—but Microsoft isn't asking users to move to a new, incompatible platform.
Once the veil of secrecy is lifted, it's clear that .NET still requires Windows at virtually every level, although Microsoft has gone to great pains to explain how its XML-based transport layer is platform neutral. Microsoft servers (yes, running Win2K) will be required, and Microsoft's Windows clients will be the preferred front-end. If anything, Microsoft should be promoting Win2K as the best way to get started on the .NET transition because Win2k should make the move to the next version relatively trivial.
Speaking of the next version, Microsoft will ship the initial .NET implementation in Whistler, currently due late next year. And the company has said that it will provide .NET runtime environments for Win2K, NT 4.0, and Windows 9x, so most organizations won't even need this upgrade—or a future one in the guise of a product currently known only as Blackcomb (nee NT 6.0). Given this information, I could argue that Win2K, which represents a dramatic update over its predecessor, is the crucial upgrade that Microsoft should be pursuing. And yet, the company isn't.
I visited Microsoft during the push to what was then called NT 5.0 Beta 2 and witnessed a near-religious rah-rah session in which Steve Ballmer began a chant of "NT everywhere, NT everywhere" that soon engulfed a room full of OS developers. A year later, the name "NT" was gone, despite the protests of people both in and out of Microsoft. And today, a year after that, Microsoft is already working to leave Win2K by the wayside. This isn't the way you treat the technology on which you've bet the company.