Programming Windows: Microsoft Announces .NET (Premium)

Judge Thomas Penfield Jackson followed up the early April 2000 release of his damning Conclusions of Law in U.S. v. Microsoft by moving the case forward at a torrid pace.

First, the Judge astonished Microsoft and onlookers by holding a short, one-day remedy hearing in late May rather than a protracted, multi-week hearing. Then, on June 7, he issued his final judgment, in which he ordered that Microsoft be split into two separate companies and be held to strict business conduct restrictions for several years.

Microsoft appealed that ruling, of course, and the U.S. Court of Appeals agreed to expedite the schedule given the gravity of the case. Sensing that the appeal could drag out for years and potentially reverse key facets of the verdict, the U.S. Department of Justice then petitioned the Supreme Court to certify Jackson’s ruling, overriding any decisions that the appellate court might have made.

Inside Microsoft, executives and employees alike were shocked that Jackson had moved to break up the firm. But Jackson surprised everyone again by deciding a week later that any remedies in U.S. v. Microsoft would be stayed until the appeals process was completed. And he, too, petitioned the Supreme Court to hear the case immediately.

Microsoft’s antitrust troubles are historically interesting. But the timing of these actions impacted the firm’s planned announcement of an ambitious new platform, originally called Next Generation Windows Services (NGWS), but now called .NET (“dot NET”), that would span Windows, the web, and a coming wave of “full-screen and small-screen devices.” Connecting these endpoints would be new kinds of software services that would run across the Internet.

Microsoft’s .NET platform, in short, would deliver on a vision called software as a service.

Microsoft co-founder Bill Gates had been focusing on .NET since before he handed over the CEO reins to college buddy Steve Ballmer and assumed the mantel of Chief Software Architect for the firm. Indeed, it was a welcome distraction from Microsoft’s antitrust troubles. Gates being Gates, he started taking credit for .NET both internally and then externally. But the effort had begun far from his prying eyes a few years earlier when it became obvious to the firm’s platform architects that some combination of an internal Java clone and the next generation of COM software could create a truly sophisticated platform for the future.

Gates wanted to announce .NET in early 2000 to assure Microsoft’s customers, partners, and competitors that the antitrust trial hadn’t distracted him or the firm from leveraging and expanding Microsoft’s leadership role in the industry. And that him stepping down as CEO wasn’t a defeat but was rather a signal that Gates was taking a more hands-on role in determining Microsoft’s future: Gates handed over the CEO role specifically to shepherd .NET to release and to transition all of Microsoft businesses, including Windows, to this new platform. But events kept conspiring against him.

After a four-month mediation process finally collapsed, triggering the back-to-back releases of Jackson’s Conclusions of Law and final judgment, Microsoft scheduled the .NET announcement for Gates’ keynote address at the firm’s TechEd 2000 trade show on June 5, 2000. But when Jackson only gave Microsoft one day for a remedy hearing, the company’s lawyers correctly surmised that the judge’s mind was made up and that he would most likely call for a breakup. And they didn’t want that cataclysmic news to overshadow .NET. So they rescheduled for another tradeshow, called Forum 2000, that was set for later in the month.

It is somewhat fascinating, today, to watch a recording of Gates delivering a .NET-less keynote at TechEd 2000, one day before Jackson issued his final ruling and breakup order. He only hinted at the future to come, noting that Microsoft had created an open, standards-based interoperability protocol called Simple Object Access Protocol (SOAP) for exchanging data over the Internet using the Extensible Markup Language (XML). He also delivered a “call to action” to developers, and talked up Windows DNA 2000, which had already been pushed aside internally for .NET, and some high-level features that were coming to the next version of Visual Studio. But it was a mostly a bland placeholder for the blockbuster announcement to come.

And it did come, finally, on June 22, 2000.

“A lot of what you’re going to hear about today are things that we’ve been working towards for a long time,” Gates started, after a joke about his new job title. “I’d even go back to vision efforts like the ‘Information At Your Fingertips’ work that we did back in 1990. [But] there’s a big difference between what we’re talking about today and that vision. The difference is that the underlying technology and the ability to actually make all of those things concrete is now quite clear, quite clear because of the industry progress over the last few years, quite clear because of the investments we’ve made in basic research over the intervening years. And so what we’re going to be talking about today is something that is very concrete for us, even though it rolls out over a many year period.”

What Gates announced, however, didn’t seem particularly concrete. He talked about an evolution to a truly digital world that would encompass photos, videos, note-taking, business transactions, and knowledge workers, a world in which the PC would still be very important, but would no longer be the only device. It was all centered around the Internet, which was both simple to use and increasingly pervasive, but also browser-based. The Internet, he said, would need to evolve to become more interactive, more automatic, and even more interconnected. Microsoft would eliminate so-called “islands of data,” things like browser favorites, documents, and other files were locked on a particular PC, PDA, or other device, and were hard to manage and move around.

