Microsoft, Good Standards Citizen

5 March 2008 by Matthew Gertner - Category: Rants and Ruminations

In response to widespread outrage at their decision to make the Internet Explorer 8 handle web pages by default in the same broken way as IE7, Microsoft has now announced that they have seen the light:

Our initial thinking for IE8 involved showing pages requesting “Standards” mode in an IE7’s “Standards” mode, and requiring developers to ask for IE8’s actual “Standards” mode separately. We made this decision, informed by discussions with some leading web experts, with compatibility at the top of mind.

In light of the Interoperability Principles, as well as feedback from the community, we’re choosing differently. Now, IE8 will show pages requesting “Standards” mode in IE8’s Standards mode. Developers who want their pages shown using IE8’s “IE7 Standards mode” will need to request that explicitly (using the http header/meta tag approach described here).

JavaScript expert John Resig points out that Microsoft was facing a legitimate and non-obvious tradeoff between respecting web standards and not breaking existing web pages. He speculates that the threat of legal sanctions might have tipped the balance, citing a revelatory paragraph in Microsoft’s press release:

“While we do not believe there are currently any legal requirements that would dictate which rendering mode must be chosen as the default for a given browser, this step clearly removes this question as a potential legal and regulatory issue,” said Brad Smith, Microsoft senior vice president and general counsel.

John even includes a hilarious graph to illustrate his theory of how Microsoft’s change of heart came to pass. (Hilarious to browser geeks, that is. Will Ferrell probably isn’t losing sleep.)

The key subtext from my perspective is the automatic assumption that Microsoft is incentivized to do the wrong thing as far as web standards are concerned. This has certainly been the case for many years, so it’s natural for folks to have a “fool me twice, shame on me” attitude. But the dynamics of the industry are changing fast. Microsoft’s lock on the desktop operating system market is no longer ironclad as Apple gains market share and Linux creeps towards mainstream relevance. Could it be possible that they now have more to gain by complying with standards than by flouting them?

The motivation for their famous policy of “embrace and extend” (adding proprietary extensions to standards) was to lock customers into a specific platform. If I developed my app for Windows or Internet Explorer and took advantage of some special Microsoft goodness, it would be that much more difficult for me to port to another environment. With Firefox now at 20% global market share and Safari coming on strong (thanks to growth in Mac usage), this approach is no longer viable on the web. No one in their right mind is going to deploy a web application that only runs on IE. I’m inclined to believe that Microsoft initially opted for IE7 compatibility in IE8 for exactly the reason they claimed: to avoid breaking existing web pages. Move along conspiracy theorists. Nothing to see here.

The advantage of standards compliance is two-fold. First of all, you increase the chance that developers will take maximum advantage of your platform. I’m more likely to add fancy new features to my website if they are going to work across all popular browsers than I am to use some special Microsoft goo that only works in IE. Secondly, and most importantly, people care about and understand the implications of being a good web citizen more than ever in the past, thanks to agitation by Mozilla, Opera and many others. Doing the right thing is a huge public relations win, something that even Microsoft has to be very mindful of nowadays. And that’s the real reason they changed their minds.

Update: Mike Shaver is thinking along the same lines. A commenter to his post points out that Microsoft is not always as cooperative on standards-related issues, to which Mike responds:

Indeed, Microsoft is a big company, and can act in multifarious and conflicting ways, but since I was willing to blame “Microsoft” for bad behaviour by the IE team, it only seems fair to credit “Microsoft” for the good behaviour. You’re probably right that the IE team is more enlightened here than some other parts of the company; working on the web has that effect on people sometimes. :)

Absolutely. That’s why we love the web: it is open by nature and is pushing the whole software industry in the right direction.

« - »