For those of you who have been waiting to see what Microsoft has been cooking up for the standards-based Web, dinner is served!

Released to the Web in August 2008, Internet Explorer?8 Beta 2 delivers much more than just a snack for today's ravenous tech-savvy users. Internet Explorer?8 Beta 2 dispenses a four-course meal guaranteed to please even the most discriminating of palates.

All of this talk about food makes me hungry, so let's dig in. Internet Explorer?8 Beta 2 is the latest installment of Microsoft's Web browser and includes new features for end users and developers alike. From in-box Developer Tools, to Web Slices and Accelerators, to improved performance and a platform built for today's Web 2.0 applications, there is plenty to feast on in Internet Explorer?8 Beta 2.

Internet Explorer?8 Beta 2 represents the third release of Internet Explorer that I have personally had the privilege to participate in and it outshines any browser we have shipped to date.

The Microsoft Internet Explorer team's goals for the final Internet Explorer?8 Beta 2 release remain: to fully support CSS 2.1, to improve script performance, to enable new Web scenarios by including early HTML 5 support, to ship built-in developer tools, to integrate Web services into the user's workflow through Web Slices and Accelerators, and to strengthen Internet Explorer's foundation in the security and privacy realms.

This article briefly introduces the features included in Internet Explorer?8 Beta 2. For more in-depth discussion, see the other articles written by the Internet Explorer team in this issue of CODE Focus.

Heaping Helpings for the Developer

We have unleashed the power of the standards-based Web through Cascading Style Sheets (CSS) 2.1 compliance, while simultaneously protecting compatibility with the content of today. Making your website compatible across multiple versions of Internet Explorer has been dramatically simplified with version targeting. Additionally, we have laid a great foundation for the development of secure mashups through cross-document messaging (XDM) and cross-domain requests (XDRs); which, when coupled with better script performance, dramatically improves the JavaScript-heavy Web applications experience.

Top this meal off with our integrated Developer Tools. Debugging and profiling your content or script has never been so easy.

Predictability: Interoperable Version Targeting

Improved standards support in Internet Explorer?8 Beta 2 makes developing sites that work across different browsers simpler and less time consuming. Internet Explorer?8 Beta 2 includes upgrades to the Web platform, compatibility, and functionality designed to keep you on point creating high-quality interactive experiences, not debugging browser interoperability issues.

Internet Explorer?8 Beta 2 interprets Web content in the most standards-compliant way it can. This simple statement turns out to have complex ramifications. Thankfully, Internet Explorer?8 Beta 2 delivers a model that both protects current content from client changes and enables adoption of new exciting features.

Compatibility Mode

In addition to the ?Standards? and ?Quirks? modes widely understood from past versions of Internet Explorer, Internet Explorer?8 Beta 2 ships with a third layout mode-Internet Explorer?7 Standards mode. With this layout mode, Internet Explorer?8 Beta 2 renders pages in the same way that Internet Explorer?7 renders its ?Standards mode? pages. It's also the quickest option for getting existing content to display correctly in Internet Explorer?8 Beta 2.

You tell Internet Explorer?8 Beta 2 to display a site or page in Internet Explorer?7 Standards mode by simply adding a meta tag. No additional changes are required.

<meta http-equiv="X-UA-Compatible" content="IE=7">

Upon page load, Internet Explorer 8 Beta 2 reads the tag and switches the browser to interpret all content on the page as Internet Explorer?7 Standards instead of Internet Explorer?8 Standards. For more details, see ?Making Your Website Compatible Across Multiple Versions of Internet Explorer? in this issue.

Power/Performance: AJAX Improvements

Internet Explorer?8 Beta 2 provides a programming model for Asynchronous JavaScript and XML (AJAX) development that is simpler yet more powerful than ever before, spanning browser, Web page, and server interaction. You'll be able to build pages that are faster and more functional, with better end-user experiences. Plus, the APIs we've added to Internet Explorer?8 Beta 2 are based on the W3C HTML 5.0 or Web Applications Working Group standards.

AJAX Navigations

One of the great benefits of implementing AJAX-and really, one of the main reasons it exists-is the ability to update page content without navigating to a new page. With this convenience, though, come drawbacks that can confuse users. On an AJAX-heavy page, the Address bar is not updated with each update. Subsequently, the browsing history isn't updated either.

To enable AJAX navigations, Internet Explorer?8 Beta 2 in Internet Explorer 8 Standards mode treats updates to the window.location.hash property like traditional navigations. When the hash property is updated, the previous document URL (which may be from the previous hash fragment) is updated in the Address bar and the travelog. At the same time, a new hashChanged event is raised, and the hash URL fragment is saved before navigating away from the page.

