Hang on a moment, just double checking that title! Internet Explorer 6? Defence?

I’m sure most developers have been extremely keen to drop support for IE6 for years. I hate to think how many hours I’ve spent trying to work my way around it’s many foibles. But, in recent months, the debate about when we can finally drop support for the devil’s own browser has been raging on sites such as .net magazine’s Bring Down IE6.

One of the main accusations against IE6 is that it’s stranglehold on the browser market has been holding back the development of the web, but I’m not so sure it’s that straight forward. I don’t think anyone could deny that IE6’s ubiquity has made it more difficult to take advantage of many of the innovations, both in standards such as CSS3, or from particular browser’s proprietary features, such as canvas, which have been embraced by other vendors and standards bodies. But would it have been much better had IE6 disappeared years ago? Many of these features are still not supported by any version of IE to this day.

Microsoft has however supported a variety of it’s own proprietary features, many as far back as IE5.5, some of which have only just started to appear across other browsers. While the syntax is often rather long winded, Microsoft’s CSS filters have plugged many of the gaps in IE’s standards support, particularly with regard to opacity and RGBa background colours. IE5.5 also introduced word-wrap, which probably should have been part of CSS from the start, but has only just been introduced by Mozilla in the Firefox 3.5!

In the past five years or so, XMLHttpRequest has, quite rightly, gained popularity for it’s ability to easily fetch data from the server while remaining on the same page. Whether we like to admit it or not, we have Microsoft to thank for that, the ActiveX object was developed for Outlook Web Access in Exchange and introduced in IE5 in 1999! Fully functional implementations of XMLHttpRequest only started to become available in other browsers in 2002.

Internet Explorer 6 does have some serious rendering bugs and, compared to modern browsers, it is very slow in rendering and javascript execution. However, IE6 is about 8 years old and while other browsers have pushed forward the client side technologies available to developers since then, IE6 has, in many cases, had it’s own features which can be used, or hacked, to provide similar functionality. Maybe we should not be judging it by modern standards.

While nobody enjoys coding for IE6, without Microsoft’s innovations around Internet Explorer in the late 1990s, I think the situation would be much worse. If it wasn’t for features such as XMLHttpRequest, IE6’s domination would certainly have strangled innovation in client side development to a much greater extent. So maybe, rather than pouring scorn on IE6 at every opportunity, we should instead celebrate what, at the time, were innovative features and count ourselves lucky while we endure it’s slow demise.

…erm, I mean - BRING DOWN IE6!