The cost of supporting non-standardsWednesday, June 23, 2004
Close on a year after Microsoft announced that Internet Explorer will no longer be offered as a stand-alone product, this decision has been reversed. This may be as a result of the rapid improvement of alternate browsers like Firefox, Safari and Opera. Microsoft can no longer hold back the tide of innovation as more and more people switch to these newer browsers. Not surprisingly, Internet Explorer is no longer to "Best Product" when it comes to magazine reviews. Amongst web designers, Internet Explorer's reputation is now similar to that of Netscape 4 - non-compliant and problematical.
No interest in supporting web standards
Microsoft have reformed the Internet Explorer group, and opened up discussions on channel 9 weblogs for feature requests, bug reports and overall improvements that need to be made. There's a comment by Tony Ch (Group Program Manager, Internet Explorer) that sheds some light on the problems of supporting standards:
Finally, to set expectations, no major standards changes will happen in months (vs. years.) Any big changes in Trident (our rendering engine) will take a long QA and beta cycle. Plus, our dance card for the next few months is full.
Trident cruft - supporting non-standards
I recall reading a few weeks ago that the development of the Trident engine included testing it against the top 1000 websites. "Fixes" were introduced to ensure that these website displayed "correctly" in the browser. So instead of fully supporting available and documented standards, Internet Explorer development instead tried to support a moving target. This introduces a massive amount of cruft, and over time makes the code unmanageable.
I wouldn't be surprised that this problem could be part of the reason a halt was called on Internet Explorer. Trying to support improving and established standards on top of an engine that is largely centred around non-compliant markup is a difficult and arduous task. The statement from the Program Manager certainly seems to confim this conclusion.
In short, the reason Internet Explorer developers seem reluctant or cautious to introducting proper standards support into Internet Explorer is that they realise because of their long past of ignoring web standards in preference to the top 1000 sites, the code isn't as cleanly-cut to do the job properly.
Peter-Paul Koch reaches the same conclusion:
Why is Microsoft unwilling to fix the CSS bugs that everyone's been asking it to fix for ages? I think it's not unwilling but unable to do so. Explorer's code engine cannot be updated any more.
Replace or complement Trident
The only logical approach is to scrap the Trident engine entirely and start afresh, or to have two engines - one that handles web standards properly, and keeping the cruft-renderer for other pages. Anne van Kesteren has an idea about the two engine approach that makes sense.
Updated 4/11/2005: The Microsoft RSS team has decided to only accept well-formed XML in its feed reader. The reason given is an admission of pain:
Our years of experience in with HTML in Internet Explorer have taught us the long-term pain that results from being too liberal with what you accept from others.
- Channel 9: Does Microsoft care about Webmasters?
- Channel 9: Internet Explorer Support for CSS
- Channel 9: Internet Explorer Standards
- James Robertson: Whoa - cruft
- Asbjørn Ulsberg's standards wishlist
- Position is Everything: IE bugs
- Mezzoblue: Side-stepping IE
- Mike Davidson on the reasons behind stopping development on IE