The most modern browser there is: Internet Explorer 9 reviewed

When Microsoft first introduced Internet Explorer 9 at PDC in November 2009, it didn't show much. A few benchmarks, some talk about the technologies that the browser would use, and a little information about the direction that development would take. But it was a significant event nonetheless. After years of playing catch-up—the stopgap Internet Explorer 7 added tab support, and then the solid Internet Explorer 8, which offered little in the way of support for new Web innovations—Microsoft was starting to position its browser not only as good, but able to take on the competition and be best in class.

Microsoft set out to do four things with IE9. The browser had to be fast, it had to be standards-compliant, it had to be trustworthy, and it had to put the focus on sites and Web content, rather than the browser. Ars has been following the browser's development since the first public preview in March 2010, with extensive coverage of the beta and release candidate, but those major points are still worth looking at.

Focus on sites

Internet Explorer 7, and then Chrome, have ushered in a trend for stripped-down browser interfaces. Internet Explorer 7 ditched the menu bar by default (though this default was later changed), and Chrome took this design a step further by putting its tabs on top and all but abandoning the toolbar concept. Internet Explorer 9 builds on—or rather, subtracts from—the work done in previous Internet Explorer versions. Its interface is stripped down, clean, and simple. The intent is that the site should be the focus, not the browser frame. So tabs have moved alongside the address bar—though they can be moved below it if desired—the status and menu bars are gone by default, the toolbars are gone by default, and the icons on the buttons use new artwork.

The new pinned sites feature—allowing sites to be docked to the taskbar and for site developers to give those taskbar icons custom jump lists and overlays—extends this concept further. For example, if you pin Facebook to your taskbar, you get instant access to Facebook itself by clicking the icon, direct access to your news, messages, events, and your friend list through the jump list, and an icon overlay to show when you have new messages. Together, these make using Facebook more streamlined, and make it feel much more like a real application.

This is what happens if you pin Ars

Notifications within the browser have also been made substantially less intrusive, again with the intention of preventing them from interfering with the site experience.

Overall, it's a good look that does what it's supposed to—it keeps out of your way. While I think it will work well for many, it does still fall some way short for those placing more extreme demands, however. It lacks any direct equivalent to the "pinned tabs" found in Firefox and Chrome; these tabs occupy less space than regular tabs, making them convenient for persistently-open sites. The new tab management facilities in Firefox 4 also have no analog in Internet Explorer.

High performance

Browser performance is a complex, multifaceted thing. Headlines are made with JavaScript performance, but there's more to a browser than its scripting: reading and understanding HTML, drawing graphics on-screen, laying out text, and so on. Work has been carried out in all these areas to make IE9 a truly fast browser. Chief among these improvements are a new JavaScript engine, named Chakra, and the use of the GPU for handling drawing tasks. In both cases, these are designed to exploit the capabilities of a modern PC. Chakra is multithreaded, compiling and optimizing JavaScript in a secondary thread, while allowing the primary thread to start executing the script directly in the meantime. The GPU acceleration makes use of hardware accelerated Direct3D rendering (via Microsoft's Direct2D layer) to handle all the browser's drawing tasks.

Mozilla and Google are both developing similar hardware acceleration for Firefox and Chrome, respectively. Chris Blizzard, director of Web Platform at Mozilla, even tweeted that he bet Firefox would ship GPU acceleration first. He bet wrong; Internet Explorer 9 is the first stable browser to reach the market with extensive, broad-based hardware acceleration. Firefox 4 (due in a few days or weeks) will add GPU acceleration support too, and Chrome 11 (currently in beta) should provide broad GPU acceleration too—but as things stand, Microsoft is going to be first to market with a widely accelerated browser. The company has raised the bar on what's expected in a browser, and it's no great surprise to see Mozilla and Google go down a similar path.

The hardware acceleration also makes pages look good. For drawing text on screen, Microsoft is using its new DirectWrite subsystem. DirectWrite strives to reproduce fonts more faithfully than the system used in older versions of the browser; it tries to create something closer to the font designer's intent, rather than shoe-horning the letter shapes into the pixel grid used on-screen. Mac OS X (and Safari on Windows) also takes this faithful approach, though Apple seems to take it even further than Microsoft has. This has divided opinions during the beta process, with some finding the browser makes certain text look very fuzzy, especially for text that isn't black-on-white. With the video card and monitor I use, and the sites I visit, it looks fantastic.

