Version Targeting: Threat or Menace?

by Jeffrey Zeldman

79 Reader Comments

Back to the Article
  1. As mentioned in this article, Microsoft’s main justification for version targeting is to avoid “breaking the web”. I find their altruistic concern over this matter more than a little ironic and very hypocritical.

    If Microsoft was really that concerned with not breaking the web, then why aren’t they more concerned with not breaking the desktop? Anyone who’s upgraded to Windows Vista is familiar with the problem of incompatible applications and drivers that worked perfectly fine in Windows XP but for whatever reason don’t work right in Vista because of Vista’s “improvements”. In addition, in a few short weeks, Vista SP1 will be released to the masses and we’re already being warned about problems and incompatibilities with this upgrade. How many things that work fine in Vista right now won’t work after the SP1 upgrade? 

    Here’s another example: I’ve got Office 2007 installed on my Vista machine. But I can’t use Outlook 2007 to connect to my work’s old Exchange 5.5 Server because Outlook 2007 effectively “broke” backwards compatibility with this version of Exchange server. If Microsoft is so worried about not breaking the web, why are they so willing to break the desktop?

    Anyone who’s worked with computers for a while accepts the fact that you can’t maintain backwards compatibility forever. At some point, you have to sacrifice backwards compatibility for improvements and innovation. As they say, you can’t have your cake and eat it too.

    I would like to see Microsoft step up to the plate and accept full responsibility for this mess. The problem really isn’t “unenlightened” web developers or poorly written web authoring tools. Sure these factors have contributed to the problem, but the real heart of the problem is Microsoft’s crappy browser. Had IE had better standards support right from the beginning, there would be no such thing as unenlightened developers or bad authoring tools because these people were just follow Microsoft’s lead.

    But for whatever reason, all I’m seeing is Microsoft trying to shift the blame off of themselves and offering yet another lame patch in an attempt to cover up the issue while mindlessly repeating their hypocritical mantra of “don’t break the web”. Microsoft, unfortunately you already broke the web a long time ago! It’s time that you accept this fact and start fixing it for good.

    Copy & paste the code below to embed this comment.
  2. Why can’t it be opt-out by default? If there are sites that are advanced enough to be using all the stuff that will supposedly break, they are presumably ones that are being maintained – so why can’t those just have to opt-in to old behaviour. That way it’s clear that they have work to do to fix things.

    Copy & paste the code below to embed this comment.
  3. …why not have this version targeting stuff for the Javascript engine only? After learning about Microsoft’s transition from JScript to Javascript (hooray!) version targeting makes more sense. But why not limit it to the Javascript? Have one of those appendages to the MIME type declaration like Firefox does, or some funky IE-readable comment in the script file itself, or an HTTP header.

    As others have already said, given how big a change there was going to IE7, how much breakage is there really going to be in IE8, in terms of layout?

    Copy & paste the code below to embed this comment.
  4. This switch gives bad [or should I say ‘evil’ ;-)] developers a tool to keep selling their broken code to ignorant customers, who pay large amounts of money for websites that they think will reach as many people as possible.
    If MS really cares about website owners they would not provide such tool.

    Copy & paste the code below to embed this comment.
  5. Kudos to the Z-Man for talking sense.
    I cut my eyeteeth in web development in just such an atmosphere as Zeldman describes: a large public-service agency that, at the time was transitioning from IE5.5 to 6 as the only browser employees were permitted to use. Without naming the agency by name, I can tell you that if those employees can’t do their work because of a browser screw-up, the trains and buses in New York City might not run on time or at all, in some cases.
    This is serious stuff folks, and Microsoft is doing the responsible thing, that’s all.

    Copy & paste the code below to embed this comment.
  6. The only thing we can do is change accordingly.

    Copy & paste the code below to embed this comment.
  7. The argument in this article make more sense than Jeremy Keith’s article; I think. It would also seem that Jeremy would benefit from reading this article, as Jeremy has almost had me convinced his argument was the right one, before I read Zeldman’s.

    Copy & paste the code below to embed this comment.
  8. I know plenty of people have posted their own statements of agreement or opposition, and their own solutions to Version Targeting, but I would appreciate your opinion on “my idea”:http://www.digitalgemstones.com/blog/entry/13 which to summarize is version targeting where the default is one version behind the current.  This would give developers a padding of a few years to update their code, while still encouraging standards to grow and improve.

    Copy & paste the code below to embed this comment.
  9. I don’t really see a reason why IE42 would act like IE7. I suspect that the default rendering will eventually move forward to accommodate the market.

    Copy & paste the code below to embed this comment.
  10. A few points:

    1) Amateur developers are often only concerned about something looking right.  If IE continues to default to quarks mode, these amateurs are going to think their broken code is actually correct.  There is no feedback for them to clue them into the fact that they are doing something wrong.  Clearly this is not the way things should happen.

    2) If someone is dependent on a site that only works in IEx what is to keep them from using IEx?  Couldn’t Microsoft just allow people to install whatever version of IE they want (independent of OS) and solve the problem?

    3) What’s wrong with asking that sites that rely on old versions of IE from altering their code to note what version they are requiring?  If you are a corporation using an IE only internal website, how hard would it be to add such a tag?  Having worked on such a site, the answer in my case would have been “not very hard at all”. 

    4) There is something completely silly about requiring a designer to opt-in to standards mode.  Is it really too much to ask that the standard should be. . . the standard?

    5) I agree with others that suggest IE include a legacy mode.  They do this in Windows where you can tell the OS that a program is from Windows 95 or 98 or whatever.  It would make sense to allow users to say “oh this site is broken, let’s try a legacy mode”. 

    6) Overall I just think we need to favor standards and current state of the art over deprecated and legacy code.  I think Microsoft is right to want to accommodate older code, but they shouldn’t require everyone to make this accommodation.  Microsoft and the users/administrators of these legacy sites should bear the burden.

    Copy & paste the code below to embed this comment.
  11. then we have to do the following …

    FCC can not go to a digital television broadcasting.  Frankly this move will not allow me to see my TV shows with all the hazy and ghosting I have gotten use to.  Not to mention all those poor pirate TV stations out there.

    Sometimes it is just necessary to bite the bullet and move forward (analog TV, Betamax, 8-trax, tapes, HD-DVD). Microsoft backed the wronge horse (themselves) and lost, suck it up and move on. (add more cliche sayings here)

    Copy & paste the code below to embed this comment.
  12. After getting all these famous people here at ALA to agree (well, some at least), Microsoft now tells us (or so I understand) that they were wrong:
        “http://blogs.msdn.com/ie/archive/2008/03/03/microsoft-s-interoperability-principles-and-ie8.aspx”:url

    I’m glad. But why did all the famous, well respected people not tell them straight away that this should be the way to go? Why did they, at least this time, no stick to asking for respecting standards?

    Copy & paste the code below to embed this comment.
  13. I’m not understanding how this is different from the problem that overtook the old DOCTYPE solution… What if something like Dreamweaver or FrontPage or some other future web site development software decides to “help” the user by inserting this meta tag—doesn’t that mean we end up in exactly the same place in the end? That is, is it not still possible we may end up not being able to assume the meta tag actually means what it says it means?

    Copy & paste the code below to embed this comment.
  14. Well is it, Jeffrey? And all the rest of you who felt that if it was ok with Jeffrey then it must be ok with you? Well it wasn’t OK. And others (especially those on a different continent – there are other continents you know) defended web standards against Microsoft. So, like spam in the EU, it looks as if you will have to opt in for IE7 compatibility. Next time, just say No.

    Copy & paste the code below to embed this comment.
  15. If doctype switching is not a reliable method for indicating whether a developer has built their site to be standards compliant or not, then who says that version targeting will be any better. What is to stop uninformed developers from targeting standards based rendering but not actually using it in their code – thus breaking their sites just as uninformed developers who used the strict doctype but didn’t build their sites accordingly saw them break in IE7.

    Copy & paste the code below to embed this comment.
  16. Just to reiterate, from the IE blog (linked to above):

    We’ve decided that IE8 will, by default, interpret web content in the most standards compliant way it can. This decision is a change from what we’ve posted previously. … We think that acting in accordance with principles is important, and IE8’s default is a demonstration of the interoperability principles in action.

    So that leaves us where we started. But, although I would not have minded nailing down pages to a version of IE (since we already often have to add IE if-statements), I dislike the idea of having to add special code for any browser, search engine or anything else. That said, as browsers are released (and we’re talking years and years here), there will be display problems for older sites.

    Copy & paste the code below to embed this comment.
  17. To some extent, I agree with the article. However, I think that version targeting is, though a great solution on short-term basis, not feasible on the long-term.

    1. First of all, let us examine the fact that there are lots of developers/designers out there who sort of fall in between the two groups of knowledgeable designers and ‘unenlightened’. I’ve been one for years myself.
      Imagine being an intermediately skilled web designer. You’ve heard of CSS and try to implement it in a standards-based way to the best of your knowledge, but your main goal is to make a cross-browser compatible website. How can you be expected to know of the “X-UA-compatible” switch and how to implement it? In fact, I only recently found out about the “almost standards” mode in browsers, and had believed all my pages to be running in strict mode for years, even though this wasn’t true for some of them. As an intermediate web designer, you can’t be expected to read ALA on a regular basis. The problem with the version targeting is that it doesn’t accommodate the users in between the ‘two groups’. This opt-in behaviour will give millions of people, professionals and hobbyists alike, severe headaches while they’re trying to figure out why even the newest Internet Explorer won’t look like Firefox and Opera. Or worse – why Firefox and Opera won’t look like the newest Internet Explorer.
    2. Then, there is the long-term feasibility of this switch. I think it is unrealistic to have IE42 behave like IE7, because before long people – yes, even the unenlightened – will start to take notice of this behaviour (especially since IE is loosing market share by about 5 % a year, “source”:http://marketshare.hitslink.com/report.aspx?qprid=1&qpdt=1&qpct=4&qptimeframe=M&qpsp=91&qpnp=25 ).
      Now, “Quirks Mode 2.0” might be just displaying pages differently, but if “Quirks Mode 2.0” really behaves like IE7, it could, in the future, also mean not supporting new features, which will start to become very noticeable at the time IE9 or IE10 is released.
      And how will we know that this is the last ‘switch’ Microsoft is ever going to come up with? I’m not quite convinced.
    3. And now, about web standards. Though version targeting is presented as a feature advocating standards based design, I think this is not the right thinking of Microsoft. Surely the knowledgeable developers who already embrace web standards will continue embracing web standards, but implementing this switch will never bring web standards to the masses. In fact, it will throw up yet another barrier, and probably not the last.
    4. Ironically, the web sites that will actually “break” to a catastrophic extent – e.g. illegible or unusable – are probably the web sites authored by the knowledgeable designers anyway, who know of the X-UA-compatible switch and how to implement it. It kind of beats the purpose, doesn’t it?
    5. Now, please consider this: “Breaking the web” will never, ever, be a more shocking user experience than the transition to Firefox, iCab, Safari, Opera, the Wii Browser, the iPhone browser, etc. A transition which is usually not really that noticeable at all – at least in my experience. The only web site that won’t work in my beloved Firefox is the **** Microsoft Update… Just to make a point.
      Now, one might argue that “…zillions of people who don’t know any better do tailor sites to the quirks of IE6,” and that “That’s why an improved IE7 “broke”? old sites.”
      From this I gather that websites are “breaking” more severely in IE7 than in Firefox or Safari because web designers are using workarounds such as CSS filters, the holly hack, and conditional comments (in fact a form of version targeting itself) to code for the quirks of IE6. Maybe I’ve misunderstood, but I think the correct solution to this problem would be making IE8 so that it would behave exactly as other standards compliant browsers – removing support for the Holly Hack, conditional comments, etc.

    Freezing the web might just not be the smartest thing to do. Especially since Microsoft hardly makes the rules anymore. I would be interested to hear what the W3 Consortium has to say about the matter. Maybe they can offer a better solution.

    Copy & paste the code below to embed this comment.
  18. I have downloaded the Beta of IE8 and I am not really that impressed. It breaks an amazing scrolling javascript function on my company’s homepage. Does this mean a new set of hacks for IE8? I did like the reference “We might call them the unenlightened” in the article.

    Copy & paste the code below to embed this comment.
  19. We are microsoft. We are the standards. Resistance is futile. You will be assimilated.
    Every time I read an article about Internet Explorer those words go through my head.
    It’s basically all promises and only 20% of those promises get delivered.
    I think microsoft is still in brand loyalty mode and that will never change.
    Who created all these hack web-masters in the first place? Netscape was bundled with windows not that many years ago only 15.
    They do know they can brand firefox right?
    The only way to have standards compliant web developers is to have a standards compliant web browser, even if joe newguy is just starting to learn building webpages if something breaks they will learn standards.
    For those who call themselves developers and don’t follow the standards then hey let their websites break, it their own fault anyway. Maybe they will thank Microsoft for helping them code better.
    It’s best for their bottom line to follow these standards.
    If they don’t you can always add this line to your website
    “Best viewed on a good Web Browser” with links to opera, firefox, etc..

    Copy & paste the code below to embed this comment.