My first thought on hearing last week that Microsoft has dubbed its new technology scheme ".Net" was, There they go again.
Longtime Internet users know that ".net" is the top-level domain name (like ".com") originally intended for public network resources. It's true that the label has long since ceased to mean much beyond providing an alternative for folks who can't get the ".com" address they want. Still, it seemed to take considerable hubris for Microsoft -- a company presently in some trouble with the law -- to appropriate such a public-spirited label and privatize it as a new part of its brand identity.
But the .Net label (which has replaced the unwieldy "Next Generation Windows Services" moniker) seems more a mediocre marketing device than anything else. If you actually point your browser to www.microsoft.net you don't get Microsoft's barrage of information on the new .NET program, you just get a duplicate version of the www.microsoft.com homepage.
It's understandable that Microsoft would be struggling with how to market its latest technology mega-initiative: It's not easy to get your head around just what .Net is and what it means. When Microsoft launched Windows in the 1980s, it was easy to say, "It's a graphic interface -- kind of like the Macintosh." When Microsoft turned itself toward the Internet in 1995 with Internet Explorer, it was easy to say, "It's a Web browser -- kind of like Netscape." Unlike these previous ventures, .Net doesn't appear to be a me-too project; it's not kind of like anything. Whatever its strengths and weaknesses, it is a Microsoft baby, not an adopted child.
But, still, er, what is it? Microsoft's leaders themselves had trouble defining the ".Net vision" at the rollout event last week. There was a lot of talk about "the cloud" -- a network engineer's term meaning "the whole mess of stuff that's out there somewhere on the Net" -- and the cloudiness seemed to seep into the language every time someone tried to explain .Net to the crowd. Here, for instance, is Microsoft CEO Steve Ballmer attempting to clarify:
.Net represents a set, an environment, a programming infrastructure that supports the next generation of the Internet as a platform. It is an enabling environment for that ... .Net is also a user environment, a set of fundamental user services that live on the client, in the server, in the cloud, that are consistent with and build off that programming model. So, it's both a user experience and a set of developer experiences, that's the conceptual description of what is .Net.
So ... it's an environment and an infrastructure and a platform and a set of services and a whole bunch of different experiences. 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.
Still, it's possible to read Microsoft's "White Paper" and plow through the executive presentations and garner some sense of where Microsoft wants us to think it's heading and where it hopes to take the rest of the industry. At heart, it's clear, .Net is the latest and probably most ambitious effort ever on the part of a major technology company to achieve the holy grail of universal integration and interoperability: If only all your hardware and software, all the information you receive and all the data you generate, could work together in harmony, what a wonderful world it would be!
Since Microsoft's PR machine has been unable to distill the explanation of .Net into a simple set of bullet points, let me oblige. (I won't even send Bill a bill.) Here's how Microsoft sees the roadmap to this techno-utopia, and some potential problems each step of the way:
1) Everything moves to the Net. All your files and information will sit on servers somewhere "in the cloud," so you can access them from anywhere. But: You'll need some pretty trustworthy guarantees of privacy and security before you'll be happy with such an arrangement. Microsoft promises to be good, but its record is anything but.
2) Goodbye, packaged software; hello, subscription services. Microsoft has long yearned to foil software pirates, solve upgrade problems and keep closer tabs on its users by moving us all from the "buy a box with a license" model of software purchasing dominant for the past 20 years into a new era in which we pay monthly fees to Microsoft to use its software. .Net would fulfill this vision. But: Who wants to pay more for software in an era when more and more services on the Net are free?
3) Pick your device. Once your data is "in the cloud" and your software is on a pay-per-use meter, Microsoft promises you will be able to use that data and software on the device of your choice -- not just the PC but cellphones, newfangled "tablet" computers and anything else you want. But: You'll probably need to buy a whole lot of new .Net-compliant devices if you want any of this to work.
4) PCs still rule. At the same time, Microsoft insists that the PC will be the "platform of choice" (Intel can relax) because you'll want lots of "intelligence" and processing power at the user's end of the Net pipe to take full advantage of all the neat new tricks .Net will enable and use the Web in a truly two-way fashion. But: Can Microsoft have it both ways -- serve a world of new devices but still cling to the primacy of the PC?
5) XML ties everything together. XML is a software scheme for "metadata" -- data that describes other data. XML allows otherwise incompatible programs to "know" that, say, a pile of numbers is a set of prices or a list of dates and trade that information in a useful way. XML is an open standard, like the HTML upon which today's Web is built and, theoretically, if enough different companies adopt it in a consistent way, it could provide a solid and functional foundation for the grand schemes Microsoft is proposing. But: Microsoft-watchers are wary of any sign that the company's "embrace and extend" tactic might subvert the universality of XML in a proprietary direction (as Microsoft has been accused of doing with its approach to Sun's Java language).
One can only applaud Gates, Ballmer and company for their ability to keep their eye on the big picture and the long haul in the face of the gargantuan distraction of Microsoft's antitrust-suit defeat. Every big technology company today trades in dreams and visions, but no other outfit has been able to come this close to offering an even partially credible plan for delivering on them.
Still, there's one big problem with .Net that I think is likely to prove an Achilles' heel. Gates and his team made a point last week of bowing in the direction of Napster as an example of how the Internet is moving toward many-to-many interactivity, where every computer connected can be both server and client.
That's true enough -- but Napster is also an example of how today's Net generates its own software winners in bubble-up-from-below fashion. Napster came pretty much out of nowhere to take the software industry off guard -- just like similar left-field surprises in the past, including the sudden popularity of MP3 music files, the massive viral spread of instant messaging and the eruption of the Web browser itself.
Microsoft's gamble on XML as the Net's next-generation lingua franca makes bold sense. But the company's plan to be all things to all people on all devices smacks of a lack of focus.
While Microsoft is fumbling around trying to get every piece of its giant universal everything-machine to work together, the next Napster developer will be inventing some specific cool tool that works today and captures the fancy of millions. While Gates places his chips all over the table, others will place their bets on the winning squares -- and quite possibly walk off with the game.
Of course, at that point Microsoft can still revert to Plan B: What it hasn't built, it can always buy.