Microsoft's IE architect: IE8 is what we've been building up to
FROM MIX 08 - For Internet Explorer platform architect Chris Wilson, IE8 is more than just a new version. It's the realization of an effort that began with IE7 to build the best Web browser for both developers and consumers.
"IE7 was the start to IE8," Wilson told BetaNews this afternoon in Las Vegas. It's not a secret that Microsoft largely abandoned its browser after IE6 and rebuilt the development team from scratch for IE7. Although it brought a number of much-needed improvements, version 7 was only a stepping stone for the company on the road to IE8.
According to Wilson, IE8 will deliver everything that Microsoft has wanted to do from the beginning, and in turn finally get Internet Explorer back to the same level as its competitors in terms of features, performance and standards support. That's not going to be an easy job, but the company says it remains committed to the task.
"We have to rebuild our credibility on the Web," Tim O'Brien, director of the Platform Strategy Group at Microsoft, acknowledged to BetaNews. A key component of this is reaching out to the Internet community and listening to feedback -- much of which revolves around the pain developers experience when trying to make their Web sites and applications compatible with IE.
To that end, Microsoft has introduced a minor but far-reaching change in the way IE8 will render sites, adhering to stricter Web standards than IE7, which vastly improved upon IE6 but still had quirks in its standards implementation. The goal is to deliver full CSS 2.1 support in the final release of IE8, Microsoft has said.
While it seems a logical shift, especially when considering that Microsoft wants its own online services to work for the growing number of Firefox and Safari users, the move is an about-face from a decision in January in which Wilson explained IE8's standards mode would require a special HTML tag to activate. Microsoft was worried about breaking existing sites designed for IE7's standards mode.
So why the change? Since that time, Microsoft published a set of interoperability principles which it unilaterally pledged to follow for the development of all its software. "We had to put up or shut up," said O'Brien, adding that the company decided it should fully support the standards by default or not at all.
Beyond standards, Internet Explorer has lagged considerably in terms of performance compared to recent releases of both Firefox and Safari. While there's still work to be done, IE8 Beta 1 is already on par with its rivals in most tests. Wilson explained to BetaNews that IE8's JavaScript engine has been completely rewritten with speed in mind.
In addition, IE is no longer limited to 2 simultaneous connections; 6 is the new default -- meaning that multiple images or scripts can be downloaded concurrently. The development team also went back through code to find bottlenecks and completely rewrite areas that were slowing things down. Lastly, the preparser in IE8 is now more aggressive in downloading items before the page is fully rendered.
Although IE8 Beta 1 is a developer-focused release and Beta 2 will come this summer with more consumer-oriented features, Wilson explained in more detail the two big features added thus far: WebSlices and Activities.
WebSlices enable users to subscribe to a piece of a Web site that gets automatically updated, much like an RSS feed. In fact, the feature utilizes the feed platform Microsoft has built into IE and Windows Vista, which means WebSlices can be accessed by other applications. When a WebSlice is subscribed to, IE downloads the full page and first sanitizes it by removing JavaScript and other potentially malicious code.
Then, the HTML of the WebSlice itself is stored in the feed platform, and specifically defined elements -- for example Facebook status text or eBay auction details -- are updated when the WebSlice is viewed by clicking the IE8 toolbar. While it's not just a window that displays a smaller part of the page, Wilson said that the full site is loaded each time. He acknowledged this could artificially inflate page view numbers, although IE8 sends a different User Agent string for WebSlices, which means these visits can be detected.
The WebSlice format specification has been published in the public domain under a Creative Commons license, and Wilson said "we want to see what can be done with it."
Activities, meanwhile, serve as a sort of right-click on steroids in IE8. Users simply select text and the right-click menu will contain different categories of actions that can be performed. Within each category are multiple actions -- for example a search category could include a number of different search providers.
Wilson said Activities differ from Microsoft's failed Smart Tag effort because the user is choosing the action and Microsoft doesn't touch the page. Smart Tags always had a single purpose, while anyone can build an activity. For this reason, IE8 doesn't try to auto-detect what actions a specific set of text can have -- the same menu appears whether an address or person's name is highlighted.
One thing Microsoft will not be changing in IE8 is the frequency of updates. The company has discussed, but decided against, making nightly builds available like Mozilla and Apple do. Wilson said nightly builds would complicate things for customers, and potentially cause great damage because Internet Explorer is so intertwined with Windows. "MSHTML is actually a Windows system component," he explained.
Wilson also said that IE8 will not be an automatic upgrade for IE7 users, which could lead to headaches for developers who now need to program for three different variants of IE. The primary reason for this, Wilson says, is that Microsoft needs to honor servicing contracts for customers who have built solutions that work specifically with IE7.
Such upgrades are a "big challenge" for Microsoft, he explained, because the company has to balance between supporting existing deployments and delivering a better product. IE7 users will likely see a recommendation to upgrade to IE8 through Microsoft Update when the browser is finalized, but it will be optional.