Just as it has been since Windows 95 was ascendant and dinosaurs roamed the earth, Internet Explorer is the dominant web browser in desktop computer use. But even though there seem to be hundreds of millions of users running it on desktops and notebooks, Internet Explorer gets no respect from the Web developer community, and it often gets second-rate support among desktop browsers.
On mobile devices IE is no doubt growing as a share of the total, but still a very small player. The intelligent mobile Web developer focuses on getting his or her web site to look good in the dominant mobile browsers Safari, the (pre-4.0) Android Browser, and Google Chrome all of which are based on the WebKit layout engine. This means that Windows Phone and Windows 8 users often run into web site problems in IE 10. Windows 8 users can at least install a different browser, but Windows RT and Windows Phone users have only Internet Explorer.
As Microsoft MVP Bill Reiss argues, this is bad for Microsoft's users. He thinks it's time for Microsoft to throw in the towel on their own layout engine, known as Trident and implemented on desktop Windows in the MSHTML.DLL program file, and switch to WebKit.
This is really a fascinating proposal. There are plenty of very good reasons to do it. There are also plenty of reasons not to. On the whole, I have to decide against the move, but it's not an easy decision. Caving in to the WebKit juggernaut would reduce a lot of friction that makes life difficult for Windows developers and users. It might even inspire many developers who now shun Windows 8 and Windows Phone to support those platforms, since it would be much less work to do so.
And for all the progress that Microsoft has made with IE, there are some areas where it really lags, with HTML5 compliance at the top of the list. Tests just now at html5test.com give me these results all out of a total of 500 points, higher being better):
|Internet Explorer 9 (Windows 7)||138|
|Internet Explorer 10 (Windows 8 and Windows Phone)||320|
|Safari 6.0.2 (OS X 10.7)||368|
|Firefox 18 (OS X 10.7)||389|
|Chrome 23.0.1271.97 m (Windows 8)||448|
So IE10 is a huge improvement on IE9, but it's still clearly at the rear of the pack, and Chrome makes it look really bad.
So why not make the switch? I'm a security guy, and security problems often are the first thing to come to mind for me. Most people still don't appreciate it, but IE is probably the most secure browser available, and has been for some time. If you follow vulnerability reports you'll see that WebKit has a high volume of them, and they are fixed on very different schedules in the various WebKit products. Microsoft can fix the much smaller number of security problems in IE on their schedule. By joining in with the WebKit consortium, Microsoft loses some control over the schedule for such fixes.
Microsoft would also lose control over feature decisions, some of which involve security. Consider WebGL, an open standard for high-speed graphics in browsers, supported by all the major browsers, except Internet Explorer. Microsoft has decided that WebGL is inherently unsecurable and it won't be in any of their browsers. If they move to WebKit, they don't get to make decisions like this.
Reiss doesn't say whether he's speaking only about mobile browsers or also about the desktop, but it's a point worth exploring. Many, many corporate developers write web code with Internet Explorer as their development target. Messing things up for them would be a bad thing. But Microsoft can't decide to make the changes only for mobile, because it's central to Microsoft's marketing that the tablet market is really just part of the PC market.
There could be a middle ground I suppose. Microsoft could provide two browsers, or allow the user (or maybe even the web site) to switch engines. But it's just not something they would do. It's too complicated and they still get all the downsides of WebKit.
Finally, as Reiss himself points out, it's often not a good thing to have one dominant standard. He cites Daniel Glazman, the co-chairman of the W3C's CSS standards working group, who is concerned about the tendency of so many mobile developers to target WebKit rather than standards. WebKit has many features that go beyond standards and many sites rely on them.
If the WebKit-only phenomenon is unstoppable, then the only practical way to deal with it may be to cry "Uncle!" and switch to WebKit. I don't think things have gotten that bad. Microsoft needs to keep features in IE/Trident developing to keep up with WebKit and then, if Microsoft can produce the market share to justify it, developers will support IE. Probably.
It's not a clear decision. What do you think? Please argue in the comment section below.