semiBad.

The trouble with IE6

(or: how I learned to stop worrying and love the modern browser)

Sorry to have dragged you away from the main content of the site to lecture you about your choice of browser. Potentially, this is a great way for me to lose the remaining 13% of my visitors to whom that message would have been visible. I'm only saying this because I care.

If you're using IE6 only because that's what's installed on your office machine — you can probably ignore this. Sorry to have bothered you. (If you also use IE6 at home, you should probably keep reading).

What is my problem, anyway?

It probably seems like a really odd thing to have called you on — the choice of software that you use to view web pages. But the fact is that most people who use this browser never made a choice to in the first place. It just comes installed with Windows, it automatically runs when you go to use the web, and it never updates itself. A lot of people never realised that there was any other way to surf the web. If that sounds like I'm implying some kind of vast, implacable web browser conspiracy then I apologise — that's not it at all. I'm just trying to explain the reason for the real problem — the artificially long life cycle.

IE6 is a very old browser. It was around before the first iPod, or the first XBox, or East Timor! The web, on the other hand, is an extremely rapidly-changing medium — there are a lot of new technologies being developed and deployed constantly.

Good web designers/developers (which I would consider myself to be) are not interested in creating sites which only work for some people. The web should be accessible for everyone. We design and test sites to work with every browser, to the best degree possible. A good website should be just as accessible to someone using a text only browser or a screen reader. Try viewing this site using Lynx, and you'll see what I mean.

So we have to design and test for lots of browsers, in order to make sure that every site we make gives just as good an experience, whatever software our visitors are using. You might think this sounds like a nightmare — and you know what? It is, to some extent. Fortunately, that's where Web Standards comes in. This is a prescribed set of rules, agreed on by browser manufacturers, web developers, and subject experts, which state how a browser should behave. To cut a long story short, if you design to these standards, your site should look and work the same way, whichever browser your visitor decides to use.

And this is where IE6's age comes in. IE6 doesn't play well with standards. Even when it was young and fresh, it was already doing things its own way. Now, seven years down the line, it's worse than ever — which causes a whole bunch of problems for everyone involved.

Obviously, just because it doesn't play by the rules, doesn't mean that good web developers can ignore it. A lot of people still use it, and so we spend a huge amount of time on every project, catering to its' cantenkerous whims. Features get dropped — or in some cases, are simply disabled for IE6 users.

So this is why we're having this little chat. It might seem like I'm asking you to change your software to make life easier for me (and others like me). In small part, that's exactly it — speak to any decent web developer, and they'll talk your ears off about how they wish they could dig a big pit in the desert and bury IE6 in it. But there are other reasons. For one, the internet as a whole is made worse by IE6 outstaying its' welcome. Designers have to hold back on the interesting, useful features we implement, just to make sure the sites we create are compatible with IE6. We also have to add heaps of extra code to force IE6 to play nice — which means site files are bigger and load slower.

The good news is that less and less people are using IE6 all the time. Again, a lot of these people probably never made a conscious decision — maybe they bought a new computer or upgraded their version of Windows, and suddenly found themselves using Explorer 7 (IE6's more standards-compliant younger brother). As a result, the percentage of people using the old browser have dropped quite significantly.

Which brings me to the last reason to upgrade. IE6, quite frankly, is running out of time. The amount of people still using it has dropped to the point where people are questioning whether they really need to support it any more. Some designers have started charging their clients extra to add IE6 support to their projects, due to the disproportionate amount of time it takes to make a well-designed site. More and more, IE6 users are going to find sites not working quite how they expect — or in some cases, being greeted with a message instructing them to upgrade in order to access the site.

So, I thought I'd try to take a softer approach. Upgrade! It'll take ten minutes, tops, and you'll see the benefits really soon. Even if you don't, you'll know that you're helping to make the web more useful for everyone involved. That's a good thing!

What next?

If you do decide to take my advice and upgrade, you probably need to pick a browser. There's loads to choose from, but let's keep this simple for now. I'd recommend Firefox, personally — it's what most web professionals use, it works in exactly the same way as you're used to, and it has loads of clever little features that'll make you wonder what you did without it. They've also made it incredibly straightforward to set up — just follow this link and they'll talk you through the rest.

If that sounds a little too much of a change, you could always upgrade to the latest version of Internet Explorer. It's a whole bunch better than IE6 — but if you've come this far, you may as well go the whole hog and install a really compliant browser.

If neither of those appeals, there's also Safari (by Apple), Chrome (by Google), and Opera (by... Opera, actually). All of these are fully standards-compliant, and are very easy to install.

But whatever you do — please, please stop using IE6! Trust me — you'll thank me for it.

Thanks for listening to my little soapbox — if you have any questions about any of this, don't hesitate to contact me directly.