Microsoft's latest announcement, called Microsoft .NET, while touted by the likes of Fortune Magazine as a huge "revolution", is really nothing but vaporware, and I think it proves that something has gone very, very wrong in Redmond.
With vaporware, you promise all kinds of features and products that you simply can't sell because you don't really have them. But .NET is worse than vaporware. In their blasé loftiness, Microsoft isn't even bothering to provide the vapor itself.
Read the white paper closely, and you'll see that for all the hoopla, .NET is just a thin cloud of FUD. There's no there there. Try as you might to grasp onto something, the entire white paper does not say anything. The harder you grasp, the more it slips right through your fingers.
I'm not saying that there's nothing new in .NET. I'm saying that there's nothing there at all.
Look at some of this:
Everyone believes the Web will evolve, but for that evolution to be truly empowering for developers, businesses and consumers, a radical new vision is needed. Microsoft's goal is to provide that vision and the technology to make it a reality. [from "Microsoft .NET: Realizing the Next Generation", June 2000].
How about this:
The Microsoft .NET vision means empowerment for consumers, businesses, software developers and the entire industry. It means unleashing the full potential of the Internet. And it means the Web the way you want it. [Ibid]
What's going on here? I couldn't find one single idea that could actually be implemented in a software product in that entire white paper. Instead of providing a list of features, Microsoft provides a list of amorphous "benefits" like this one:
Web sites become flexible services that can interact, and exchange and leverage each other's data. [Ibid]
That's a "feature" of this exciting .NET architecture. The fact that it is so broad, vague, and high level that it doesn't mean anything at all doesn't seem to be bothering anyone. Or how about:
Microsoft .NET makes it possible to find services and people with which to interact. [Ibid]
Oh, joy! Five years after Altavista went live, and two years after Larry Page and Sergei Brin actually invented a radically better search engine, Microsoft is pretending like there's no way to search on the Internet and they're going to solve this problem for us. The whole document is exactly like that.
There are two things going on here. Microsoft has some great thinkers. When great thinkers think about problems, they start to see patterns. They look at the problem of people sending each other word-processor files, and then they look at the problem of people sending each other spreadsheets, and they realize that there's a general pattern: sending files. That's one level of abstraction already. Then they go up one more level: people send files, but web browsers also "send" requests for web pages. Those are both sending operations, so our clever thinker invents a new, higher, broader abstraction called messaging, but now it's getting really vague and nobody really knows what they're talking about any more.
And if you go too far up, abstraction-wise, you run out of oxygen. Sometimes smart thinkers just don't know when to stop, and they create these absurd, all-encompassing, high-level pictures of the universe that are all good and fine, but don't actually mean anything at all.
And that seems to be what happened here.
The next generation of the Windows desktop platform, Windows.NET supports productivity, creativity, management, entertainment and much more, and is designed to put users in control of their digital lives. [Ibid]
This stuff is so abstract it's impossible to criticize. Who doesn't want an operating system that supports productivity? Great feature! Get me one of those spiffy new operating systems with the productivity feature! Problem: How exactly is Microsoft going to do it? For the last 20 years of software, productivity improvements have been gradual and incremental. Have they suddenly discovered a new chemical compound that will make their operating system more productive? I don't think they have. I think they're bluffing. FUD and vaporware.
I know Microsoft; worked there for three years. I know the kind of people that wrote this document. Bill Gates almost certainly had a very significant role in it; that's why he gave up the CEO position, so he could work on this stuff. I don't think that Microsoft created this document because they needed some vaporware. These are super-smart people.
I actually think that they earnestly think they're inventing the future, as well as they know how. They've looked at every Microsoft product, from Hotmail to SQL Server, and tried to fit them into a Bold New Vision Thing. But the trouble is that nobody there is actually inventing anything earthshaking. Which isn't surprising: not because Microsoft is stupid, which they're not, but because earthshaking new inventions are so rare and Microsoft only has a finite number of smart people. Only one person in the whole world invented Napster, and he didn't work for Microsoft. Microsoft desperately wants to believe that it can manufacture revolution, but even in the Cambrian explosion of the Internet, there are only a handful of truly revolutionary ideas per year, and the chances that one of them will happen inside the tiny world of Bill Gates and the knights of the Redmond table are vanishingly small. The chances are even smaller when you consider that a typical smart programmer working in the bowels of Microsoft on display drivers for Windows NT, who has a great idea, is probably not going to get his idea listened to.
The only thing concrete that you can discern from the white paper is that software should be a subscription service you get over the Internet, not something you install from a CD-ROM.
To a customer, getting your word processor via Internet subscription rather than via a CD-ROM might be a small benefit, but, um, no, not really. It doesn't really solve any customer problem. Getting bug fixes over the Internet? Great. I can already do that. I've been downloading patches for Microsoft products for 7 years, and now it's quite automatic. Getting new versions? What's the point, if the only thing that the new version does is make it easier to get new versions! They've hardly added a single new feature to Word for the last three releases, except that at some point, they did something bizarre to make it "easy" to position pictures, and I can never get pictures to go where I want them.
The truth is, Microsoft noticed way back in 1991 that an increasing amount of their revenue came from upgrades, and that it's hard to get everybody to upgrade, and they've been trying to get their customers to agree to a subscription model for buying software for almost a decade. But it hasn't worked because the customers don't want it. Microsoft sees .NET as a way to finally enforce the subscription model which suits their bottom line.
It almost seems as if Microsoft .NET doesn't fill a single customer need, it only fills Microsoft's need to find something for 10,000 programmers to do for the next 10 years. We all know it's been a long time since they've thought of a new word processing feature that anybody needs, so what else are all those programmers going to do?
Old joke: A man goes to the psychiatrist. The shrink shows him a picture of a bird and says "What does this make you think of?" The man says: "Sex." The shrink shows him a picture of a tree. "OK, what does this make you think of?" The man says: "Sex." Picture of a train. "Sex." A house. "Sex."
"My God!" says the shrink. "You're obsessed with sex!"
"I'm obsessed with sex!?" says the man. "You're the one who keeps showing me dirty pictures!"
Ya see, the bright side of vague documents like the .NET white paper is that they are a kind of Rorschach test. People read them with preconceived ideas, and since the document is so vague, they think that Microsoft is reiterating their ideas. Dave Winer, president of UserLand software, has many interesting, innovative ideas about software. When he read about Microsoft .NET, he assumed that Microsoft was finally recognizing the same ideas that he'd been talking about for two years. Dave, you give them too much credit. They are completely clueless compared to you. They are playing the trick of psychic hotlines and newspaper horoscopes: by feeding you cloudy, meaningless generalizations, you fall into their trap of thinking that they read your mind. "Today the planetary alignment is such that you will take a big step forward to achieve your goals." The difference is that Dave has real, concrete ideas that can translate into real software, while Microsoft is still in the kind of lalaland they were in 6 years ago when they were talking about how "Cairo" would provide "Information At Your Fingertips," a vision that the Internet fulfilled and Cairo didn't.
So hopefully, all this meaningless blah blah will actually get somebody's creative juices going (as it has at UserLand) and lead to some real innovations. But these innovations are probably more likely to come from outside Microsoft than inside.
Since this article originally appeared a lot of people have written in to say that they have the .NET SDK! It's not vapor! It's "real!"
Well, uh, yeah. What's in it? There's SOAP, a technology basically invented by Dave Winer based on XmlRpc, which I personally baked into the Juno signup process about two years ago. Microsoft is a little late to that ballgame. There's a programming language, C#, which is just Microsoft's way of saying that if they can't take over Java, dammit, they're going home and playing with their own toys. There are new versions of ADO, ASP, and some other stuff... all good stuff, but just incremental improvements. There's nothing revolutionary here, Fortune Magazine. If Microsoft's marketing wasn't working in overdrive, we'd have all this stuff anyway, and nobody would be pretending that it's some kind of computer Nirvana on the horizon.
This is the way Microsoft works: they have a product team for each product, and every year or two, that team ships a new version of their software. That's all. What we have here, ladies and gentlemen, is a pure marketing team that looked around at all the upcoming releases, decided they need a "theme" to make Microsoft look like Big Revolutionary Innovators, and ordering everyone to call their next thing ".NET". When you work at a place like Microsoft, there's nothing more frustrating than when the marketing people take over: read this response to my article from a Microsoft insider.
You’re reading Joel on Software, stuffed with years and years of completely raving mad articles about software development, managing software teams, designing user interfaces, running successful software companies, and rubber duckies.