
Bill Gates was a young, reckless, Harvard dropout in 1977. Just the type of criminal mastermind who'd conjur up IE6.
Want to have some fun with your Web Developer friends? The next time you’re chatting with them, ask for their opinion of IE6. They might smirk a bit and maybe do a little fake nausea routine. Then as your query sinks in, they may exhibit some genuine exasperation as they explain to you the myriad hoops that must be jumped through to get a modern website to work reasonably well in an old, buggy browser. You see, Internet Explorer 6 - Microsoft’s nearly 8 year old, bug-ridden browser - is bad news.
All browsers have bugs, but IE6 has lots of them. There are workarounds to most of them, but these workarounds invariably lead to compromises. For example, unlike all “modern browsers”, IE6 does not support transparent PNG images. There is a well known hack which lets you achieve the desired support of transparent PNGs in IE6, but this hack can lead to other layout problems, and is essentially incompatible with some other modern techniques, like using image sprites. The result of all this hacking? Compromises in the site design as well as the cleanliness of the code.
The complexities of a modern web application are getting harder and harder to accurately replicate in IE6. More importantly, there is a significant amount of project time spent resolving IE6 issues, and there are some techniques that just don’t work. Most websites use conditional statements to test if the site is being viewed in IE6, and include a seperate stylesheet or javascript file if so. This can mask some of the buggy behavior, but the user experience for someone using IE6 will be different than someone using virtually any other browser.