On AJAX-enabled pages that take advantage of this new functionality, when AJAX content changes, navigation is as seamless as usual, but the user can back up and go forward as if the AJAX navigation was a traditional navigation.

DOM Storage

To store data on local machines, websites today often use the document.cookie property. However, cookies are limited in their capabilities; sites can only store fifty key/value pairs per domain, and the cookie programming model requires parsing the entire cookie string for data. DOM Storage objects-specified in the W3C's HTML 5 Working Draft and implemented in Internet Explorer?8 Beta 2-provide a much simpler and more flexible global and session storage model for structured data on the client side.

DOM Storage offers essential differences from cookies. For one, it offers significantly more available disk space than cookies. In Internet Explorer, cookies can store 4 kilobytes (KB) of data, whereas DOM Storage provides about 10 megabytes (MB) for each storage area. Furthermore, DOM Storage doesn't transmit values to the server with every request as cookies do, and data in a global store never expires. Unlike cookies, it's easy to access individual pieces of data using an interface that is supported in Internet Explorer?8 Beta 2 and other browsers, and sites can choose to store data for the life of a tab or until the site or the user clears the data.

More AJAX Enhancements

Internet Explorer?8 Beta 2 includes enhancements to connection events and connection scaling, as well as updates to the XMLHttpRequest (XHR) object. For more details, see ?Better AJAX Development with Internet Explorer?8 Beta 2,? in this issue.

Productivity: Integrated Developer Tools

Great tools play a critical role in developer productivity, and while many Web development tools exist, they probably don't meet your needs in all tasks.

To improve developer productivity in debugging JavaScript, CSS, and HTML, Internet Explorer?8 Beta 2 includes powerful, yet easy-to-use tools that have a few important characteristics:

Integrated and Simple to Use

Every installation of Internet Explorer?8 Beta 2 includes the Developer Tools. This enables debugging anywhere you find Internet Explorer?8 Beta 2, whether it's your dev machine, test machine, or a client's machine. In addition, by avoiding the use of an extension, we have limited the impact of the tools on browser performance to only the times when you open the tools. Internet Explorer?8 Beta 2 also includes on-the-fly script debugging, so you can enable debugging as needed for only the current Internet Explorer 8 Beta 2 process, rather than enabling debugging for all of Internet Explorer 8 Beta 2 and accepting degraded performance and regular script error dialog boxes.

Provides a Visual Interface to the Platform

Instead of reverse engineering how your site works or modifying your site to output debug information, the Developer Tools enable you to look into Internet Explorer 8 Beta 2 to view its representation of your site. This reduces the time you spend debugging dynamic sites where source inspection isn't useful or investigating a behavior specific to Internet Explorer 8 Beta 2 where a generic authoring tool cannot help.

Enables Fast Experimentation

When prototyping a new design or testing fixes in previous versions of Internet Explorer, you likely edit your source, save it, refresh your page in the browser, and repeat. The Internet Explorer?8 Developer Tools streamline this scenario by letting you edit your site within the browser and see changes take effect immediately.

Helps Optimize Application Performance

Identifying and fixing performance issues is usually an iterative approach done by focusing on one scenario at a time. With the Internet Explorer?8 Developer Tools script profiler, you can collect statistics like execution time and number of times a JavaScript function was called as you test your application and use the profile report to quickly identify and fix performance bottlenecks.

With these characteristics, the features of the Developer Tools will dramatically improve your productivity when developing in Internet Explorer?8 Beta 2. For more detailed information, see the article ?Developer Tools in Internet Explorer?8 Beta 2,? or visit the IE Developer Center on MSDN at http://msdn.microsoft.com/ie.

Well, we've got the developer food groups covered, so now let's move on to a balanced meal for the end users, shall we?

Perfect Portions for the End User

We cooked up even more goodness for end users to make the Web more efficient and approachable. Reach well beyond just a single Web page and expose the dynamic power of Web services. Web Slices and Accelerators take advantage of Web services in a convenient, easy to use experience.

Our improved search capabilities enable you to land that bigger data ?fish? by casting a wider net that examines your Autocomplete (previously typed search terms), Search Suggestions (from your currently selected search provider), and your History, as well as the Internet.

Safety and reliability are paramount in today's connected world. Safety and reliability join security in a protective journey for the modern browser. Internet Explorer?8 Beta 2 continues to push the innovative envelope with features like Loosely-Coupled Internet Explorer (LCIE), Automatic Tab Recovery and InPrivate Browsing.

