Internet Explorer 9 beta review: Microsoft reinvents the browser

Microsoft officially unveiled Internet Explorer 9 today. It is, without question, the most ambitious browser release Microsoft has ever undertaken, and despite the beta label it is an impressively polished product. Is it fast enough? Is it compatible enough? Is it cool enough to win back former IE users? Here's my hands-on report.

Today in San Francisco, Microsoft will officially unveil Internet Explorer 9 and make it available to the general public. It is, without question, the most ambitious browser release Microsoft has ever undertaken, and despite the beta label it is an impressively polished product.

The underpinnings of IE9 are no secret. Microsoft has been talking since last fall about its determined effort to adhere to Web standards and embrace HTML5. It has also detailed its efforts to improve IE9's performance compared to previous releases. Developers and IT pros have been able to shake out compatibility issues and benchmark performance with four public platform previews over the past six months. But this beta is the first time Microsoft has publicly shown off the new browser's user interface and given its Windows customers a product they can use day in and day out.

I sat down with Dean Hachamovitch, General Manager of the Internet Explorer division, earlier this month for a first look at the IE9 interface and a discussion of Microsoft's goals and its competition. Since that meeting, I've been using the IE9 beta extensively on multiple PCs, including my primary desktop and notebook computers. Based on that experience, I have some preliminary answers to the questions you're asking: Is it fast enough? Is it compatible enough? Is it cool enough to win back former IE users who have switched to other browsers, first to Firefox and more recently to Google Chrome? And will this shiny new browser be able to rehabilitate the tarnished Internet Explorer brand?

Here's my report.

With Internet Explorer 9, Microsoft is trying to make the browser disappear.

Not literally, of course, and not completely. In a world where PC users spend more time on the web than on any other task, and where apps are increasingly moving online, being able to quickly and accurately render HTML markup and execute script is more important than ever. But the notion that rendering a web page has to be done in a branded browser is old-school thinking, according to Microsoft.

In four earlier platform previews, aimed primarily at developers, Microsoft has already shown off some of what it's delivering in IE9: dramatically improved performance, thanks to hardware acceleration and an improved JavaScript engine, along with a relentless emphasis on compatibility with modern web standards.

The missing piece is the previously top-secret IE9 interface, which Microsoft publicly unveiled today. When I asked Dean Hachamovitch, General Manager of the Internet Explorer division, what drove the design of the new UI, he described the guiding design principle with a question: "How can we quiet the browser so that the site shines?" The answer is in the screenshot below (click to see full size):

What's different? Compare that IE9 page with the same page shown in IE8—and most other browsers, for that matter.

The most obvious difference is what you don't see on the screen. For starters, there's no branding beyond the logo on the Taskbar button—the familiar blue E. There's no text or logo in the title bar, nothing that screams or even whispers "Internet Explorer." Like Windows Explorer, the browser's primary role is to be a frame that hosts content as unobtrusively as possible.

All but the most essential interface elements in the browser have been removed or hidden in IE9, by default. As a result, the contents of the site you're viewing don't have to fight with logos, toolbars, menus, and buttons. There's no search box in the upper right corner. The command bar and Favorites bar are hidden. There's no status bar along the bottom. The Refresh and Stop button are in gray instead of color, and three gray buttons in the upper right corner offer access to the Home page, Favorites, and Tools, respectively. (All of those buttons change to color if you pass a mouse pointer over them.) Tabs for open pages are smaller, crisper in design, and located in a band to the right of the address bar. The only element that's bigger and brighter than its predecessor is the blue Back button in the top left corner.

I get into the nitty-gritty of the IE9 user interface in more detail on page 3 of this report, but a few high-level details are worth noting here. In the interest of "quieting the browser," warnings and dialog boxes no longer pop up and demand your attention. Instead, notifications and action buttons appear in a discreet bar along the bottom of the window, where you can address them at your convenience. In IE8, these warnings and notifications (of blocked pop-up windows, for example) appear as dialog boxes that interrupt the task at hand. Downloads are the same way. In IE9, all of those interruptions appear at the bottom of the window, where you can defer your decision (or ignore a warning completely) while you continue to browse. The notification shown here is tied to a simple but effective download manager.

Tab management in IE9 has a few new touches, including the ability to tear off tabs and drag them into a new window or dock them to the side of the display.

Like Google Chrome, IE9 combines the address bar and search box into what Microsoft calls a Private OneBox. Bing, not surprisingly, is the default search engine (you can change that setting), and if you turn on Bing suggestions the address bar does an admirable job of sorting through your history, favorites, and live search results as you type:

