When planning their future corporate directions, leading-edge technology companies such as Microsoft have to walk a fine line between their customers' needs and their own needs. In the past, both Microsoft and its customers have benefited enormously from the fact that the company's needs and its customers' needs were the same. Because of this synergy, Microsoft's path has been crystal clear.

When the first PC hit the market, customers were ready for personal computing and Microsoft was willing and able to provide the basic OS and development tools. But Control Program for Microprocessors (CP/M) and other microprocessor OSs paved the way for Microsoft's DOS. Microsoft's hugely successful Windows 3.1 OS coincided with customers' readiness for a graphical interface, but Microsoft was merely following the lead that Apple had established with the Macintosh. Likewise, IBM's work with Microsoft in pioneering the development of the ill-fated OS/2 set the stage for Microsoft's move to 32-bit Windows NT 3.1. Windows 2000, the latest evolutionary step for Microsoft, meets the customers' needs for improved stability and improved enterprise management through directory services. But Novell NetWare long ago established the need for directory services.

Microsoft has a history of building on existing technologies and successfully bringing them into the mainstream business community. Although the customers' product needs and Microsoft's directions of the past were clear, the waters ahead seem murky at best and possibly perilous. Microsoft's future lies in the new Microsoft .NET strategy. Like its here-today-gone-tomorrow precursor, Windows DNA, Microsoft .NET isn't a single product or technology. It's a platform that encompasses a new browser-based user interface, a new programming model, and a set of services that Microsoft defines as Windows.NET, MSN.NET, personal subscription services, Office.NET, Visual Studio.NET, and bCentral.NET. At the heart of the .NET strategy is Microsoft's plan to shift from the current royalty-based licensing scheme to a new subscription-based model.

Although several aspects of Microsoft .NET are compelling to developers and consumers, other aspects are worrisome. On the upside, .NET might make the process of developing desktop and Web applications the same—finally eliminating DLL Hell and letting users easily incorporate new wireless and voice technologies. On the downside, .NET could be nothing more than Microsoft's attempt to simultaneously handle all its problems by using services to increase profits and eliminate software piracy, as well as finally finding a way to make MSN profitable. Win2K is still early in the adoption process. Microsoft .NET's multiplatform potential faces Java's established multiplatform support. Finally, the entire .NET strategy hinges on a favorable outcome of the pending Department of Justice (DOJ) lawsuit. Microsoft should consider whether .NET is really breaking ground for a new computing model that its customers need, or whether it's simply an attempt to sustain profitability and foil the DOJ.