Saturday, February 02, 2008

Standards or Bust!

Short of going into a room filled with apple fan boys/girls and dropping a flamer like "Apple products are wildly overrated" (which they are), very few other things have generated a controversy in the developer community so intense as that triggered by Microsoft's announcement of the IE8 Standards compliant mode switch. Anybody who questions how passionately web developers feel about standards mode and it's side effects only need to see the responses to Jeffery Zeldman's post on the issue (234 at the time of this post. Yes, that's right; Two hundred and thirty four).

If you haven't read or heard about the story, here is the basic breakdown of it. In Microsoft's efforts to work towards standards compliance in their new browser, they announced last week that developers who wish to enable standards compliant mode in IE will have to add the following meta tag to their code at the top of the page.
meta equiv="X-UA-Compatible" content="IE=8"
Essentially, that tag tells IE8 to render the rest of the page as close to standards mode as it currently supports.

If they feel that their page will stay standards compliant regardless of future versions of the browser they can instead use this

meta equiv="X-UA-Compatible" content="IE=edge"

In my opinion, clunky hack that it is, I think it is a move in the right direction. Having experienced the repeated frustration of fixing my current websites to display correctly in IE6, (most times leading to ungentlemanly utterances) it gives me some kind of relief to know that the next version will make my life a lot easier. With a simple tweak. And there, my good readers is where the problem lies. The tweak.

The standards compliant idealists prefer that IE8 render by default in standards compliant mode and instead should revert back to 'quirks' mode when the tag is added to a page. In essence, opt in to use the previous display engines which worked horribly, but will keep your currently badly coded page displaying correctly. In their opinion, if the day after Microsoft releases IE8, half the world's websites suddenly went all wonky, and the 'developers' who created these pages come to realize that it is because of bad coding techniques, they will be motivated to learn how to code correctly and fix their pages. They wouldn't be called idealists if they didn't think as such. Then of course, there is the minor fact that they feel they would be once again bowing to Microsoft in using this tag. Rewarding bad behavior if you will.

The realists or pragmatists, of which I am one realize that a good majority of the world's web pages out there are designed created by people who 'save as' web page from inside Microsoft Word and other related software; Who still think that designing layouts using tables is the best thing since sliced bread. I know, because I'm revising a series of about 10 different websites created like that at the moment. And then of course, there is the abundance of corporate websites out there still being fed to the public from old, expensive content management systems. Standards compliant evangelizing isn't something new. And while there is a learning curve, it doesn't take a massive amount of effort to learn CSS. Far from it. Tutorials for CSS abound all over the web. I know. I learned CSS sometime in 1998, 10 years ago. And yet, with ALL these different resources abundantly available on the web for ALL this time, we still have to deal with terribly coded websites. And here's the bitter truth. Outside the tight knit developer community, most people don't know or care about standards. They just want to create a web page and be done with it.

Here is the bottom line. Many people, designers and developers in particular want Microsoft to get their act together and finally deliver a standards compliant browser. IE is currently the most prevalent browser on the web today (around 56% as of Dec 2007 according to these stats) which means that as much as we may want it, Microsoft cannot be irresponsible about how they deploy software. Those saying "Well, they were irresponsible in designing it this way in the first place" are right, but doing two wrong things won't make things right. It's a cliche, but it's no less true.

To be quite honest, I also consider that at some point Microsoft has to make a clean break a la OS9/OSX Apple style and leave those who want to program things the old way behind. But that being said this is step in the right direction. A clunky one, granted, but a good one.

1 comment:

Unknown said...

Not being a part of that community I appreciate reading more about this issue.

Thanks for the post!