Browser Support Is Too Hard
July 17th, 2008
Supporting multiple browsers is too hard. I give up. From now on, I will only support the latest browser. No, not the latest version of each browser, but rather just the most recently released browser. For now, I will support Firefox 3 as it was just recently released. Safari 4 is in the works, so when that comes out I’ll update my apps to that. Also, I’ll be sure to add sniffers and detectors to redirect you to an unsupported browsers page. The next browser I support after that will probably be Internet Explorer 8. Actually, Webkit has nightly builds. I’ll just only support the latest nightly build of Webkit.
Hopefully, by now, you realize that last paragraph should be wrapped in a <sarcasm> tag. It seems like browser support, or rather lack there of, has been a hot topic amongst developers lately. I don’t have much to say but let me present with good and bad examples of handling browser support.
Good Example

Recently, 37Signals announced that they will be discontinuing support of Internet Explorer 6 in their products. The first thing they say in the post is when support is discontinued.
On August 15th, 2008 we will begin phasing out support for Internet Explorer 6 across all 37signals products.
Then they explain the implications of this decision.
If you are using IE 7, Firefox 2 or 3, or Safari, you don’t have to do anything — everything will continue as is for you.
Lastly, they explain why they made the decision.
Supporting IE 6 means slower progress, less progress, and, in some places, no progress. We want to make sure the experience is the best it can be for the vast majority of our customers, and continuing to support IE 6 holds us back.
I don’t know how intentional the order of that information was but it is pretty smart. The first thing people care about is when and what. They get that out of the way to assuage the fears that any may have that a product they pay for can no longer be used. Once they get those immediate needs covered, they discuss the why. People don’t care about the why until they know how it affects them.
IE 6 is an extremely outdated browser. It has performance issues and a newer version has been out since 2006. There is absolutely no reason to support IE6 for web applications anymore. 37Signals made a good decision and properly communicated it to their customers.
Bad Example

With much hype and excitement Apple recently launched MobileMe. Being a fanboy, I fired up my browser and signed up. Once into the app, I quickly became frustrated because nothing I clicked seemed to do anything. I know how the web works but I couldn’t get anything to do anything. Then it hit me. I wasn’t in Safari, I was in a version of Webkit (the engine that powers Safari). I closed Webkit and opened up Safari to find that everything worked. All the problems I had went away. Also, open up the app in IE7 and you get this message.

I can understand not supporting IE6 but IE7? Granted they say you can still use it but that it just doesn’t work as well.
Internet Explorer 7 has known compatibility issues with modern web standards which affect Web 2.0 applications such as MobileMe.
To me that is a total cop out. Maybe IE7 won’t perform as well but it is not so difficult to support that a message needs to be shown and users should be forced to click continue to actually use the app.
On top of the IE7 stuff, there are several little things that bother me about MobileMe. In an effort to make it feel more desktoppy, some normal web expectations were thrown to the wayside such as tab indexes and text selection.
</rant>
Go ahead and drop support for IE6 in your web app. You deserve a break from it, but IE7? IE7 is not that difficult to support. There are several ways to skin a cat (or so I’ve heard) and usually one of them will work in all the major browsers.


