Marco.org

I’m : a programmer, writer, podcaster, geek, and coffee enthusiast.

Dropped IE support for Instapaper

Update: This has been frontpaged on Hacker News and I’ve posted Instapaper’s browser usage stats.

Doug Langille is annoyed that Instapaper now displays a notice to IE users telling them that the IE experience is degraded and they should upgrade to Firefox or Safari to use Instapaper:

First, is it really all that hard to code for IE? With most internet users using some version of IE, this seems technocratic and borders on elitist.

Here’s how this development worked: I wrote the entire layout for Firefox and Safari. Since IE is not cross-platform, and my development platform is OS X, I wasn’t able to test conveniently as I went along. By using very basic markup and some pretty unchallenging CSS, I was able to achieve a pleasant, simple interface without the use of many images or hacks.

Then I went to test in IE7. I knew it wouldn’t support the rounded corners. Getting it to support rounded corners isn’t graceful, and it’s a pile of hacks that I’m not interested in implementing or maintaining.

I didn’t expect it to break so badly on a pretty trivial float arrangement. So I added a special case to make it look good enough.

Windows XP (don’t know about Vista) excludes a pretty big chunk of Unicode in the system fonts, including the BLACK STAR and WHITE STAR glyphs. So I couldn’t use the star character for the new starring feature, as I had done during all of development — I had to take screenshots of the glyphs and replace the characters with images. This is ridiculous in itself, but it applies to any browser on Windows XP, not just IE.

Depending on what you’re doing, making your site work in IE can range from a minor annoyance to an epic nightmare. It requires more special cases and hacks than any other browser by far. It puts a huge burden on web developers because Microsoft is either too lazy, too incompetent, or too malicious to even bother trying to conform to the same standards that every other browser has supported for many years.

This just reeks of old Mac fan-boy logic. If it runs on Apple technology, it’s golden. If not, it’s junk. It’s not quite ABM (Anybody But Microsoft), but the net effect is the same.

Fanboyism aside, this is purely a practical concern. I don’t have the time or resources to track down every IE incompatibility and maintain perfect feature and layout parity.

Even if I had the resources, it’s completely not worthwhile for me to do so. Historically, from my server stats, most Instapaper users don’t use IE. It represents less than 10% of all visitors to the site and almost no registered users. This is probably because of two big factors:

I agree that IE has some serious shortcomings, but each successive version does get better.

I agree. But it’s still not good enough to overcome my reasons to skip IE support. “Better” doesn’t mean “good” — in this case, IE7 is just less horrible than IE6 for web developers. And from what I know of IE8, it’s the same progression: less horrible than IE7, but still not good.

I shouldn’t have to perform application gymnastics to use a website.

IE compatibility requires web developers to perform far more gymnastics than a user running two browsers. For many sites, it’s worth the developers’ time to perform these stunts. But not for mine.

The third level builds off the second. Ever since the beloved iPhone/iTouch came out, my Blackberry (also an enterprise decision for my work) has become a developer’s wasteland — a second-class citizen. You can get an iPhone app for everything I can dream up, including Instapaper and Tumblr, but can I get one for my Blackberry? Nope. Nada. Zip.

Again, it’s an issue of resource allocation and priorities. I can develop a great iPhone app because I use the iPhone every day and intimately know the platform. I’ve never used a BlackBerry in my life, so I wouldn’t be able to make a great app — and I don’t have the time to develop and maintain it along with the website and iPhone app.

Geeks are developing cool things for the iPhone because it’s the platform they use. Like it or not, a lot of developers of consumer-facing applications and websites now use iPhones and Macs. Many people have the same limitations as me: they just don’t have the time, resources, or motivation to develop applications for platforms they don’t use. And you wouldn’t want them to. They wouldn’t eat their own dog food. The resulting products would be horrible.

Whether niche players dare to admit or not, Microsoft and its kin are 800 pound gorillas not just because they are big bad bullies. They are wildly popular and the default choice (even if by ignorance) of the majority.

Not the majority of Instapaper’s users.

If supporting IE was easier, I’d gladly keep doing it. But I’m not willing to hold up development of everything else I’d like to implement to make up for Microsoft’s unwillingness to make a standards-compliant browser and benefit such a tiny portion of my userbase.

At some point, you have to decide to stop supporting old, expensive cruft. It was a cost/benefit decision for your IT department to standardize on IE in the first place, and I bet you made that decision for good reasons. I hope you can recognize that I made my decision based on similarly sound analysis, and I stand by it.