All Aboard the IE8 Fail Bus

After installing the very first IE8 beta, and having it completely hose my Vista box at work, I was a bit wary about installing the latest releases of this as-yet-unofficial web browser. When IE8 was first announced, I thought there was a lot to be excited about. Microsoft appeared to finally be taking standard’s compliance seriously. They seemed to be a lot more open to what the problems with their browser were.

However, as things have progressed, I have less and less faith in Microsoft to finally put out a reasonable browser, let alone a good one.

IE8 does manage to fix a lot of layout issues. I have code that required some weird futzing with styles to make work in IE6/7, that actually render correctly on IE8. It’s still noticeably off of what either Webkit or Gecko would do, but generally it felt a lot closer than IE7 did. However, it’s still off, and if you’re really working on getting your layouts ‘correct’, then you’re still going to have to work around IE being non-standard.

It’s JavaScript engine comes a lot closer to the W3C standard than IE7, but while it implements a lot of methods it didn’t used to implement, it doesn’t appear to be implementing a lot of it correctly. For this, I’m going to pick on a relatively new feature that is appearing in all the new browsers, querySelectorAll(). John Resig, of the Mozilla Foundation, has recently implemented a test suite to test the implementation of this feature. Most browsers (at least nightlies) are passing in the 99%+ range. IE8, fails 54% of the tests.

Now, IE8 might be performing better in the latest internal builds at Microsoft, but I find this to be another huge failure of Microsoft’s. With WebKit and Firefox, I can grab a new build of those browsers every single day. I don’t, generally speaking, but I could. That is awesome. Microsoft has already identified that IE isn’t a money-making proposition (at least not directly), in that they supply it free with the OS. And one consistent issue I’ve seen in the bug-reporting forums for IE8, is that often Microsoft comes back with a response as simple as “Oh, we’ve fixed that already in the latest build.” That statement isn’t always true, mind you, but how much time could Microsoft save themselves if they just released a new IE8 build every week?

It probably isn’t that simple, given how the fact that IE seems to be frighteningly tightly bound into Windows, but Microsoft needs to take things a step further in how tightly they work with their users. Right now, I’m finding bugs that are on a version at least a month old. I have no way of knowing if those are fixed, aside from Microsoft’s word, which may not be completely accurate.

IE8 is shaping up to be an improvement, but an immensely disappointing improvement compared to what many of us were expecting. Maybe that was unfair on our part, but I think we’d all be a lot happier if Microsoft just adopted an existing Open Source rendering engine and built IE around that (they could probably even keep their crappy ActiveX, too). Oh well, maybe for IE9…