When Microsoft first started discussing IE 9 almost a year ago at PDC 2009--see my Internet Explorer 9 Preview for details--it talked up three main areas that would become the focal points for several developer-focused Platform Preview (PP) releases throughout early 2010: Performance, interoperability standards, and hardware acceleration. And over the course of those PP releases, the software giant really delivered, all while reaching out to those who value web standards above all else.
In the beta, we can see refinements to the performance gains, standards support, and hardware acceleration features that Microsoft honed over the PP releases. But now is arguably the most interesting phase of this work, since millions of users will test drive the IE 9 beta not on Microsoft's carefully crafted test sites, but rather on the open web. I'm curious to see how the browser fares, how (or if) the improvements continue, and how users will perceive this product compared to the competition.
My own experiences over the past weeks have been mostly positive. I can already see, however, that the biggest problem facing IE 9 users is going to be the upgrade issue. Very few people who use IE 9 are going to do so on a "clean" machine with no browser add-ons installed. If you can manage such a feat, IE 9 will be blazingly fast, and unlike any IE version before it. For the rest of us, however, IE 9 will simply and silently pick up whatever add-ons were installed in your previous IE version. And the results will be mixed.
Of course, users are welcome--encouraged, really--to take advantage of the add-on performance advisor to disable poorly performing add-ons. And I'd argue that Microsoft should simply launch that tool the first time anyone runs IE 9, except of course that the point of the product is to get out of the way and whatnot, and such a UI would of course run counter to that ideal. So here we are, stuck.
Anyway, aside from these concerns, IE 9's support of next-generation underlying technologies that will truly help developers seems good to me, though of course I'm not exactly on the leading edge of web development. So we'll have to wait and see how the world reacts. I discussed features like jump lists and thumbnail previews earlier, but here I'd like to quickly mention some lower-level developer-oriented features that, hopefully, will put IE 9 on par with other browsers like Chrome and Firefox. They are certainly far more forward-leaning than anything that's appeared in previous IE versions.
Full hardware acceleration. In modern desktop operating systems like Mac OS X and Windows 7, many graphical operations are handled by the PC's graphics processing unit (GPU), instead of the microprocessor, or CPU. That's because a GPU, even one in a low-end integrated graphics chipset, can perform certain operations more quickly than can a CPU, and can do so in parallel with other CPU-based actions. The result, of course, is better onscreen fidelity and much better performance.
In IE 9, Microsoft is applying this principle to the web. And unlike some of its competitors, which are giving lip service to hardware acceleration while not really delivering the full meal deal, Microsoft is offering what it calls full hardware acceleration. This means that the GPU in your PC will step in anytime that the browser needs to render text, graphics, or digital media content like audio and video. The result, of course, is better performance. And according to Microsoft, this provides web sites--web apps, really--to perform similarly to local Windows applications, further blurring the line between the two types of applications with which most of us are familiar.
The results can be stunning--faster, more reliable video, crisper text, and so on--but from a developer standpoint the beauty of this functionality is that it doesn't require any special coding or other work at all. Users with IE 9 will simply and automatically get a better experience on your sites.
HTML 5 and other web standards. The online world is very clearly standardizing on HTML 5, and Microsoft is all-in with IE 9. This browser includes support for many of emerging HTML 5 features, including HTML canvas, embeddable audio and HD-quality video, SVG graphics, selection APIs, and various HTML parsing improvements.
IE 9 also offers much better CSS support than previous IE versions--admittedly a low bar, but decent nonetheless--Web Open Font formats, DOM L2 and L3, ECMAScript 5, color profiles,and more. Unless you live in a web site editor, most of that is probably inscrutable aside, perhaps, from CSS. In IE 8, Microsoft became compliant with CSS 2.1. With IE 9, that compliance includes much of CSS 3, which is still a work in progress. Pragmatically, Microsoft has gone after the CSS 3 features that developers seem to want the most.
Compatibility mode. While neither IE 7 nor IE 8 was a huge improvement, rendering-wise, over previous IE versions because of compatibility concerns, IE 9 is very compliant with modern web standards and could cause issues, especially in companies that are still targeting IE 6. For this reason, the browser includes various compatibility modes (as did IE 7 and 8) that allows developers to force IE 9 to render pages like an older IE version when needed.
For the rest of the world, IE 9 will simply run in standards mode by default, which is wonderful. And if you're making web pages that work fine in Chrome, Safari, or Firefox today, they should look fine in IE 9 as well. Now, of course, is the time to test.
Developer tools. Microsoft has had decent IE-based developer tools for a few years now, and it even included them by default in IE 8, and that's true again now in IE 9. The IE 9 developer tools help developers test and debug web pages locally in the browser and include HTML, CSS, script, and other tools. You can also test IE's various compatibility modes, and, new to this release, the relative performance of your web sites.
IE 9's integrated developer tools.