Fog Creek Software's Joel Spolsky has entered the debate about IE8's standard behaviour rather late, but with his usual insight, he's recast it as a battle between idealists and pragmatists. Or between Martian headset wearers.
The question is whether IE should assume most sites are standards compliant and make standards the default, or assume that they are not, and make "behaves like IE7" the default. Microsoft originally took the latter view, supported by Jeffrey Zeldman, publisher of A List Apart, on the pragmatic basis on "not breaking the web". However, the idea was rapidly buried in abuse and Microsoft changed its view to making standards operation the default, leading my colleague Bobbie Johnson to post Webistan calm after Microsoft backtracks over IE. Righteousness wins!
Which is fine in theory, but as Spolsky points out, the reality is more complicated. "Standards are sometimes misinterpreted, sometimes confusing and even ambiguous," so there are always differences in implementation.
The precise problem here is that you're pretending that there's one standard, but since nobody has a way to test against the standard, it's not a real standard: it's a platonic ideal and a set of misinterpretations.
This is, I think, going to cause hundreds of millions of users, and web designers, a lot of pain. On the other hand, perhaps they should be made to suffer and try to clean up their acts, because in the long term, following standards is definitely the best idea. Alas, if that's where you want to go, you'd rather not be starting from here.
Spolsky reckons there is no right answer, but he says:
Secretly? Here's what I think is going to happen. The IE8 team going to tell everyone that IE8 will use web standards by default, and run a nice long beta during which they beg people to test their pages with IE8 and get them to work. And when they get closer to shipping, and only 32% of the web pages in the world render properly, they'll say, "look guys, we're really sorry, we really wanted IE8 standards mode to be the default, but we can't ship a browser that doesn't work," and they'll revert to the pragmatic decision. Or maybe they won't, because the pragmatists at Microsoft have been out of power for a long time. In which case, IE is going to lose a lot of market share, which would please the idealists to no end.
As usual, the idealists are 100% right in principle and, as usual, the pragmatists are right in practice. The flames will continue for years. This debate precisely splits the world in two. If you have a way to buy stock in Internet flame wars, now would be a good time to do that.
The free bonus is that Spolsky also throws in Windows Vista, which suffers from a similar conflict. Windows has suffered technically (and benefited commercially) because Microsoft almost always bent over backwards to be compatible with old software originally written for DOS/Windows, sometimes by people who couldn't program their way out of a paper bag. But 64-bit Vista more or less requires that programs don't screw around doing stupid things, which naturally breaks some software, just like IE8 breaks some Web sites.