Standard support

Microsoft's mantra throughout IE9's development has been "the same markup." As anyone who's written a webpage will attest to, the normal approach to Web development is: write the page once, check it out in a bunch of browsers, then tweak it endlessly so that it actually looks the same—or at least, passably similar—in every browser you care about. Standards compliance is the best weapon Web developers have against this kind of proliferation. To that end, Microsoft has taken great strides in making IE9 a standards-conformant browser. This means not only making its behavior match against the specification; it also means working to ensure that the specifications themselves are clear, bug-free, and have proper tests to go with them.

To that end, Internet Explorer 9 contains broad support for a range of new standards that have been lumped under the HTML5 banner; plug-in-free video and audio, bitmap graphics using canvas, vector graphics using SVG, embedded fonts using WOFF, and so on. This work has made the browser a far more attractive platform for developers that's far closer to the state of the art.

In many ways just as important as the browser's support are the many hundreds of tests that Microsoft has submitted to the World Wide Web Consortium (W3C), the group that creates Web standards. These tests allow easy comparison of individual features in different browsers, to verify that they do all implement the specification, and more to the point, implement it with the same, predictable behavior. Over the long term, these test suites will help browser vendors minimize the differences found in their browsers, allowing developers to spend more time creating exciting websites, and less time trying to get their pages to look correct.

In contrast to the other browser developers, Microsoft's approach to standards support has been conservative. The company doesn't want to ever have to remove or fundamentally modify a feature that it has implemented due to changes in specifications. As such, it has taken a policy of only implementing those specifications that are unlikely to undergo any further changes. As a result, Internet Explorer 9 will compare unfavorably on sites like HTML5 Test, but Microsoft views this as far preferable to making developers have to alter their real-world applications just because a specification has changed.

I rather like the interface, personally, but I had a lot of issues with certain pages just not working with the beta. Maybe the final version has fixed that. I also simply don't understand the lack of built in spell check, given that they have this code already in Office. Auto-fill is also a glaring omission from the interface. Fix those two things and I might be able to switch.

People complain about how IE9 doesn't support XYZ in the HTML5 spec, however, they have to realize that if IE implements something, it's extremely hard to change it, even Microsoft, if a specification is incomplete. No one wants to end up with another IE6 where special hacks are required to render HTML decently. That's why things like WebGL aren't included because that spec just got finalized less than a month ago.

The web will be a much more wonderful place when IE9 makes up the majority of IE marketshare and IE6 is officially dead.

I am floored that Ars would allow such an article to appear as is. There are so many falsehood and misperceptions, I'd think it was written by Microsoft's PR department. When IE9 can't pass half the HTML5 tests any other browser can pass, how can it be called "the most modern browser"? http://goo.gl/5nxYQ

Oh, wait! Give it a week or two. IE9 will be relegated to its normal place of "years behind the others" when FF4 is released.

I am floored that Ars would allow such an article to appear as is. There are so many falsehood and misperceptions, I'd think it was written by Microsoft's PR department. When IE9 can't pass half the HTML5 tests any other browser can pass, how can it be called "the most modern browser"? http://goo.gl/5nxYQ

Oh, wait! Give it a week or two. IE9 will be relegated to its normal place of "years behind the others" when FF4 is released.

The article covers the fact that it can't pass half the HTML5 tests other browsers can pass, and explains pretty clearly why this is a GOOD thing rather than a bad one. Supporting features that are in flux isn't a good thing, as it encourages developers to create websites that depend on the implementation they've chosen rather than on one that meets standards when HTML5 is finalized, so that when HTML5 finally is ready the browser developers have to choose between either ignoring what has become the actual standard for the sake of compatibility with existing websites or breaking any websites built for what the browser had supported.

Given that one of the biggest criticisms of Microsoft's prior browsers was that they weren't standards-compliant, I think it's unfair to attack them for the kind of standards-mindful foresight involved in not supporting features of HTML5 that aren't finalized. Doing otherwise just makes it seem like you're criticizing IE because it's IE, not because it's actually doing anything wrong.

