IE8 Version Targeting - Backward Thinking for the Web

This week, we got some news from the Internet Explorer team about IE8. I’ll be totally honest and say this is probably the worst move Microsoft can make with the future development of their market share-leading web browser. I’m really disappointed.

IE8 Version Targeting

The Internet Explorer development team was faced with a dilemma: build IE8 to work seamlessly with CSS and web standards - they even passed the Acid 2 Test - and finally redeem themselves for letting IE slip for all these years. But their problem was that because IE 6 has been around so long without a significant update, many web development IDEs and amateur web designers were making sites built around IE6 and its non-standard rendering engine. They’d use CSS hacks and workarounds to make sure their sites were built to conflict with web standards in order to have their sites work properly in IE6. Then when IE7 came along, most of those sites did not work. The problem was that many of the developers of those sites weren’t skilled enough to know what they’re doing when they wrote the HTML so IE made their sites display properly even though they had no DOCTYPE. If those developers knew what they were doing then it wouldn’t break their old sites, but if IE7 didn’t display those sites properly then at least those developers who originally built those sites would see that they didn’t work properly and they would be forced to look into the problem and then fix it.

In order to fix this problem in IE8 when it is released, the IE team has decided to use a META tag to implement some sort of version targeting in which developers can specify which rendering engine IE should use to display their pages:

<meta http-equiv="X-UA-Compatible" content="IE=8" />

You can replace the IE=8 with IE=7 or IE-131 when they get to that version. There’s also the IE=edge to tell the browser to use the most recent rendering engine. For example IE9 when it is released. However, I think this is a horrible way of solving the problem that so many sites out there are built poorly by amateur web designers that don’t fully understand HTML or even know what they’re doing. I agree mostly with the following comment from the MSDN post.

Enough nonsense. Point the finger where it belongs - squarely on the webdevelopers and site owners for having their heads lodged firmly up their posteriours.

It isn’t like they didn’t have any notice. IE7 was in beta for a good long time, the IE team was VERY vocal about what was going on and coming down the pipe.

I say enough of this bloody nonsense. Break the bloody web, and maybe, just maybe, we’ll finally be able to break free of the morass of the pre-IE7 days.

Quirks mode be gone.

Just put in standards mode and be done with it so that everyone can more forward to a stable, standard platform and finally be convinced that they need to get off their duffs and fix up their websites for new versions instead of assuming that nothing will change.

Heck, if you want quirks mode, make it so they have to have the meta tag for that.

Trying to fix around the fixes for problems that aren’t even there anymore isn’t going to do anything but cause more problems.
LET THEM BREAK IF THEY CAN’T BE BOTHERED TO MAINTAIN THEIR SITES!

Progressive Enhancement

One major issue is that this "solution" totally destroys progressive enhancement. Now if you use features from CSS that may not be available in IE7 or IE8 but are available in other browsers like Safari or Firefox, when the next version of IE comes out that supports those features, your web site won’t display them properly because the browser will tell the site to render it with the older rendering engine. Essentially your site will be stuck in the past.

Web Site Upgrade Project

Remember the browser upgrade project, in which a bunch of standards advocates built their sites to show notices that users on older browsers would see telling them they had an old unsupported web browser and they should upgrade to something new? Why doesn’t a similar project start up that tells developers to start updating their web sites? Really, IE7 was in beta for so long that any one who still actively maintained their web site had more than enough time to test their web site for compatibility and make changes to it where necessary. IE8 will give people just as much time to update their sites. If some sites don’t upgrade their code, then they should be deemed irrelevant, because the site is obviously not actively being maintained. It would be a great way of notifying the visitor that the site is no longer relevant and the visitor should leave right away.

How Will Things Ever Change?

The current state of the web is that it is overrun with poorly built, amateur web sites that are built only for IE6 and do not work in other browsers as they should. The IE team doesn’t want to break these web sites, but I think that is a horrible excuse - these web sites deserve to be broken. Maybe that will help cleanse all the out of date crap on the web today. Some users might have to suffer using IE8 for a while but once people realize that their sites aren’t working, then they’ll fix them and they’ll work fine. Then IE9 will come out and we can be can be assured that our sites will work properly, but also that most of these sites will work properly as well.

Disappointments in the Web Standards Project

I’m actually quite disappointed in the web standards project for agreeing to this move. From reading this article Aaron Gustafson talks about the drawbacks but then tries to explain the reasons for it. I think Microsoft finally has a way of forcing these out of date webmasters to update their web sites and finally clean up the web, sadly, that won’t be happening anytime soon, rather they’ll be giving in to the amateurs. The following comment kind of sums up the problem with this strategy:

So doctype was ok until everyone started including it, even when they didn’t know what it was for.

So in a couple of years lazy developers will read a tutorial and decide that “ie-edge” makes their pages futureproof.

Then we’ll be back where we started.

What will Microsoft do when they find that they’ve created another monster in ie=edge?

Forcing Vista Upgrades - but Not Web Site Upgrades

Part of the reason Vista hasn’t been adopted as quickly as it should have been is because Microsoft has forced people to upgrade their hardware, and most old computers will not be able to install Vista. Why don’t they do the same with IE8? When will web developers finally be forced to update their old code?

Other Reactions

Here are some other related posts to the news: The Original A List Apart article,Eric Meyer’s response,Jonathan Snook, Roger Johansson,Robert O’Callahan,Anne Van Kesteren,The Safari Webkit Team

Comment