The most interesting innovation in IE9, and the one that has made the greatest impact on me as I've tested IE9 over the past two weeks, is a new feature called pinned shortcuts, which allows you to treat a favorite website as if it were an application.

There are many, many security improvements on top of those already in IE8. In the beta that I reviewed, several of those features (which depend on server-side code) were not yet enabled. I will cover those in a future post.

Oh, and IE9 feels wicked fast.

A few caveats are in order before you head off to try out the new browser. It's still a beta, and even in the final release you can expect compatibility issues with some websites (I explain why those issues are inevitable in the discussion on Page 4). IE9 works best with Windows 7, and can be installed on Windows Vista with Service Pack 2. For a variety of reasons, it is incompatible with Windows XP, and that situation will not change between now and the final release.

Treating websites as apps

The most useful innovation in IE9 is the introduction of what Microsoft calls pinned shortcuts. The idea behind this feature is straightforward: you open a website in an IE9 tab, then drag its icon from the address bar (or drag the tab itself) onto the Taskbar, where it's pinned just like a program. The result is a shortcut that uses the site's favicon instead of the generic IE icon. Here's what it looks like in action:

On the Windows 7 taskbar, pinned website shortcuts look exactly like app shortcuts. If the site developer has uploaded a full-size favicon, the pinned shortcut looks exactly like a locally installed program. The section of the Taskbar shown here includes a mix of standard apps and pinned shortcuts. Note the full-size Amazon icon at the right side of the bottom row. The ZDNet icon above it shows what happens if you visit a site that uses a small favicon.

Philosophically, these special shortcuts represent a way to divide web content into two distinct types. For basic browsing, you can save a site as a favorite, which is an ordinary shortcut that opens in an ordinary Internet Explorer window, with its tab identified by the IE icon on the associated Taskbar button. Sites that you pin to the Taskbar, however, behave differently. Two visual differences are immediately obvious. First, the back and forward buttons shift slightly to the right, and the favicon for the site appears in the newly vacated space. And second, those navigation buttons pick up the predominant color of the favicon, just as program buttons in the Windows 7 Taskbar pick up the icon's color when a mouse pointer passes over them. This screen shot shows the difference the page at top was opened in a standard IE window, and the one below it was launched from a pinned shortcut.

In IE9, the custom color and the icon in the top left corner provide immediate visual feedback that helps you figure out where you are. That big red ZDNet icon and the bright red navigation buttons are hard to miss. That icon isn't just decoration, though: click it and you go back to the URL that's pinned to that shortcut. The Home button on the right isn't available; the site icon becomes a custom Home button just for that pinned site. Developers can define a site so that it uses its own custom Jump lists when pinned to the Windows 7 Taskbar. I haven't seen any such Jump lists "in the wild," so this example comes from a Microsoft mockup.

The rest of the browser interface remains intact when you use a pinned shortcut. The Favorites and Settings menus are still in their assigned place. You can also open new tabs in the same windows as the pinned site, a feature that initially had me concerned. The point of promoting specific sites is to help those sites stand out, not just to arbitrarily create extra tab groups. But in practice, I've found the design useful, even addictive. It didn't take long for me to begin creating groups of three or four related tabs for a common activity. For example, I have my blog's home page pinned to the Taskbar, and I usually open Google Analytics and the WordPress dashboard for the site. Keeping those three tabs in a single group makes it easy for me to click the ZDNet icon on my Taskbar and find one of those tasks, which previously were scattered among dozens of open tabs.

If you're a power user of Google Chrome, you will immediately spot the similarity between IE9's pinned shortcuts and Chrome's Application Shortcuts. Both browsers allow you to save a shortcut to a URL that is in turn saved with the site's icon. When you click that icon, the associated browser opens in its own window, with a separate process dedicated to it. The idea is to give that web page its own place and its own icon on the Taskbar so you can find it quickly instead of having to look through every open browser tab to find it. I've used Chrome application shortcuts for Google services like Mail and Reader, where they shine.

So, are IE9's pinned shortcuts a ripoff of Chrome's Application Shortcuts? Once you get past the surface similarities, there are some crucial differences. In Chrome, that shortcut opens a single page with no tab indicator. So, you can assign Gmail to a shortcut and open it with a single click, but you can't open new tabs in that Chrome window. If you click a link, it replaces the current page or opens in a new window. In fact there's no tab bar at all, nor is there a back button (although you can right-click and choose Back from the shortcut menu). The settings menu is gone too. The result is that Google app shortcuts work just as well as IE9 pinned shortcuts for single pages that you want to run as if they were an app: your web-based mail service, your WordPress dashboard, a corporate portal. But IE9's ability to group tabs within that window gives it an edge for my usage scenarios.