It sounds very bare-bones to me. I have it installed on my Mum's computer, because she has never used anything else and yeah, it's fast, it doesn't lockup, it works. Fine, great even. A browser good enough.

But I like mouse gestures on Opera, I like the way I can browse efficiently with different click combinations and movements. I like addons on Firefox, I like being able to run noscript and adblock pro and the whole myriad of options available. Same with chrome.

You have your insightful moments Dr Pizza, but other times I feel as though I'm reading things which have come straight out of the MS propaganda mill. Wasn't you who wrote an article not so long ago saying that "Modern" was a highly subjective term with no real relevance for the comparison of browsers? I amazes me that you get away with some of your article titles, I feel as though I'm reading a British tabloid, rather than a respected tech news site.

[qoute] It's also a little disappointing that the 64-bit version is less polished than the 32-bit version. It can't be made the default browser, and it doesn't include the new, high-performance scripting engine. [/qoute]

maybe you're using the 64-bit version?

I always use IE because it DOESN'T have a download manager, I want to run install programs straight from the web, not open up the download manager and install them from there, just a bunch of extra clicks.

You have your insightful moments Dr Pizza, but other times I feel as though I'm reading things which have come straight out of the MS propaganda mill. Wasn't you who wrote an article not so long ago saying that "Modern" was a highly subjective term with no real relevance for the comparison of browsers? I amazes me that you get away with some of your article titles, I feel as though I'm reading a British tabloid, rather than a respected tech news site.

I read it entirely as a tongue-in-cheek reference to his earlier articles, and by one measure, the RTM version of IE9 is the most modern browser there is. Just like Firefox 4 will be when it releases.

I'm blown away how fast it renders pages. I only briefly played with a few of the previews and never used any of the IE9 beta's or release candidates so this is really my first go using the full browser and the speed is incredible. It has even managed to make SharePoint sites seems fast, which is mind bioggling .

I always use IE because it DOESN'T have a download manager, I want to run install programs straight from the web, not open up the download manager and install them from there, just a bunch of extra clicks.

The window you clicked on the download in also gets a little pop-up at the bottom allowing you to cancel, save, or run the download, so you don't have to go to the download manager if you don't want.

Unfortunately, my work computer (including all 2000 people in my Department) are using XP. I have one XP machine at home, but my wife is upgraded to Win7. XP still has something like 55% windows market share. While I applaud microsoft for making a better browser, Firefox 4 will be available for:

Supporting features that are in flux isn't a good thing, as it encourages developers to create websites that depend on the implementation they've chosen rather than on one that meets standards when HTML5 is finalized

Plus, this really only applies to IE. It doesn't apply to Chrome, FF, or Safari because IE is the defacto corporate browser. PHB IT managers and directors will read the press release and see feature X, Y and Z have been added to the latest IE browser. Then they'll run to their developers and demand features X, Y and Z implemented in their corporate apps when they upgrade browsers. Even if the standard behind features X, Y and Z aren't finalized or aren't in other browsers, they'll want it. So by putting the standards that aren't finalized yet into the IE9 "prototype" framework, Microsoft is doing more for pushing standards forwards than it ever has before - developers can play with new features and give feedback, while PHBs don't get a wild hair up their ass to implement some feature that isn't standard yet or only works in IE.

While I agree that the article does sound just a little bit like a press release, the improvements over previous versions of IE are so vast that it's kinda hard to not sound that way.

I'm also at a loss to understand why some people think that not implementing every single little experimental feature is a bad thing. MS is opting to provide stability in the full release while giving optional prototype implementations to help test out the standards. I just don't understand the concept of releasing experimental features in a full release while expecting people to NOT depend on the current implementation. Regressions, unlike what the likes of Google (I'm picking on them here because it's the first example that came to me, not because I don't like Google) may think, are a huge nightmare.

As a user this looks cool and I look forward to playing with it. Unfortunately as a QA person it's yet another browser that needs to be tested. If you are testing a big name international site like I am in the middle of right now you still have to deal with IE6 (Thanks China) and even Opera (Thanks Russia).