No browser left behind

by Caleb

Warning! This is a geek rant. If you don’t care, save your sanity and skip to the next post.

The more I have learned about developing for the web, the more I have become and advocate of accessibility. The whole point of the World Wide Web has been to get as much information out to as many people as possible in a cost effective manor.

For a website creator, this means a never ending basket of headaches as browsers and standards come and go. One of my favorite banner adds of all time was put out a few years ago by WaSP and goes something like this. “Your boss wants a website. He asks if you know the standards. You do. All 37 of them.”

Somewhere along the line a thought was introduced in the world of the web that accessibility meant that developers should insure that all browsers show their users the same thing. I believe this concept to be patently false. I do not have a perfect definition, but I think a better one would revolve around the concept that any user, no matter what their resources, should have some form of access to your content. “Pixel Perfect Design” is a nice idea, but first make sure people can get the info if they need to.

Their resources may be an old Windows 95 based PC laptop, a cell phone, or the latest Power Book from apple. I do not think the users preference in browser or phobia towards software updates should be considered “resources”.

A user of mine recently provided a case-in-point for this concept. While they had a spiffy new Windows-XP machine capable of running the latest versions of Internet Explorer, Firefox or Opera, their browser of choice was Netscape 6. Point Oh. Point Oh. Even better, a copy of Netscape 4.x was kept around for handy reference. To complete the menagerie, their IE had never been patched or updated.

The result was a machine that almost completely failed to display anything useful when pointed to a site of mine that uses CSS for layout, Dojo for Ajax-ness, and Google’s javascript map API for a good portion of it’s content. The broken version of IE displayed a large what nothing; the Netscape – a few broken boxes and a javascript error. Curiously enough, the oldest browser proved the most useful. Since it completely ignored the style sheets and active components, it was able to display a simply formatted version of the page content including useful pieces of information such as the business phone number. It was unable to use the map, but as the map was more of an accessory to the main focus of getting people to call and make reservations, it was not the end of the world.

In a positive example, I have always been amused by the nVidia driver download page. While the site typically relies on interactive javascript menus, one of the first elements on the page is a text link to UNIX video drivers so that browsers such as lynx (text console based) are able to access drivers. Since this needs to be done on most UNIX systems before you get a graphical environment in which a good browser will run, this was a smart move. I think there are much more elegant ways of formatting “degradable” content, this is still accessibility.

I still go to considerable effort to support some old browsers, This is because in some cases, old browsers are the latest thing available on a platform. The world of Mac OS9 is one example. IE 5.5 mac seems to be the latest and greatest that these people have access too, so I do my best to make content available to it. I whine and gripe and fuss, but I usually do it.

The very first release of IE6 is another story. Since there are so many service packs and patches available for this that everyone SHOULD have anyway, I never spend any time supporting it. The same goes for any version of Netscape. If your phobia against upgrading makes you want to avoid versions 7 and 8, at least get the latest build of 6! It is no accident that vendors release dozens if not hundreds of patches and updates to browsers (and other software) along it’s life span.

The other half to this argument involves the cost-benefit analysis. At some point, some older browsers represent such small market share and large cost of development, that supporting them makes no financial sense. Again, the goal of the WWW is to get as much information out to as many people as you can in a cost effective manor, not to get the information out to everyone at any expense.

If another 5 hours of development time can make your content and the users experience better for 95% of your audience, why spent 5 hours making sure .2% are getting equal share. This is most obvious when you realize that the .2% can probably fix their own problem anyway.

Consider the analogous situation of the minority of users that cannot dial long distance or even 800 numbers from their phones. Instead of all the big companies getting local numbers in every calling zone in the US so they don’t leave anyone behind, it is more cost effective for them to make an 800 number available and put the saved money into advertising to pick up more of the customers that CAN place the call.