From the latest developments it looks like IE8 will default to the IE7 behavior. It will render websites in the original IE8 mode only if a special meta tag is inserted into the webpages by developers. I have already written about this pathetic solution of version targeting. In addition, I think the defaulting to IE7 behavior has some other far reaching consequences.
Jeremy Keith supports the IE8 version targeting, but opposes the idea of IE8 defaulting to the IE7 behavior.
Let’s say you’re building a website right now that uses a CSS feature such as generated content. Any browsers that currently support generated content will correctly parse your CSS declarations. Future browsers that will support generated content should also parse those CSS declarations. This expected behaviour will not occur in Internet Explorer. IE8 will include support for generated content. But unless you explicitly declare that you want IE8 to behave as IE8, it will behave as IE7.
Jeffrey Zeldman responds to this:
Jeremy, since you are among the tiny minority of enlightened web developers who know what generated content is, and who care that IE8 will support it (and since you read ALA), you will know to include a meta element that instructs IE8 to act like IE8—or you will use “edge” to instruct IE14 to act like IE14. Easy-peasy. No hardship for you.
By contrast, the many developers who don’t understand or care about web standards, and who only test their CSS and scripts in the latest version of IE, won’t opt in, so their stuff will render in IE8 the same way it rendered in IE7.
I agree with Zeldman when he says that developers don’t care about standards. At the same time I have to disagree with him on the issue of the default behavior.
The point is that IE8 is the same as IE7 if it defaults to IE7 behavior. Then what was the point in developing a new browser version? As Zeldman notes, only a handful of the enlightened web developers care about browser versions and standards. Many will not know that they have to include a special meta tag in their webpages. So what happens when IE8 ships?
Most of the developers will think they have a new version of IE and they will test their pages in the default mode of IE8 which is actually IE7 mode. So in effect, nearly all of the web developers out there will still be developing websites for IE7. Thus we will have people writing webpages for IE7 even though IE8 becomes widely used. This not backward compatibilty. This move from the Internet Explorer team will only result in more problems in the future.
Only time will tell whether the idea of version targeting was good or bad. But the defaulting thing is just a flawed idea. It will dampen the growth of the web, the standards and the other browsers too. This also will reduce the spread of standards awareness.
Even though Eric Meyer supports the IE move, he raises some important concerns in his article - From Switches to Targets: A Standardista’s Journey:
The biggest concern is fidelity. Will the backwards-compatible code for IE8 always act exactly like IE8 did, or will there be subtle changes that still break old sites? Might there even be, dare we mention it, new bugs that affect the backwards compatibility of future browsers? After all, the door swings both ways: vendors might get lax about their backward-looking code just as developers might get lax about their forward-looking code. Talk about irony.
A small concern is the effect of version-targeting code on the size of browser applications themselves. Could this be a step toward browsers becoming bloatware? Someone will chime in with “Who cares? Hard drives are huge now!” but I remain solidly unconvinced by “resources are cheap” arguments. No matter how cheap they are, people still keep filling them up. I sincerely hope the browser of the future won’t require a gigabyte or two of storage space, chained to every previous version of itself like Jacob Marley to his past misdeeds.
The world is still not flat
A cold chill was sent down my spine when I read the following paragraph from Jeffrey Zeldman:
… it’s actually good, because it means that their “IE7-tested” sites won’t “break” in IE8. Therefore their clients won’t scream. Therefore Microsoft won’t be inundated with complaints which, in the hands of the wrong director of marketing, could lead to the firing of standards-oriented browser engineers on the IE team. The wholesale firing of standards-oriented developers would jerk IE off the web standards path just when it has achieved sure footing. And if IE were to abandon standards, accessible, standards-compliant design would no longer have a chance. Standards only work when all browsers support them. That IE has the largest market share simply heightens the stakes.
Yes. This does mean that IE can make or break standards. It is true that IE dictates the terms in the market. And we should support the IE team in making the web a better place to live. But that doesn’t mean that all of us must bow down in respect every time they screw things up and make a the web a mess. We could fight back.
