A couple of weeks ago, Miguel de Icaza gave an interview where he discussed his fear of XAML’s massive wonderfulness (XAML, if you don’t know, is Microsoft’s next-generation HTML-killer — Windows-like apps on the Web, basically). This kicked off Fear XAML Week, in which everyone and his brother made plans for the apocalyptic end of the Interweb itself.
You know, three years from now I could be collecting unemployment because of XAML. But I’m not betting on it. In fact, I am betting that XAML will have maybe about as much uptake as Flash currently has. Why? Because Microsoft is no longer fighting competitors in the marketplace — it’s fighting human nature itself. And human nature is dead lazy.What is Microsoft’s biggest competitor? Old versions of its own programs. Far more people use Win98, IE5, and Word 97 than the next biggest product in each category combined — certainly more than use any Apple or Linux product. And why is Microsoft their own toughest competition? Because lots of people don’t feel a need to upgrade to the latest and greatest products, but stubbornly cling to their “good enough” circa 1998 machines instead.
I see this same resistance to change in webdev itself. Lots of people spent an incredible amount of time and energy learning how to build websites — up to about 1998 or 1999. Then, with the dot-com crash, the vast majority of those people just… stopped. They can’t be bothered to learn about CSS, XSL, or anything else that wasn’t supported by the earliest versions of 5.0 browsers. A huge percentage of websites now basically use a subset of HTML4 with minimal CSS1, and don’t feel any particular need to go beyond that. A lot of them are businesses which have found out that their customers use the site for very specific tasks: finding out the phone number and location of the business, or checking some specific piece of information, or browsing through product data. Does any of this require 3D graphics and GUI-like widgets? Does any of this justify the cost and risk of moving to a Microsoft server platform and requiring your customers to use Longhorn clients?
I’ve spent a lot of the past couple of years being excited about DHTML, pubsub, web services, and a lot of other standards-based technologies. And I’m acutely aware of how few people, even those deeply immersed in the web, know or care about any of this stuff — and how many fewer can justify a major rewrite in their budget. Until a couple of months ago, doing any non-maintenance web work was a luxury that could be afforded only by a very very few companies. Even sites like Ebay or financial services firms that have made a big investment in the web may be locked into statis by the fact that they’ve finally managed to train their users to interact with a very specific UI, and they can’t go making changes to that user experience. So if people can’t see any point in having superfly widgets via DHTML — a technology that has been available for years — what’s going to suddenly make them think they need a gut rewrite in XAML?
Now of course there will be some companies that do need rich clients, and are willing to put up with the nightmare that a 1.0 Microsoft release invariably turns out to be. And there are a lot of websites that are probably due for some freshening sooner or later, which may coincide with XAML’s release. But remember: Flash and Acrobat and Real became popular because they had very easy install processes and the clients were free. XAML isn’t like that — you have to already have the client installed before you can see it at all.
I’m actually quite excited to see how the whole Longhorn story plays out. It’s by far the biggest risk Microsoft has ever taken — they’re not just building a whole new OS and apps without backward compatibility, but all the components seem to be based on new and untried technologies. It’s not like *nix, which has always (for better and worse) built carefully on a base of what has gone before. If it works out, I’ll have to take my hat off to Microsoft’s powers of innovation. But if it doesn’t… even mighty Microsoft could end up biting off way more than it can chew. It’s already stomped on most of the software industry and the Federal government — but now it’s taking on an entirely new and risky product, its own old products, the web itself, and human nature. I don’t see any company winning against that hand; so I’m taking a pass on Fear XAML Week.