How it would do so was unclear. With its previous platforms, such as MS-DOS and Windows, the hardware target and business case were both obvious. And when the Internet emerged as a potential threat to the PC, Microsoft simply embraced it in its own platforms and created new applications and services to take advantage of its unique capabilities. But .NET? Microsoft’s .NET was all over the map. It was vague and confusing. And it wasn’t clear, exactly, what it was that Microsoft would deliver. Or where. Or when.

According to Gates, .NET was at both “evolutionary,” a natural extension of the work Microsoft was already doing, and a “bet the company” initiative, a favorite and perhaps overused term of his.

As Gates described it, .NET would be everywhere, not just on PCs. It would also run in the Internet, “out in the clouds,” as Gates put it, on websites, and on devices of all kinds, including some that hadn’t been invented yet. It would use a document format called XML as its lingua franca, ensuring compatibility and extensibility, and that data would be interchanged using an open standard protocol it had created called SOAP (Simple Object Access Protocol).

“XML will transform productivity tools,” he explained. “For example, the spreadsheet will be changed by XML. The database will be changed by XML. The programming languages themselves will be changed. In fact, there will be language innovation in every popular programming language around XML. So it’s a very profound change, even more profound than the change HTML brought to the world of presentation.”

To that point, Gates hadn’t actually uttered the term “.NET,” nor had he referred to it by its previous and groan-inducing moniker NGWS. But now the time had come.

“Microsoft is announcing today that our efforts as a company are going to be focused around this next-generation platform,” he said. “We call it .NET. That’s a term you’ll hear a lot today, and it encompasses more than one thinks. It encompasses the idea of putting rich code onto every one of these clients. It encompasses the idea of having services across the Internet that help every one of these clients. And then there’s a new generation of servers that can work together providing those services that can either run inside of corporations, can run inside an ASP [application service provider] or can be run by the software creators themselves in order to allow all the users to get at that service capability.”

Gates said that .NET would bring important breakthroughs in user interfaces; it would bypass the limitations of HTML that Microsoft had run into when it briefly incorporated this web-based technology into Windows. And it would introduce the notion of a service-based “information agent” that would work on each user’s behalf, a first take on what would become digital personal assistants.

“.NET is a very broad thing,” he said. “There is code in Windows. There’s code up on the Internet. There’s code running in all the different devices that connect up here that implements access to the .NET capabilities. There’s quite a spectrum of capabilities there. You can actually get at these services with a device that doesn’t have anything special. If you simply have a browser, you can connect up and get to the .NET services. But it’s far richer if you have a device that actually has the .NET code down on it.”

To everyone in attendance, the .NET announcement immediately evoked Microsoft’s past embrace of the Internet. But Gates wanted to distance .NET from that effort, and not just because they had gotten the firm in trouble with antitrust regulators.

“What we’re talking about today is far more ambitious than that,” he continued. “What we’re announcing today is more analogous to the announcement of Windows than it is to our Internet Strategy Day back in 1995. This is a new platform. This will affect every piece of application code that gets written. This will redefine the user interface, what you see on the screen and how you interact, as much as the transition from DOS to Windows did. And so there’s no Microsoft product that isn’t touched by this activity.”

The scope of .NET was hard to understand at the time, especially since Microsoft had no deliverables for customers, no code for developers. But Gates tried to frame the company’s plans by explaining how services we associate with Windows or a particular PC—like storage, the clipboard, and applications—would be moved into the cloud. He spoke of Microsoft’s plans for “building block” services, like Passport, which would bring the identity infrastructure in Windows to the cloud. But again, it was all so vague. He talked about how the user interfaces that Microsoft and application developers targeted would no longer be limited by the screen resolutions of PCs—“640 x 200, then 640 x 480, then 1024 x 768,” as time progressed—but would need to adapt to the vast variety of form factors, screen sizes, and device types that .NET would enable.

The .NET platform would also enable new “natural interfaces,” including touch and pen on tablets, speech recognition, natural language processing, and handwriting recognition. Jeff Rainier joined Gates on stage to demo early versions of two so-called “.NET user interface elements,” smart tags and type-in line.

Smart tags would recognize names, company names, phone numbers, addresses, and other information in documents and automatically tag them that the user could click the tag and access actions related to that information. “Smart tags work in mail messages, but they’re everywhere in the .NET platform, and they work pretty much the same way,” Rainier noted. “Smart tags can also be personalized. This way users are able to specify what words should be smart tags, what categories they should fall into and what actions appear on that menu.”

Type-in line was an early form of the interaction that we now have with digital assistants, except that it worked via a command-line interface in which you typed questions and the .NET agent would answer them or, if necessary, ask follow-ups to resolve any ambiguity. “Imagine for a second using your cell phone to call in and get high priority mail messages, maybe make dinner reservations or even check for the latest news, all from your .NET server,” Rainier said.

In a second demo, Brian Shafer showed off a prototype .NET phone interface in which he signed-in using Passport for the first time. “When I log on, a lot of things are going to happen,” he said. “First, all the relevant information from my personal area on the .NET server is coming down to the device, all those phone numbers, my schedules, my appointments, et cetera, even my e-mail coming down to the device. I’m also getting my personalized information being sent down as well … The .NET network has actually sent down all of my information to this naked phone wirelessly based on my preferences. So no matter whether I’m online or offline I have immediate access to my information my way.”

