Your Ad Here

Thursday, March 17, 2011

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.
And with the release today of Internet Explorer 9, the company has gone on to deliver just that—IE9 is the most modern browser there is.
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.
Slimline new interface
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.
Much less annoying
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.
I can't believe we had to wait so long for this.
And oh yeah. There's a download manager included. At last.

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.
IE8's score is so bad it's literally off the chart—about 3,500 milliseconds.
We're going to perform in-depth browser benchmarking once Firefox 4 is final, but regardless of benchmarks, Internet Explorer 9 feels very fast. In the end, that's perhaps what matters most: even scripting-heavy Web applications render quickly, animate smoothly, and perform well.
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.
Sadly, the same markup still does not always yield the same results.
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.

Trustworthy browsing

Preventing advertisers and analytics firms from tracking one's progress around the Web has become something of a hot-button issue. Microsoft's approach to this is two-fold. Tracking Protection Lists (TPL) allow users to opt into lists published by privacy organizations to block such tracking mechanisms. The company has also slipped in a new mechanism just in time for release, too; if any TPL is in use, the browser will also send the Do Not Track header, also being sent by Firefox 4.
This serves as a belt-and-braces approach to privacy protection. TPLs are active protection; they prevent the browser from downloading various tracking devices (mainly JavaScripts and single-pixel images) completely. What isn't downloaded can't be used to track. The Do Not Track header is passive. It relies on trust—the Web server the browser is visiting must notice that the header is there, and then respect it—and currently has essentially no real-world value. There is, however, the possibility that it will gain Federal Trade Commission or legislative support, at which point it might start to gain some meaning.
The approach of sending the header while using a TPL does not seem ideal; different TPLs might block different kinds of tracking (for example, one might block advertisers, another might block analytics), but the Do Not Track header will be sent to everyone, regardless of the intent of any installed TPLs. That's not an issue now, as the header doesn't have any real meaning, but it could become an issue in the future.
Beyond that, the inclusion of ActiveX blocking will be welcome to those who dislike Flash but have to keep it installed for compatibility. It's simple, but effective.
Some new trust features will only come into their own now that the browser has been released. In particular, the browser now attempts to warn about unsafe downloads. Any application that is downloaded has a reputation. If lots of people download the same program, it's probably safe, so it has a good reputation; if you're the only one to ever download it, it has a much higher chance of being something nasty, so its reputation is bad. Or at least, that's the thinking. Attempts to download programs with bad reputations will earn an additional warning. The true value and efficacy of this system will only really become clear once the browser is in wide use.
A suspicious download.

A new development process

With these goals came a new way of developing the browser. Instead of producing a beta or two and then perhaps a release candidate, in March 2010 Microsoft said that it was going to release what it called "Platform Previews" every eight weeks or so. These previews would have the underlying improvements to the browser's core, giving Web developers the opportunity to experience both the greater performance and greater standards compliance that each new preview provided, but didn't come with any real browser interface.
This site has long criticized Microsoft's browser development approach. The combination of infrequent releases and relative lack of access during beta periods made it difficult for developers to gauge the direction that the company was headed in, and so it was hard to provide timely, relevant feedback. Nor were we confident that the preview releases would do enough to redress this issue. Now that IE9 has shipped, it's fair to say that the previews did the job admirably. Microsoft showed steady progress, introducing substantial new features such as support for the HTML5 video and audio tags, canvas graphics, and WOFF fonts. Each new release made great strides in performance, too.
Many thousands of bugs were filed against the browser, and they were all examined and addressed (though not necessarily fixed). Microsoft says that the bugs that were filed were high quality, too, with something like 50 percent of issues raised proving to be legitimate. In previous Internet Explorer development periods, the beta release would be the first opportunity to actually test the browser's rendering engine. With IE9, we already knew that the engine would be high quality thanks to the preview program. With the previews, Microsoft has shown that not only can it develop a high quality browser; it can also do so in a way that effectively engages with the community.
The company has also provided a solution of sorts to the desire to test and experiment with more unstable specifications. Prototype implementations of features that are still in flux can be installed, giving developers the access they need to provide the experimentation they need to do, without running any risk of real sites actually depending on these features. These prototypes have been updated regularly, and their update schedule is governed by the frequency with which new drafts of their specifications are developed, rather than any fixed eight-week interval.

And now the bad bits

