Windows has finally crossed the line, and there's nothing Microsoft can do about it. It's the beginning of the end. It's a pattern that I've experienced first hand. You start with something excellent, and in the service of your customers you try, try, try to keep it moving along. It succeeds for a long time. It becomes number one. But, you become so involved in the idea of the product that you forget about what it's like to be a customer. You assume that it must be good because that's what the market share tells you.
Then a line is crossed. You know that something is wrong. Your engineers can feel it. There's a malaise in the air. But, nobody says anything. At the lunch table, you read PC Week's scathing criticism. People stare around the room, some even laugh or scoff. Most say nothing. You go back to your work, you immerse yourself in further enhancements to your product. You convince yourself everything is OK. You look at competitive products only for purposes of punching holes in their strategy. You find the holes. You reassure yourself. Everyone smiles.
Repeat until fail.
I recognize the pattern. That's where Windows is right now.
I just figured that out. I think it's the Windows Vista slip that triggered my realization. The NYT Why Is Windows So Slow? article almost literally describes the phenomenon. It was also the Scoble debacle that seems to have finally ended with Robert's Better Mail than Jail posting, where he realizes he shouldn't have been so defensive. That is the leak in the dike. I see it on other Microsoft blogs too. I don't want to single Robert out, but I think Robert, as well as others, feel the malaise I described above. The "unspoken truth" that something, though no one can say what, is wrong.
In 1988, I was fortunate to be the archtect of The dBASE Professional Compiler, a product that was never released. Remember dBASE? From Ashton-Tate? You don't know what I'm talking about do you?
In 1988, dBASE had 63% market share of the database market. That's not just the PC database market, we're talking about the entire database market. Ashton-tate was on top of the world, and knew it. My company was designing the compiler, so we weren't part of Ashton-Tate, but we worked closely with all the developers. They were motivated, interested in their product, their customers, and confident they had the best solution for everybody. Just like Microsoft today feels about Windows.
But, we were a small company of innovative engineers. We looked at dBASE more objectively and saw clearly that dBASE was a mish-mash of features which had been built up one layer at a time until the whole no longer made sense. Sure, we were doing the compiler. It was an important problem to solve, and there were many people in the market who needed it. It was a good thing to do. But we knew what we were doing. We knew we were creating a compiler for a language that should, by all rights, be obsolete. At Ashton-Tate, such words were heresy. Only rarely did we mention how we felt, and when we did, we knew we had stepped on some emotions.
There were some brilliant people at Ashton-Tate, and I was fortunate to know many of them. When talking about dBASE, they were proud of their product, and it was the size of the customer base that was the de facto definition of why dBASE was a good product. This is part of the pattern. We are number one! Our product clearly must be the reason.
As I got to know people during that project, eventually there was more trust. Engineers at Ashton-Tate knew something was wrong. There was almost a sadness in discussions about how to fix it, as if they knew it was unfixable. dBASE had become a huge albatross, a product that had years of features heaped on top of an architecture that was never designed to handle such a load.
By 1989, dBASE's market share dropped to 43%. That's a 20% drop in just one year. When Microsoft Access came out in 1992, dBASE was dead. Crashed to the ground in no more than 4 years.
Compatibility. That's what killed them.
dBASE had to be upward compatible at any cost, even if it meant creating extremely bloated and arcane features to support such compatibility. Why? Because of the market. The market was all Ashton-Tate had. With over 60% of the database market, and with the hint that the product may be far from perfect, compatibility became the holy grail. Compatibility assured Ashton-Tate that their market would "come along", that the effort to switch would remain higher than the effort to keep using the product.
Today, I saw the clear signs of the pattern in Microsoft's behavior. It's clear that Vista is a struggle. Regardless of whether the code rumors are true (they probably are not), the product is slipping. Worse, as an engineer I can read between the lines in the New York Times article:
Several thousand engineers have labored to build and test Windows Vista, a sprawling, complex software construction project with 50 million lines of code, or more than 40 percent larger than Windows XP.
I can't tell you the feeling of deja vu I had when I read that. 40 percent larger than Windows XP? There is no possibility that Windows is in good health. NONE. They're adding, but they're not removing. They're not moving forward, they are stuck so deep in the muck that every step is painful. Dan Farber at ZDNet sees the same desparate quandry for Microsoft. Good engineering does not result in products such as this.
Every single aspect of this matches the dBASE experience. Microsoft is defensive about new features, with Brad Goldberg saying "The perception that nothing new has come out of the Windows group since XP is just so far from the truth". When they talk about things that are new, the list is almost laughable, consisting of "Tablet PC versions" as proof of Microsoft's continuing "innovations". I dug up an old review of the newly-released dBASE IV by John Pochodowicz. It's a kitchen sink of sad additions which lead to the unbelievably bloated dBASE IV product which really had only one thing to offer: Compatibility.
I'm expecting Vista to be close.
Can Microsoft maintain their lead with Windows? I don't think so, though it may be a slower death. Microsoft isn't as bad off Ashton-Tate was. Their products are better-built than dBASE was, and Microsoft has more market-share, so, as a corporation, they can remain blind longer. But the only answer for Microsoft will be to finally throw away the shackles of compatibility. Microsoft has more time than Ashton-Tate did, and a lot depends whether they use it wisely.
Microsoft knows this. NYT pointed to an internal memo by Ray Ozzie, chief technical officer, who said, "Complexity kills. It sucks the life out of developers, it makes products difficult to plan, build and test, it introduces security challenges and it causes end-user and administrator frustration."
Mike Benson was Ashton-Tate's most brilliant architect. He knew what needed to be done, and talking to him at the time was a breath of fresh air. But, Ashton-Tate had crippled his ability to act by isolating his thinking in a "new products" division. His work never came to light.
So Ray Ozzie knows, just like Mike Benson did. But, from the behavior of the company, the politics of compatibility is winning. The flawed belief that compatibility will assure market share has been disproven time and time again.
I was just lucky enough to have been there once, and know the pattern.