IE9 adds key HTML5 features in new preview release

Microsoft has just passed an important milestone on the road to shipping Internet Explorer 9, releasing a third Platform Preview for download by the public today. They've finally delivered the missing pieces of the HTML5 standard. Is this the last step before a public beta?
Written by Ed Bott, Senior Contributing Editor

Microsoft has just passed an important milestone on the road to shipping Internet Explorer 9, releasing a third Platform Preview for download by the public today.

This preview adds the most eagerly awaited HTML5 features to the IE9 engine, including support for the Canvas element and both audio and video tags. Based on test results I've seen, there are also significant performance improvements and a big jump in IE9's score on the controversial Acid3 test page (although it still falls short of a perfect score). Like its two predecessors, this release contains only the most rudimentary user interface, allowing Microsoft to keep the dialog with developers focused on performance, standards compliance, and support for new HTML5 features.

What's most remarkable about today's announcement is that Microsoft is running well ahead of its initial, self-imposed schedule. The public promise by IE boss Dean Hachamovitch back in March was to deliver a new platform release every eight weeks. The first public release was on March 16, followed by a second release 50 days later, on May 5. Today's release is exactly seven weeks after that. My colleague Mary Jo Foley says her sources are telling her this is the last platform release, and that the next milestone is a public beta in August. Based on the cadence Microsoft has established so far, that timetable makes sense: the next release should be ready on or perhaps a little before August 18, which is eight weeks from today.

Two weeks ago, in a series of meetings in Redmond, I saw this release in action and asked whether it was feature complete. "Almost," I was told. Certainly the last major pieces of HTML5 support are now in place with the unveiling of support for the Canvas element and audio and video tags. That means that IE9 can perform hardware-assisted playback of H.264-encoded video on any Windows PC. In theory, at least, it should be able to pass every one of the HTML5 tests based on those features, which it previously failed. If there are any other serious omissions, we should hear about them within days, given the scrutiny this release will get from the developer community. (According to Microsoft, the two previous platform previews have been downloaded more than 2 million times. I expect this release to blow well past those numbers.)

With today's Platform Preview 3 release, Microsoft also updated its IE9 Test Drive website, adding another 15 demos that show off some of the new HTML5 features and also demonstrating performance gains achieved with the help of a rewritten JavaScript engine and GPU-accelerated graphics. A bookstore demonstration from Amazon's website, built using the HTML5 Canvas feature, is particularly impressive with its ability to open a book and flip through its pages, and another third-party demo from IMDb.com does a nice job of highlighting video playback. You'll find a few frivolous demos as well (swimming fish and even a Potato Gun game) that show off some serious features.

The real proof, of course, will come when independent testers compare the new IE9 build to Safari 5 and Google Chrome using not only Microsoft's test pages, but Apple's test pages and those from third-party sites as well. Microsoft is sticking firmly with the goals it outlined back in November when it first demoed IE9 at the Professional Developers Conference (PDC) in Los Angeles. The "same markup" mantra is still at the center of Microsoft's design, with the goal of delivering a final release that has the best, most interoperable support for HTML5. The core design principle is that HTML5 markup will render the same in IE9 as it does in any other modern, standards-compliant browser, with no compromises in performance, and developers won't have to treat it as a separate platform or version.

Update 23-Jun 3PM PDT: I just downloaded and installed the IE9 PP3 code and loaded the Amazon Shelf test page in IE9 and in the current shipping release of Google Chrome, on a system with an i7-920 CPU and an Nvidia GeForce 9600GS. Performance is blazing fast on the IE9 platform, with crisp transition effects and very snappy loads. On Chrome, which does not support GPU acceleration, performance is almost unbearably slow, and font rendering is inferior as well. Be sure to check the source code, which notes that the page is primarily driven by JavaScript and Canvas. There's an equally dramatic performance difference on the IMDb Video Panorama page.

Next page: What can you expect? -->

<-- Previous page

In third-party HTML5 test suites, the two previous platform previews of IE9 achieved low scores because they didn't fully implement HTML5 markup. That left them with big fat zeroes on any part of the test that involved audio or video, for example. With the addition of support for the Canvas element and the HTML5 audio and video tags, those results should be much closer to those of competing browsers.

The addition of those previously missing features also improved IE9's performance on the Acid3 test. On the 0-100 scale for this test, IE8 scores a dismal 20. With each successive platform preview release, IE9 has improved, starting at 55 in March, increasing to 68 in May, and jumping all the way to 83 with today's release.

So why not 100? I asked Rob Mauceri, Principal Group Program Manager on the IE team, who argued that the Acid3 test "isn't a true conformance test of standards." Instead. he said, "It tests for a set of capabilities across fractions of 12 different standards. Our objective is not the Acid3 test. Our objective is to build for the things that developers care about most. Our approach in implementing the standards is to do it in a responsible engineering approach and contribute it back to the W3C." To that end, Microsoft has contributed a total of more than 1600 proposed HTML5 test pages to the W3C. I asked Rob if the final release of IE9 will achieve a perfect score on the Acid3 test. "We're not done here, either," he told me.

Microsoft's developers are especially pleased with the work they've done on IE9's Chakra JavaScript engine. According to a test run of the WebKit SunSpider benchmark from June 21, IE9 PP3 significantly improved its score over previous versions and is in the same ballpark as the current released versions of Safari and Chrome.

But as one senior IE developer told me, "Optimizing for one particular benchmark can get you into a hole." Instead, Microsoft's approach tests performance of nightly builds against 30 real-world sites that represent a broad range of capabilities. On that measure, they seem reasonably happy with the performance of this release.

You can find updated cross-browser results from the Internet Explorer Testing Center on its website. On my latest visit I had a chance to meet with IE Test Manager Jason Upton and to tour the lab itself, a large, well-refrigerated data center stocked with 948  workstations, 119 servers, and 22 clustered high-end servers with 300 copies of Windows and IE per cluster. There was an impressive breadth of old and new hardware, including some mysterious FrankenPCs running bleeding-edge hardware. (And it's significantly improved over the previous generation in terms of energy efficiency as well; through its Green Lab initiative, Microsoft estimates it saved 1.8 million KWH.)

The biggest missing piece in today's release is the user interface, which consists of a thin frame and an input box where you can type or paste a URL. That's a deliberate (and wise, in my opinion) strategy. Everyone on the IE team is self-hosting IE9, I 'm told, but the UI is a jealously guarded secret. I expect to see some significant changes over the well-worn IE8 UI—but not for at least eight weeks.

Meanwhile, the HTML5 standard itself is still in flux. This release adds support for some very new HTML5 features, like Web Open Font Format (WOFF). It also includes support for Web Timing, which is a framework that will make it possible for page designers to accurately measure performance as users experience it.

In all my meetings with the IE team since last November, I've been especially impressed with the careful attention they've paid to engineering, not just shoveling in new features or pushing out new builds. There's a lot of confidence from this team as well. They seem determined to shake up the web establishment by setting the bar for the most standards-compliant web browser around, for a very demanding audience.

On the IE9 roadmap, the next stop after these platform previews is a beta release, followed by a Release Candidate and then a shipping product. If that beta is indeed ready in August, look for an RC in November and a shipping product early next year.

Editorial standards