The biggest problem, and the biggest risk, faced by Internet Explorer 9 is that of compatibility. Not with websites—it does a great job there—but with operating systems. Because of its use of Direct2D and DirectWrite, which are only available on Windows Vista and Windows 7, it does not run, at all, on Windows XP. Though Windows XP's market share is declining on the back of strong corporate uptake of Windows 7, it's still the most common version of Windows. And it can't be used with Internet Explorer 9.
This wasn't a bad decision. The performance improvements made by the use of DirectWrite and Direct2D allow a new class of Web application to be developed. They greatly extend the range of what is possible and practical to do on a website. Platform security features that Internet Explorer 9 leverages also make the switch to more modern operating systems desirable. Some of the things that make IE9 a better browser are things that simply do not exist on Windows XP.
Nonetheless, it's plain that this will hamper adoption of the new browser. Firefox 4 includes Direct2D (and, optionally, DirectWrite) on platforms that support it, but it will still run on Windows XP; on that operating system it falls back to software rendering. This makes it slower, certainly, on that operating system. But it will still work. Windows XP is declining, and it's understandable that Microsoft has chosen not to target a system that will be a decade old this October. But it does mean that Microsoft may struggle to win over users.
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. Microsoft has long argued that 64-bit browsing isn't necessary; most plug-ins are only 32-bit, and so, the argument goes, browsing must be a 32-bit activity. This is unfortunate. One, it leads to a certain chicken-and-egg problem: there's little incentive to develop 64-bit plug-ins since nobody uses a 64-bit browser due to the lack of plug-ins (though Adobe Flash 11 is likely to include first-class 64-bit support, resolving one of the big stumbling blocks). Making the 64-bit version first-class—the same features and performance as the 32-bit version—and ensuring that, at least, Microsoft's own plug-ins (such as Silverlight) were supported would go a long way towards making 64-bit browsing viable. This is, after all, much the same route as the company took with Office.
The reason that 64-bit is desirable is particularly because it offers the potential to strengthen certain anti-hacking mechanisms. Address Space Layout Randomization (ASLR) depends on the ability to change the in-memory layout of things like DLLs. In a 32-bit process there are only a limited number of random locations that can be chosen. 32-bit processes are also more vulnerable to anti-ASLR measures such as "heap spraying" (wherein a large proportion of the browser's memory is filled with malicious code to make it easier for an attacker to trick the browser into executing it). 64-bit is by no means a panacea, but it does strengthen these protection systems. For something that is as frequently attacked as a Web browser, this kind of defense in depth is desirable.
This is especially true as the 32-bit plug-in issue is not insurmountable. Safari on Mac OS X is a 64-bit process on suitable systems. It gets around the plug-in problem by running plug-ins in separate 32-bit processes. This is an approach that Microsoft could, and should, take.
I suspect that IE9 will also struggle to win over the geek demographic. It's a very solid, effective browser, but the lack of "power" features (such as the richer tab handling, automatic session restoration, and extensive extension support) means that this community will likely be better-served by something like Firefox. Though such users are themselves a minority, they are nonetheless influential—they spearheaded Firefox's adoption, acting as advocates for that browser, and are doing the same for Chrome (though in the latter case, Google's substantial advertising budget is also a big help). In the Internet Explorer 5 days, these were the same people encouraging the abandonment of Netscape Navigator. As good as Internet Explorer 9 is, I don't think it's going to be enough to win them back.
There are also lingering questions surrounding the question of what happens next. The new development process was successful, and has built up a lot of momentum, but the company is still, for the moment, keeping quiet about the next move. If there will be no browser version for another two years, then in spite of all IE9's remarkable progress, the game is lost. There's already a good chance that Firefox 4 will leapfrog it in most regards when it is released in the next week or two; its time at the top will be short-lived. The world of browser development is fast-paced.
In an ideal world, the platform preview program will continue, aiming towards the release of, say, IE9.5 or IE10 in six to eight months from now, certainly no longer than a year. This would allow Redmond to keep pace with the Mozilla and Google developers, and one might even say that it would herald the welcome start of the third browser war. Certainly, the company doesn't want to let the momentum flag; it knows it's onto a good thing with the previews. But as of right now, all that exists is rumor and conjecture. Internet Explorer Vice President Dean Hachamovitch is giving a keynote presentation at next month's MIX conference in Las Vegas, and while this is expected to focus on IE9 for Windows Phone 7 (due later this year), it's hoped that he will also give a look forward at the future of the desktop browser.
Internet Explorer 9 is a triumph. Not perfect, but still a first-rate product. Microsoft really has built a better browser here. It's arguably the most modern browser on the market—for a few weeks, at any rate. If you use Internet Explorer, and you're not stuck on Windows XP, you should switch. Even if you don't use Internet Explorer, you should try it out. Internet Explorer 6 and 7 are embarrassments that you should be ashamed to use. Internet Explorer 8 is acceptable, but no more than that. Internet Explorer 9 is the anti-IE6. It is an excellent browser that can be used with confidence and pride.

From :

Artikel Terkait

No comments:

Post a Comment