Aaron Swartz wrote a thought-provoking weblog entry about Jon Postel’s famous advice to “be liberal in what you accept, and conservative in what you send”. Once removed from its usual protocol-design context, one of the first things it made me think about was web-page design. The issue of designing for different browsers, each with their different special features and quirks and levels of adherence to various standards, is one that comes up constantly. On one side you usually have people who think any new feature is worth using, and to heck with anyone using an “obsolete” browser or one that doesn’t conform to the latest greatest standards (including the “de facto standard” of what’s most popular). On the other side you have people who think it’s a crime to use any feature that didn’t exist in 1996, because some people are still using browsers that old. These are the kind of “competing imperatives” that often characterize technical matters, and there are all kinds of in-between positions that make more practical sense than either extreme.

One important thing to remember in this case is that users have relatively little control over their browsers. They can only choose from among a small fixed set of alternatives. Web authors, on the other hand, have almost infinite control over the content they produce, and it is to them that the liberal/conservative maxim most applies. If there’s a bug in a particular browser, but that bug can be worked around by presenting content in a slightly different way, implementing the workaround is worth it. Unfortunately, there seems to be a growing community of “Internet Explorer haters” out there who refuse to accomodate the most common browser in the world. Interestingly, many of these very same people can often be found screaming bloody murder about pages that don’t display properly in their two-day-old custom build of Mozilla. Tell them about a layout flaw in their own pages, though, and their first response is “what browser do you use”. If the answer is IE, they just won’t bother fixing the problem. Sure, IE has bugs. So does Mozilla. So does Opera. Every browser will have bugs, from now until the end of time. The question in any web author’s mind should not be whether a reader has made the “right choice” of which browser to use, but whether there’s an alternative way to lay out pages that will work better for them without affecting others. There usually is.

FYI, I check pages on this site using IE and at least one other browser – usually Opera because it’s easiest to install and has a reputation for being one of the most standards-compliant browsers. I’m sorry that I don’t use the same browser you do, but if you let me know of a problem I’ll generally either find a way to fix it or at least explain why a fix would be too difficult to implement.