I've received several reports from sources in and close to Microsoft that suggest the software giant is getting ready to walk away from .NET, its troubled attempt to move the computer industry from monolithic desktop applications to subscription-based software services. In this issue of .NET UPDATE, I'll examine the long, convoluted history of the .NET initiative, Microsoft's many failures to get customers, developers, and partners to adopt the technology, and the various ways in which the .NET vision has changed over time. Then, I'll discuss the rumors I've heard and the ramifications these potential changes could have on .NET.
As I described in the first-ever issue of .NET UPDATE, published in January 2001, the .NET initiative began with the "Internet Tidal Wave" memo Bill Gates sent to Microsoft employees in 1995. Gates could sense that the computing industry was changing rapidly because of the Internet, and he charged the troops with adapting to this change. Microsoft would meld Internet capabilities into all its products, Gates said, and during the next several years, the company did just that. Microsoft eventually decided it would need to redesign its entire product line to embrace the standards-based technologies that would underlie Next Generation Web Service (NGWS), later (and wisely) renamed .NET.
The goal for the company was to transition to a subscription software model, similar to cable TV subscription services. One of the problems with Microsoft's sales models is that the company has peaks in its earnings reports that are tied to big product introductions, and valleys that occur when existing products have matured or the company has replaced them with lackluster revisions. To smooth its earnings curve, Microsoft embarked on a controversial (but, at the time, legal) decade-long earnings restatement project, in which the company put aside portions of its earnings in each peak quarter and applied the difference to quarters in which the company didn't perform as well. The result was an unnaturally smooth earnings growth curve, in which the company experienced double-digit growth, year over year, throughout the 1990s. Unfortunately for Microsoft, earnings reporting laws changed. Federal regulators began to examine the company's books, and Microsoft had to change the way it reported earnings.
Although the company knew it couldn't maintain its historical growth rate, it was still eyeing ways in which it could smooth out revenues and avoid the bizarre daily stock-price changes that affect most high-tech companies. One obvious way, of course, was to move to the subscription software model it had so long desired. Instead of customers purchasing Microsoft Office once every 3 years for $400, for example, perhaps the company could convince customers to subscribe to an Office service for $100 a year. Like a gigantic aircraft carrier turning slowly at sea, Microsoft moved to implement this plan. On the enterprise side, software licensing had already evolved to a subscription-like plan, so Microsoft met little resistance among its business customers until it so egregiously changed the licensing fees in Licensing 6.0 that customers revolted and the company finally had to make concessions to lower the cost.
Consumers represented a different problem for Microsoft's subscription-service scheme. Most people think that when you buy a software product, you own it--Microsoft's obscure and little-understood licensing terms notwithstanding. Explaining to an individual that the software he just purchased for $100 wasn't really his to keep and continue using proved to be a challenge that even Microsoft's unlimited marketing budget couldn't overcome. In test markets for subscription software--in particular, Office XP--consumers universally panned the idea, and the complaints compelled Microsoft to eventually provide lifetime licenses to those who had purchased a 1-year subscription fee.
Developers were another obstacle to subscription services. Although Microsoft successfully moved all its development efforts to the new .NET Framework and to updated programming languages such as Visual C# and Visual Basic .NET, the company wasn't able to hide a glaring problem: You can't easily port existing applications and services to .NET, if at all, so the environment is good only for new development. That scenario might be fine in the go-fast world of Internet development and hosting, but it doesn't help developers of mature applications, such as word processors, or businesses that aren't ready to jump on the next big thing simply because it exists. Developers almost universally praise the quality of the .NET Framework and associated technologies, but then most developers also have to maintain old code written in comparatively ancient programming languages. They're like car enthusiasts forced to drive mid-80s Ford Escorts to work.
Finally, Microsoft's .NET initiative marketing message was convoluted. From Microsoft's most senior executives to the lowliest employees (they're in marketing, by the way), the message was clear: .NET is the future. The company changed the names even of products that had little to do with .NET. I almost expected the company to announce a corporate name change to Microsoft .NET. But customers were confused by this message, particularly the part about how the best was always yet to come. And Microsoft began backing off from the .NET branding strategy by announcing the .NET Connected Logo program and dropping the .NET moniker from virtually all its products. Just this week, the company renamed its .NET Enterprise Servers to Windows Server System. I haven't seen a retreat like that since the company touted Bob as the future of user interfaces.
So now it's April 2003 and I'm hearing that .NET is dead--that Microsoft will continue downplaying both the name .NET and the technologies behind it. You can find hints all around that this ".NOT" strategy might be happening right now. The 64-bit versions of Windows Server 2003 (once called Windows .NET Server, by the way) contain absolutely no .NET bits at all: No .NET Framework and no ASP .NET. Exchange Server 2003, the company's next major messaging server, contains no .NET. Office 2003, the premier office productivity suite, contains XML functionality only in the high-cost business versions and contains few native .NET features. In the biggest year ever of new product introductions from Microsoft, few if any of its products promote .NET, its supposed vision for the future.
Is .NET dead, or is Microsoft simply going through yet another round of growing pains as it attempts to figure out just what, exactly, its customers want? Frankly, I'm as confused as you probably are.