In the IE9 beta, there's one significant technical difference between a regular Internet Explorer window and one that's been opened using a pinned shortcut. Any add-ins installed for IE are unavailable for the pinned site window. In my daily use, that's been annoying, because it means I can't use the handful of IE add-ons I rely on. I can use IESpell to check for typos in a blog post, but not if the WordPress editor is running in a pinned site window. And the indispensable LastPass password manager works in regular IE9 windows but is simply unavailable for pinned site windows. Microsoft says this behavior is by design, and will affect all add-ons (but not accelerators). I plan to ask some add-on makers how they plan to deal with this headache.

The new user interface

Many of the key decisions that define how IE9 works were made, literally, by the numbers. Microsoft has mountains of real-world data from its opt-in Customer Experience Improvement Program for Internet Explorer 8, drawn from hundreds of millions of sessions from tens of millions of IE users. Mining that data allows planners to figure out what Windows users do (and don't do) when browsing, and they can test hypotheses and feature refinements in the field and in formal usability lab testing.

Microsoft shared some of those numbers with me. It's shocking to see exactly how unpopular some well-established power-user features are among the public at large. For example, I love the Quick Tabs feature in IE (which displays thumbnails of all open tabs), but that puts me in an elite group—only 1.7% of all IE users ever use this feature. By contrast, 73% of IE users have hovered on the Windows 7 taskbar button to find a tab, and 59% have closed a window using the close button on one of those Taskbar thumbnail previews.

In that spirit, one of the biggest changes the IE9 designers made was to hide the command bar and replace it with this pared-down Settings menu.

The classic full menus (Page, Safety, Tools, and Help) are still available with a tap of the Alt key. This shortened menu should make those menus unnecessary for the great majority of common tasks.

With that data-driven approach to identifying and refining common tasks, it's understandable that there are few new power-user features in IE9. In fact, if you like to push apps to the extreme, you might decide that Microsoft has gone too far in "quieting the browser." I initially was surprised to discover that the Quick Tabs shortcut (Ctrl+Q) didn't work. After exchanging a few e-mails with Microsoft, I learned that Quick Tabs view is now disabled by default; you need to dig into the Internet Options dialog box to enable it (I'll explain how in an upcoming companion piece.)

I asked Roger Capriotti, Microsoft's director of IE product management, to explain why they made the design decision to hide Quick Tabs. He explained that the that they "intentionally 'demoted' the Quick Tabs feature due to the fact that Aero provides a much better way of finding and switching to the right open tab. With Aero Peek, you can actually see the full page so that you don’t have to rely on the thumbnail visual." He added, "It's still a beta, and we will continue to take feedback." Based on recent experience, though, I don't expect to see that feedback result in fundamental changes in the user interface. What you see in this beta is likely very close to what you'll see in the final release.

According to Microsoft's numbers, Favorites (aka bookmarks) represent another once-popular feature that has declined in usage. Only 18% of IE users have ever clicked on the Favorites bar, and only 1 in 100 have ever created a folder there. The result? The Favorites bar and Command bar are hidden in IE9, and you have to jump through some extra hoops to re-enable them. Except for a change of position (moving to the far right of the screen) the design of the Favorites menu is essentially unchanged from IE8.

Most of the time, according to Microsoft's data mining, you're browsing to a site you've already visited before. When you open a new tab in IE8, for example, the numbers say there's a 47% chance you'll just start typing in the address bar and use AutoComplete. For revisiting URLs that have been saved in the browser's history or as a Favorite, AutoComplete works very well, just as it did in IE8.

The new about:Tabs page, which appears by default when you open a new tab, makes it even easier to return to your most frequently visited sites.

Here, too, power users might scream at the lack of advanced customization options. From a design standpoint, that page is gorgeous: clean, consistent, easy to read. The colors in the histogram-style bars for each page are picked by sampling the site's favicon and indicate how popular each page has been. (I'm not sure exactly how the algorithm picks sites for this top-10 list, but in my testing, after a few days of frequent use it does a solid job of picking the sites I visit most often.) But the list is strictly mechanical. You can click the X to remove a tab (and add the next entry on from IE9's list to the top 10), but you can't change the order of tabs nor can you pin tabs here.

One of IE8's innovations, tab groups, remains unchanged in IE9. When you Ctrl+click a link (or right-click and choose Open In New Tab), the new tab opens to the right of the current tab, and both the original tab and the newly opened one pick up a shared distinctive color that identifies them as a group. You can continue that process, adding new tabs to your color-coded group. From the Favorites menu, you can right-click on a folder and choose Open In Tab Group, which opens all the shortcuts from that folder in a color-coded group, and you can right-click on a tab to remove it from the group or close the entire group. But the one thing you still can’t do with tab groups in IE9 is save that selection of blue or purple or orange tabs as a group. Given the numbers—Microsoft says only 15% of IE users have ever used this feature—that's an understandable, if disappointing, design decision.

In any other browser community, many power-user features might be handled with add-ons or extensions. There's no shortage of tab-tweaking extensions for Firefox, for example. But IE has never been a playground for writers of free add-ons, so the chance that a slew of power tools will magically appear shortly after IE9's release is slim indeed. (Developers, please consider that a challenge and prove me wrong.) The IE8 add-ins I tested worked without any hassles, except for the glitch with pinned sites that I noted on the previous page.

Performance

Trying to measure the performance of a web browser is tricky, because of the sheer number of variables involved. With page load times that are often measured in milliseconds, even momentary glitches in network performance can distort results and make test data unreliable. The presence of images, ads, and widgets, often loaded from different servers, can skew results as well. In one test session, for example, I found that pages from a very popular tech site took more than 10 seconds to fully load, regardless of which browser I used, because of issues with a third-party ad server. And then there's the markup of the page itself, which is often optimized for a particular browser.

I'm sure other publications with more sophisticated test platforms will try to overcome these obstacles and produce definitive benchmarks of IE9 performance. For this post, I can only describe my subjective experience and point to some widely used independent benchmarks.

I can describe the subjective part in one sentence: Holy crap, this browser is fast. For most pages, load times were quick, navigation was snappy, and it was impossible to measure differences between IE9 and rival browsers, even with a stopwatch. A handful of pages in IE9 did exhibit performance problems caused by compatibility issues—I discuss that topic more fully in the wrap-up on the next page.

The single biggest performance boost in IE9 comes from its support for hardware acceleration. Because IE9 runs only on Windows Vista SP2 and Windows 7, it can be tuned to offload some rendering tasks to modern graphics hardware, which often has more raw processing power than the rest of the PC. (Microsoft claims that current browsers use only 10% of a PC's power, which might be a bit of hyperbole.) It's clear from daily use, though, that hardware acceleration really does make a difference in rendering text, images, and graphics. As a result, Microsoft finds itself in an unaccustomed position, out in front of other browsers, which are furiously trying to play catch-up. I tested the IE9 beta alongside Firefox 4 beta 5, which was released in September 2010 and is the first Mozilla offering to support hardware acceleration. I also tested it against the most recent beta of Google Chrome 6, which doesn't use the GPU for rendering. (Google has reportedly placed that feature on its roadmap for Chrome 7.)

The biggest performance differences, not surprisingly, were apparent on Microsoft's own graphics-oriented tests at its IE Test Drive site. On the FishIE Tank example, which uses the new HTML5 Canvas tag, here's how the three browsers compared:

IE9's frame rates stayed high as I kicked up the number of animated fish in the virtual tank. Performance remained smooth and glitch-free even when I moved the window across multiple monitors and docked it to the side of the display using Aero Snap. Firefox 4, by contrast, was able maintain high frame rates for short bursts, but moving the browser frame caused performance to plummet and even froze the display for long periods. Using Firefox, frame rates plummeted dramatically when I selected the most demanding settings (500 and 1000 fish). Chrome, of course, was at unfair disadvantage because of its lack of hardware support. Its frame rates were well below either competitor, although it moved smoothly around the screen without any negative impact on other programs or Windows itself.

For a more independent performance test, I enabled all three browsers for YouTube's HTML5 channel and tried playing a handful of high-definition videos at 720p and 1080p resolution. All three browsers performed admirably within a window and at full-screen resolution. IE9 and Chrome 6 were able to maintain full-fidelity playback even when tearing a tab out of the browser pane and dragging it to its own window. Firefox 4, on the other hand, failed this test, stopping the playback and starting the clip over when it landed in a new window.

The other new performance-enhancing component in IE9 is the new Chakra JavaScript engine, which uses multiple processor cores and has already been extensively benchmarked via the platform preview releases. Microsoft has handed out several charts showing its impressive improvements; most of those charts include its dismal IE8 score, which is almost an order of magnitude slower than IE9 and grossly distorts the scale of the charts. To make things fairer, I threw out those IE8 results and ran the SunSpider benchmark using only the most recent beta releases of IE9, Firefox, and Chrome. Here's what the results looked like:

The difference between each browser is only about one-tenth of a second, and that composite result includes dozens of complex operations. The independent JSBenchmark test produced similar results, with the IE9 beta running 21% faster than the latest Firefox 4 beta but 29% slower than the latest test build of Google Chrome 6. The conclusion? JavaScript performance isn't a significant differentiator between modern browsers, and IE9 can hold its own with any Webkit-based browser on this score. (Yesterday, in anticipation of this first wave of reviews, the IE Blog published an interesting discussion of what JavaScript benchmarks really measure.)

In previous IE versions, browser add-ons have been a frequent source of slowdowns. IE8 introduced an add-on manager that was effective but hard to find and too daunting for mere mortals. It's still available in IE9, but it's been supplemented with a cleaner tune-up kit. After you run IE9 for a while, you'll see a notification along the bottom of the screen. If you choose to follow it, you're taken to this simple list, where you can identify and if necessary disable a troublesome add-on.

Based on my experience, I predict that Google Chrome will continue to win many performance tests. But IE9 has closed the gap impressively. It's faster than Firefox across the board and faster than Chrome on tasks where hardware acceleration is involved. Even when those rivals catch up or pass IE9 (as they probably will), it's unlikely that performance differences will be significant.

HTML5, compatibility, and the future of IE9

Internet Explorer 9 represents a nearly complete break with the past for Microsoft. It is the most standards-compliant browser Microsoft has ever created, with nearly complete support for the CSS3 and HTML5 standards. Smart, forward-thinking developers, Microsoft argues, will be able to write their markup for a web page once and be confident that it will work the same in IE9 as it does in any modern browser.

That's the theory. The reality is a bit more complex. Despite Microsoft's genuinely impressive efforts to build a standards-compliant browser, they're saddled with the legacy of thousands and probably millions of web pages that will break (or display improperly) in IE9. I ran into these issues repeatedly during my testing with the IE9 beta. Here, for example, is a snippet of a page from Time.com:

Those Facebook and Twitter icons are supposed to be on the same row as the widgets above them, but whoever designed that page coded it using a handful of tiny tweaks designed to fix layout bugs in older IE versions, and they didn't take into account the possibility that a future version of IE wouldn't need those fixes.

At ZDNet.com, I found similar bugs, with buttons that didn't work properly and a JavaScript-powered graphic that is supposed to rotate through multiple images but instead was stuck on a single image.

I even ran into multiple pages at Microsoft-managed sites that rendered incorrectly or complained that I needed to be using a supported version of Internet Explorer. Like this one:

Fortunately, IE9 has the same Compatibility View options as its predecessors, so it's relatively easy to click the "broken page" icon in the address bar to fix problems like these. Designers can also code a page so that it always displays in IE7 compatibility mode, but that strategy cheats IE9 users, who should be able to see the page without those hacks.

Of course, there are still bugs in IE9—that's why it's a beta, after all. Some popular JavaScript libraries will need to be tweaked to work properly with the new browser. And there are different interpretations of the still-evolving CSS3 and HTML5 standards that will cause minor headaches for web developers until they're sorted out. Check out these separate code blocks from IE9 and Firefox and Chrome. Those moz- prefixes (webkit- in Safari) aren't exactly the stuff interoperability is made of.

Those changes will happen, over time. The wide availability of this beta represents a big push in the right direction; the final release of IE9 will mean an even bigger push. Microsoft will fix a lot of bugs between now and then, and some, but surely not all, web developers will update their code to accommodate IE9. The fixes, thankfully are minor—as simple as a line of code to tell the browser to render the page in standards mode. Thankfully, they don't involve the sorts of godawful hacks that were necessary for IE6 and IE7. Those days are gone, although developers can be excused for thinking "Once burned, twice shy."

So, should you install the IE9 beta? As with all beta software, I recommend caution. It's an amazingly polished release, in my opinion, but it's still a beta. I don't recommend installing it unless you're comfortable with beta software and understand the consequences. And like all Internet Explorer updates, it's a one-way street. If you install this beta on Windows 7, you can't go back to your old version of Internet Explorer unless you restore a backup. Update: You can indeed uninstall IE9, which appears in the Installed Updates section of the Programs Control Panel. However, unlike the Platform Previews, you cannot install IE9 side by side with an existing IE version.<

Ironically, the very best candidates for this beta are those who use Windows 7 but gave up on Internet Explorer in favor of another browser. In that scenario, you can continue using Firefox or Chrome or Opera and use IE9 as a backup browser. You can even create pinned site shortcuts to run some sites in IE9 without affecting your default browser choice. It's an ideal testing scenario.

Personally, I find the performance and usability improvements in IE9 nearly irresistible. They easily outweigh the minor rendering issues and incompatibilities with some sites. If you're a happy IE8 user, I predict you'll be just as impressed with IE9 as I am.