Breaking the web

All timestamps are based on your local time of:

Posted by: stak
Posted on: 2008-01-22 19:48:05

A slashdot post on IE8 and it's three different render modes. For those who don't want to read the article, the basic problem is the same as what happened with IE7: it was more standards-compliant than IE6, and as a result, a lot of websites that checked for IE and implemented workarounds simply broke.

The option they've chosen to go with for IE8 is to make it opt-in using a meta tag. So if a web developer wants their page to be rendered using the new IE8 engine, they have to update their site. This is a horrible solution for a lot of reasons, most of which have to do with cruft. It adds cruft to the page (in the form of proprietary meta tags or HTTP headers). It also adds cruft to the browser codebase since now IE will have to support 3 different rendering modes (which will be 4 with the next IE, then 5, and so on).

Of course, all the other solutions are horrible too. The IE teams seems to have shot themselves in the foot plenty of times, but what's annoying is that they just don't seem to learn from their mistakes. Every time they pull a stunt like this, it's done in order to preserve backwards compatibility, and every time it ends up causing more trouble in the long run because it encourages backwards behavior. Web developers assume that since their old crappy pages still work, there's no reason to change what they're doing. And with every release, IE faces the same problem over and over.

My favorite solution for them in this case is to just change the user-agent string. That way all the workarounds that depend on detecting IE will still work on the older IEs, but not on IE8. It'll be treated like all the other standards-compliant browsers out there, and provided it actually does support the standards from here on out, all should be well (of course, that would be asking a little too much).

Posted by varun at 2008-01-23 01:59:12
If it makes you feel any better - we're still on IE6 and creating web pages with a homegrown, Vignette-based CMS from hell called "ePublish" (aka "ePunish") that botches so many pages so routinely that even its advocates hate it. Oh and it only renders correctly and functions correctly on IE6.0 - not the 6.1 or 6.5 releases - and you can kiss Firefox, Safari or Opera support goodbye.

But we can't change, because we shared the cost with the UN and the UN loves it and is not willing to change.

Which is why I turned down two lucrative job offers with them. My sanity took priority over the job security.
[ Reply to this ]
Posted by Fai at 2008-01-23 02:44:15
You have a policy of basically "get with it or get lost" towards app compat. This is not the policy microsoft has. Given this policy, their choices do make sense.

You're assuming that websites actually have ie6 work arounds, instead of blindly programming purely for ie (which I actually assume is what a lot of web sites do)
[ Reply to this ]
Posted by stak at 2008-01-23 07:55:00
The websites that program purely for IE are almost always fairly old and will render fine in quirks mode (note that I'm not advocating getting rid of quirks mode just yet, since that *would* break the web). All I'm saying that adding a third rendering mode in addition to the two present in all major browsers is stupid, because it's heading the direction completely opposite to what's required to gradually phase out older sites.
[ Reply to this ]
Posted by Fai at 2008-01-24 00:01:41
They could be phasing it out in stages.
[ Reply to this ]
Posted by varun at 2008-01-24 18:57:49
Kats - not always. In fact, I'm willing to be that unless the company is a tech company, the internal websites are almost always IE6 based messes. I disagree with Microsoft for creating yet another proprietary extension, but I can see why they're going the way that they are.

Though, if it were up to me, I'd encourage them to break compatibility as a way of encouraging standards prevalence.
Allowed expansions in comments/replies: [i]italic[/i], [u]underline[/u], [b]bold[/b], [code]code[/code], [sub]subscript[/sub], [sup]superscript[/sup], [url=http://some.url]linked text[/url]
Human verification: Sum of twenty-two and thirty-five =

[ Add a new comment ]

(c) Kartikaya Gupta, 2004-2024. User comments owned by their respective posters. All rights reserved.
You are accessing this website via IPv4. Consider upgrading to IPv6!