The phone demo was important. It showed a world in which any device could sync directly and wirelessly with a user’s personal data through the cloud without needing to use a PC as an intermediary. And it established that .NET was not just for the PC, and that sophisticated .NET apps and services could run on any modern device.

As important, Burt Keylie demonstrated how .NET would enable a new class of tablet computers, which Microsoft called the Tablet PC. This form factor was personally championed internally by Gates, who saw it as the future of the PC and something that would be “wildly popular.”

“Today is the first demonstration of what Microsoft calls our vision for the Tablet PC,” Keylie said, showing off a prototype tablet running Windows 2000. “This is the device that combines the visual qualities of a magazine with the handiness of a paper notebook and all the power of a PC.”

The Tablet PC offered touch-based zoom, virtual page flipping in e-books, and a new display technology called ClearType that used sub-pixel rendering to dramatically improve the quality of on-screen type and give it the feel of words on paper. It provided an e-book store through Microsoft Reader, which used Microsoft Passport for authentication and a new digital rights management (DRM) system. Most impressively, it automatically performed handwriting recognition in the background.

Finally, Gates noted that .NET would also run on the server, either inside of corporate data centers or in the cloud via ASPs. Companies could host their email, or whatever, internally or allow an outside firm to do that for them. Or mix and match. It was their choice.

Given the breathtaking level of capabilities that Gates hinted at, and the breathtaking lack of details, many were obviously curious about how and when .NET would come to fruition. Gates said that Microsoft’s existing products—Windows 2000, SQL 2000, Exchange 2000, BizTalk 2000, and so on, were already poised for the .NET era thanks to their support for XML.

But the first wave of real .NET products would begin arriving sometime in calendar year 2001. At that time, Microsoft planned to release a product he called Windows.NET version 1, which would be “not a 100 percent implementation” of .NET, but rather just the foundational pieces. “The full net user experience comes in a major release that will be at least two years off, because of the ambition that’s in there,” he added.

Visual Studio 7, he said, would be available in preview sometime in 2000 and would include “many key elements of the .NET platform.” Office was in a “future timeframe,” he added. “It will be more than two years before all the different services are out there.”

“We’re very excited about it,” Gates concluded. “You could say it’s a bet-the-company thing. We are putting our resources behind .NET because we believe in this and so our entire strategy is defined around this platform. We are working with a lot of partners. [And] we’re very excited with the reaction they’ve had as we’ve gone through this new strategy.”

And that was it.

In a press release, Microsoft provided a few more details, noting that the .NET platform would include a .NET user interface that was based on a “new Universal Canvas XML-based compound information architecture, natural user interface, integral digital media support, privacy-enabling technologies for management and control of personal information, and the new Dynamic Delivery system for secure and seamless installation, updates, roaming and offline operation.” The .NET infrastructure and tools would span Microsoft’s servers and Visual Studio development tools. And those .NET building block services would include Identity, Notification and Messaging, Personalization, Schematized Storage, Calendar, Directory, Search, and Software Delivery. It also mentioned a few specific services, including Passport, the MSN Hotmail web-based e-mail service, MSN Messenger, and MSN Communities.

As for devices, .NET would ship in new versions of Windows for PCs, “maintaining and extending the PC’s role as an optimum way to take full advantage of the Internet.” But it would also work with any XML-capable device, with full .NET services being provided on “non-PC devices such as Pocket PCs, set-top boxes, cellular phones, and game consoles.”

The press release also formally named Windows.NET, MSN.NET, Office.NET, bCentral for .NET, and Visual Studio.NET, and noted that Microsoft was working on unnamed “premium” .NET consumer services related to “entertainment, games, education, and productivity.”

Reaction to the announcement was, by and large, confused. Those who didn’t understand the technology—like the mainstream press—generally seemed impressed by the “vision.” But more technical onlookers were skeptical.

“Microsoft’s latest announcement, called Microsoft .NET, while touted by the likes of Fortune Magazine as a huge ‘revolution,’ is really nothing but vaporware,” pundit Joel Spolsky noted at the time. “But .NET is worse than vaporware. In their blasé loftiness, Microsoft isn’t even bothering to provide the vapor itself … for all the hoopla, .NET is just a thin cloud of FUD. There’s no there there.”

“.NET an environment and an infrastructure and a platform and a set of services and a whole bunch of different experiences,” Scott Rosenberg wrote in Salon. “This is the classic language of vaporware: Software products that do not yet exist but that companies feel compelled to announce in an effort to cow competitors and wow investors.”

Now, it was up to Microsoft to explain itself more clearly and to deliver on the vision it had described. It would prove to be a daunting task. And there were many details to come.

Gain unlimited access to Premium articles.

With technology shaping our everyday lives, how could we not dig deeper?

Thurrott Premium delivers an honest and thorough perspective about the technologies we use and rely on everyday. Discover deeper content as a Premium member.

Tagged with

Share post

Thurrott