Note: This was originally written in February, 2001, but has received occasional updates.
Several days ago The Web Standards Project (essentially a browser lobbying group) launched their Browser Upgrades campaign. The aim was to urge users of older browsers to upgrade. An excellent goal, however when taken in context of their other site (A List Apart) and their recent To Hell With Bad Browsers it comes off differently -- righteous, and political. As they pose: "why does ALA look like @#$ in your 4.0 browser?" Because they want it that way, and they haven't made an alternative.
In recent years we've all learnt the roots of HTML Terrorism and felt the growing hatred against webdesigners. They weren't true programmers. They use Flash, they have text in images, they don't provide ALT attributes or ACRONYM tags. Blind users, the visually impaired, those running at high or low resolutions, couldn't use a website. Pesky designers.
On the other side of the fence was the posturing programmer who wanted the elegance of clean markup and W3C standards. They didn't care about formatting hacks that used transparent gifs to indent the first line, or even fancy colours. Give them HTML 1, they'll wire the rest together (their bandwidth was important damnit!). They had simple and ugly sites with 40 words per line, so usability suffered. Pesky programmers.
What was rarely said however is that both designers and programmers go too far. We all know the flaws of webdesigners so I won't bother with that. But programmers often disregard graphic design and flare their nostrils at anyone with the gall to use an old browser. Designers were often ridiculed, but programmers were often righteous. What wasn't valued is that designers knew HTML hacks that could make the page more usable and more accessible where it normally wouldn't be.
Now think about that - more usable, more accessible, and only when using inelegant hacks. The code doesn't look pretty, and the validator doesn't like it, but it works better for people.
And now back to WaSP's urging user upgrades. The idea being that sites would assess the version of a browser and - if elderly - ask them to upgrade [as said in this WaSP article]. This was a good thing provided you could upgrade. The listed choices were Internet Explorer 5.5, IE 5 on the Mac, Netscape 6 (obligatory Mozilla link), and Opera 5. Now, anyone suggesting Netscape 6 is clearly out of their mind. And most people don't have the knowledge, or authority, to install software on the computer they use. And IE5.5 is slower than IE4... so for those on old hardware it's not a simple choice. And any platform that isn't Windows has few options.
WaSP's campaign has been enthusiastically received ("Write once view anywhere...Woo hoo!") and perhaps misread. Unfortunately the css fever around the web has swung web standards' crusaders to battle with those using tables. WaSP and A List Apart have fueled it and continue to try and mislead their audience:
"We've upgraded the design of A List Apart to comply with web standards, some of which (like CSS-1) date back to 1996. This, of course, is the year 2001"
Of course browsers didn't adopt the standard until late 1999, and they weren't at all stable until 2000. CSS-1 didn't include layout (floats don't count). There is no five year gap. We're not sitting on a perfect replacement that we just didn't notice. The reason it's not an option for any popular commercial website is because it's not an option for those that choose users over standards. Programmers caused as much user strife as any webdesigner ever did, all in the name of code purity.
For Governments wanting to have their code as a symbol of standards compliance (browser independent) it's a reasonable choice, as could be tables and providing a site that works in a few more percent of older browsers (in New Zealand, with 1/3 of people browsing the web, one percent is 13,000 people).
The idea is that standards are the future and hacks are the past. ALA suggest
display:none so CSS compatible browsers will hide the upgrade message (in clear violation of standards). Look to Glish's CSS layouts that exploit bugs in the IE5 CSS parser. With mediocre templating software the maintenance benefits of CSS can be equal to those of tables. CSS is the way out, but it's also reasonable to choose otherwise. Programmers should learn CSS and blend it into their sites.
WaSP were right up to a point. In the future all webpages will be coded to this way. But it's not today. It's not even this year.
Wake me when it's 2003.