And for dessert, we offer our Compatibility View feature. With millions of pages and sites in our globally connected world, not all pages will be ready simultaneously for strict standards-based content. While Internet Explorer?8 Beta 2 respects the intent of the Web author when known, Compatibility View also allows the user to fall back to previous rendering behavior should a site appear to be adversely affected.

Meal complete! Time to examine the recipes.

Beyond a Single Web Page: Web Slices and Accelerators

Probably the most anticipated end-user features of Internet Explorer?8 Beta 2 are Web Slices and Accelerators. Read on to whet your appetite, and then head to the main articles, later in this issue!

Web Slices

Web Slices are a new Internet Explorer?8 Beta 2 feature that allows you to subscribe to parts of a Web page and view updates directly from the Internet Explorer Favorites bar. Web Slices let users bring their favorite parts of the Web with them wherever they browse.

Web Slices allow the user to subscribe to a portion of a page and monitor the updates on the Favorites bar throughout their browsing experience. Any portion of a page that updates regularly is a reasonable candidate to become a Web Slice. News, stock quotes, sports scores, exchange rates, or even e-mail can be presented prominently in Internet Explorer as part of the Favorites bar. Updates to Web Slices are indicated visually in the item through bolded text.

There are two ways for users to discover a Web Slice: in document by hovering over a Web Slice region on a page, and through the feed discovery button on the command bar.

Once a Web Slice has been subscribed to, it can be accessed through the Favorites bar. For example, consider an eBay Web Slice that allows users to track an auction. Rather than clicking refresh on an auction page every few minutes, a user can subscribe to an auction and be visually alerted of changes to the auction automatically.

See ?Creating Your Own Web Slices? in this CODE Focus issue for a developer's reference to Web Slices.

Accelerators

Accelerators, formerly known as Activities, are a new concept that allows users to interact with a Web service or application from the browsing experience. Users typically copy and paste text from one Web page to another for various reasons. Internet Explorer?8 Beta 2 Accelerators make this much easier to do.

The browser is becoming more than just a place to read content on the Web. Increasingly, users are interacting with Web content in several ways. Examples include pasting selected text in a blog post, mapping out an address, or checking the definition of a word. With Accelerators, users can reach beyond the page to various services for these common tasks.

Accelerators are easy for Web developers to create and can be written to plug into existing applications. They are great ways to attract users to your website through a single click!

Accelerators work on selected text, hyperlinks, and the current document. The user sees different options in the Accelerators menu depending upon the type of content. The most common content is selection; when a user makes a selection the Accelerator button appears. Clicking the button displays the set of Accelerators the user has installed that work for selected text.

Alternatively, users can also bring up the Accelerators menu through the context menu of the selected text or hyperlink. They can access the current page's Accelerators from the context menu of the page or the Page button on the Internet Explorer Command bar.

For more details, see ?Accelerators in Internet Explorer?8 Beta 2? in this issue.

With Internet Explorer?8 Beta 2, we have taken some big steps that we hope will change the way you search. Our goal is to enable you to search for the right term on the right provider and get the right information as quickly as possible.

Search Suggestions

Search suggestions appear as you are typing and offer you ideas on things you might be searching for. In addition to highlighting interesting suggestions, visual suggestions can also be used to provide more useful information.

There are two additional sections you'll notice under the search box. The first section, directly under the search box, contains your previously typed search terms. The other section you'll notice is comprised of results from your History. This section is new to Internet Explorer?8 Beta 2. Using Windows Search, Internet Explorer?8 Beta 2 will search over your stored history.

In all three sections under the search box, we have added hit highlighting so that you can glance through the results and know exactly why each one was suggested to you. The search box dropdown is also consistent in look and feel to the Address bar. In normal use, the Address bar will display results from your Favorites, History, and feeds; however, you can also switch the address bar over to search mode by typing ???, a space, and then your search term. This will allow you to get search suggestions in the Address bar.

For all the details, see ?New Search Features in Internet Explorer 8 Beta 2.?

Browse Safely and Reliably: InPrivate Browsing, Automatic Tab Recovery, and Compatibility View

With Internet Explorer?8 Beta 2, we've beefed up the browser's reliability, added tasty privacy features, and made it deliciously simple to view websites exactly as they were intended.

InPrivate Browsing

If you're using a shared PC, borrowing a laptop from a friend, or using a public PC, sometimes you don't want other people to know where you've been on the Web. Internet Explorer?8 Beta 2 InPrivate? Browsing lets you browse the Web without storing history, cookies, temporary Internet files, and other data.

Using InPrivate Browsing is as easy as launching a new InPrivate Browsing window. InPrivate Browsing can be found under Safety in the Command Bar, or in the Tools menu. When you are finished browsing, just close the window and Internet Explorer?8 Beta 2 will take care of the rest.

With InPrivate Browsing enabled, you browse just as you normally do, but with the following differences:

  • New cookies are not stored
  • All new cookies become “session” cookies
  • Existing cookies can still be read
  • The new DOM storage feature behaves the same way
  • New history entries will not be recorded
  • New temporary Internet files will be deleted after the InPrivate Browsing window is closed
  • Form data is not stored
  • Passwords are not stored
  • Addresses typed into the Address bar are not stored
  • Queries entered into the search box are not stored
  • Visited links are not stored

InPrivate Browsing makes shopping for jewelry for your spouse on a shared computer, for instance, as easy as pie! See the IE Team Blog for more details on InPrivate Browsing: http://blogs.msdn.com/ie/.

Automatic Tab Recovery

In the event of a crash, Automatic Crash Recovery is designed to get you back to browsing as quickly as possible. It uses Internet Explorer?8 Beta 2 tab isolation (Loosely-Coupled Internet Explorer, or LCIE) to help localize the failure to your tab. Should you encounter a crash, you will see a ?balloon? telling you that a tab has been recovered. This is the ?tab recovery experience?-the failure has been confined to just one tab. Your browser never goes away and you get back to your site quickly.

Behind the scenes, Internet Explorer?Beta 2 keeps track of information about your tab. The following data about each tab is stored:

  • Current URI
  • The travelog (your back/forward history)
  • Tab order
  • Which tab was active
  • Session cookies
  • Form data

When you crash, Internet Explorer?8 Beta 2 will tear down the old tab process, create a new tab process, and recover the stored data back into the tab. For many websites this works well; however, there are other websites, such as sites with Web forms, or sites that you need to log in to, that cannot be successfully recovered.

Leveraging LCIE allows Automatic Crash Recovery to quickly restore the user to their browsing session without having to log back in to their sites or re-enter data into forms. Combined, LCIE and Automatic Crash Recovery provide an innovative and graceful way to recover from crashes.

See the IE Team Blog for more details on this feature.

Compatibility View

A lot of the existing pages on the Web-the majority, actually-were developed with either no concept of modern Web standards (developers just didn't know or care) or were authored pre-standards (yes, there are pages that old out there). These older, non-standards-based pages work just great in Internet Explorer?8 Beta 2, since they depend on behavior that has been in Internet Explorer for quite some time and hasn't changed.

As you might expect, there are also a large number of pages authored according to modern Web standards, and the trend is that standards-based pages will soon become the majority. Unfortunately, there are differences between modern browsers and older browsers in the level and type of standards support they provide. New standards have emerged; existing standards have been clarified; bugs have been fixed.

Most sites written to modern standards work in Internet Explorer?7 today. Some, but not all, of these will work in Internet Explorer?8 Beta 2 by default. But there is a small class that won't. This is where the Compatibility View feature comes in. Compatibility View enables content designed for older Web browsers to still work well in Internet Explorer?8 Beta 2.

The feature is controlled by UI settings and Group Policy on the client. When enabled, Compatibility View performs the following changes:

  • The Internet Explorer User Agent String denotes a version of ‘7’
  • The Internet Explorer Version Vector, which is used in the evaluation of conditional comments, denotes a version of ‘7’
  • All pages with !DOCTYPE directives that trigger Standards Mode map to Internet Explorer?7 Standards Mode

By default, Compatibility View is off for all sites in the Internet zone. It can be enabled on a per-domain basis. Also by default, Compatibility View is enabled for all intranet websites, thus ensuring greater compatibility between Internet Explorer?8 Beta 2 and existing line-of-business applications.

Internet Explorer?8: Feed the Need

Now that you have seen a brief overview of what to expect from Internet Explorer?8 Beta 2, it's time to download a copy and get started. Visit http://www.microsoft.com/ie8 and feed your information hunger.

It has been a pleasure talking about food… er, I mean, features with you. Try this: close your eyes and imagine your favorite meal-all of the smells and the flavors. Now crank open your laptop, fire up Internet Explorer?8 Beta 2, and search for your favorite restaurants to get that reservation before somebody else gets your table!