Sunday 26 February 2012

HTML5 in Metro-style Apps

Metro style apps in Windows 8 have all the performance benefits of IE10 when showing Web content. In Metro style apps, Web content is always JIT compiled and hardware-accelerated. 

Other platforms do not provide the same level of performance in apps. For example, Cocoa apps on iOS offer significantly worse JavaScript performance than the same content running in Safari.

Many applications embed HTML to provide a richer and always up to date experience for consumers. 

For example, the developer of a restaurant guide app might want to include a live map showing the locations of the list of restaurants the user is choosing from. 

If you write an app on iOS, common actions like panning and zooming the map will run twice as slow in an app compared with Safari.

Anyone writing a Metro style app for Windows 8 can easily include Web content in their app. 

In an HTML or XAML app, just include an <iframe> element or a WebView control to get the full benefit of IE 10 performance.

With Metro style apps, it’s easy to integrate many existing Web services seamlessly into your app. 

It’s also possible to build new services for your app that let you deliver dynamic HTML content without having to update your application.

When you include Web content in your Metro style app, your app gets all the performance benefits of IE10 automatically without any additional or special work. 

JavaScript code continues to run fast with JIT compilation, and your app will automatically use GPU to accelerate HTML graphics.

Native HTML5 First IE10

Web sites and HTML5 run best when they run natively, on a browser optimized for the operating system on your device.

We built IE9 from the ground up for HTML5 and for Windows to deliver the most native HTML5 experience and the best Web experience on Windows. 

IE10 continues on IE9’s path, directly using what Windows provides and avoiding abstractions, layers, and libraries that slow down your site and your experience:

The only native experience of the Web and HTML5 today is on Windows 7 with IE9. 

IE9’s approach to taking advantage of what the operating system offers – from the native graphics stack to jump lists in the shell – maximizes performance, usability, and reliability. 

We released a fast, clean, trusted, and interoperable IE9 globally for consumers and businesses four weeks ago with the goal of delivering the best experience of HTML5. 

The best HTML5 is native to the operating system, so Web sites have the fewest translation layers to pass through. The best HTML5 enables sites to use the same markup – the same HTML, CSS, and script – across browsers. 

The best HTML5 respects developers’ time and enables same markup by treating site-ready HTML5 differently from unstable technologies.

Native HTML5 support in Windows with IE9 makes a huge difference in what sites can do. We demonstrated real-world sites from the development community that a year ago would have been possible only with a plug-in or application. 

These sites are live now and show that the technologies as implemented in IE9 are production-ready for consumers and businesses. Links are available at www.beautyoftheweb.com for you to try them out. 

These sites are proof of progress on the goal of same markup and standards-based Web technologies. They run in other browsers – just slower. As an industry, we’ve just started to see what’s possible when sites can take advantage of these capabilities. 

The experiences may be new today; they reflect what people will simply come to expect from sites in the future.

An Early Look at IE10

We’re about three weeks into development of IE10, and based on the progress we’ve made, we want to start engaging the development community now. At the MIX conference today, we showed the new browsing engine along with several new browser test drives that anyone on the Web can try out. 

You can run these at www.ietestdrive.com to see emerging standards like CSS3 Multi-column Layout (link), CSS3 Grid Layout (link) and CSS3 Flexible Box Layout (link), CSS3 Gradients (link), and ES5 Strict Mode in action. 

We also demonstrated additional standards support (like CSS3 Transitions (link) and CSS3 3D Transforms (link)) that will be available in subsequent platform previews of IE10, which we will update every 8-12 weeks.

Also available are new test drive samples for today’s production browsers. For example, Fishbowl is an update to the original FishIE tank that now uses more HTML5 technologies. 

Paintball is another great demonstration of what fully hardware accelerated HTML5 Canvas delivers.
Progress, not just activity, in improving the Web

Many of us share the goal of a more powerful, native, and robust Web. We want actual progress, not just iteration and activity, toward that goal.

This is how the Web delivers on the promise and value of the standards: when we as an industry deliver consumer-ready and business-ready HTML5.

The cadence of browser releases reflects how often technologies are updated, not how much the technologies actually advance from instability to robustness. 

Higher cadence just means more frequent releases of incomplete software (and larger version numbers). What matters is when consumers and businesses take delivery of robust, production-ready browsers that use the new technology.

Practical developers ask about the stability of emerging standards and when they can expect the same mark-up will work consistently across browsers. IE9 includes support for many emerging, not yet final standards (like font embedding, performance measurement, and privacy) that are stable enough for same markup to work consistently. 

Other emerging standards (like WebSockets and IndexedDB) need to stabilize before developers can expect that. We work with the community on these as part of HTML5 Labs, where iteration will not affect consumers and mainstream developers.

When browsers prematurely implement technology, the result is activity more than progress. 

Unstable technology results in developers wasting their time rewriting the same site. 

The gaps in same markup working consistently across browsers are obstacles to advancing the interoperable Web, not just annoyances.

Native implementations are just better for developers, consumers, and businesses. They keep Web sites from falling behind applications in performance and other important ways. 

While using cross-platform, non-native compatibility layers makes browser development easier, they don’t necessarily make a better browser. Browsers that use modern operating systems more directly deliver better experiences. 

Browsers that compromise by spreading across too many OSes and OS versions face challenge.

IE 9.0.5 Available via Windows Update

The February 2012 Cumulative Security Update for Internet Explorer is now available via Windows Update. This security update resolves 5 privately reported vulnerabilities in Internet Explorer. 

The most severe vulnerabilities could allow remote code execution if a user visits a specially crafted Web page using Internet Explorer. 

An attacker who successfully exploited any of these vulnerabilities could gain the same user rights as the local user.  

Users whose accounts are configured to have fewer user rights on the system could be less affected than users who operate with administrative user rights.

This security update is rated Critical for Internet Explorer Windows Clients, except IE6 client, where it is rated Moderate; and Moderate for Internet Explorer on Windows servers, except IE6, where it is not rated. 

Most have enabled automatic updating and do not need to take any action. We recommend that customers, who have not enabled automatic updating, enable it (Start Menu, type “Windows Update”).

We recommend that administrators, enterprise installations, and end users who want to install this security update manually, apply the update immediately using update management software or by checking for updates using the Microsoft Update service.

Benefits of GPU-powered HTML5

Performance

The benefit of building on Direct2D technologies is that the browser makes the most of the underlying PC hardware that is optimized for rendering rich graphics. This results in faster web applications and a higher quality browsing experience for users and web developers.

As IE9 does more work using the GPU, there is less CPU load, enabling other browser subsystems to do more, as well as enabling higher frame rates for smooth animation and video playback.

The GPU is a much better choice for some graphical operations – for example, the GPU executes alpha blending and bilinear image scaling much faster than the CPU, and uses pixel shaders to perform complex per pixel calculations.

Super-fast zoomed browsing

IE9 uses the GPU to scale images and other content, making zoomed browsing very fast – this is what makes the map zooming demo on ietestdrive.com so fast.

Windows is still the only broadly used operating system that allows the users to change the size of all UI elements on the screen to improve readability and legibility on new high DPI displays on laptops and desktop computers. 

IE9 builds on the work done in Internet Explorer 8 (the first browser to zoom Web page content by default) to ensure that users can easily read the Web on high DPI displays.

Hardware accelerated HTML5 video using Windows Media Foundation

IE9 makes the most of your graphics hardware by using the Windows Media Foundation system to play HTML5 video, using the CPU or the hardware video decoder if available.

The reduction in CPU usage on machines with hardware video decoders greatly improves battery life – MIX demo we played two 720p HD videos, using barely 30% CPU on a $400 netbook. (versus 100% CPU usage in other browsers, playing only one HD video while dropping frames.)

The IE video engine decodes video directly with and into the GPU. Once the video frames are decoded, they can be treated like any other bitmap in the graphics pipeline with full compositing and integration into the rendering system.

High quality image and color support

IE9 uses the Windows Imaging Component (WIC) to decode PNG, JPEG and (new for IE9) TIFF and JPEG XR images. For a lot of uses, JPEG XR offers a good compression improvement over JPEG, allowing you to serve higher quality images at the same file size.

In addition to being up to 30% faster than IE8 decoders, the new WIC decoders understand embedded color profiles in images, making IE9 a color-managed browser that understands ICC v2 and v4 profiles.

Text quality and performance

IE9 uses the GPU (via DirectWrite) to do text output – up to twice as fast as IE8, and with higher quality. Text can be smoothly animated in IE9, and sub-pixel positioning is a more faithful representation of the Web (and font) designer’s intent.

High quality graphics printing

To do high quality printing of HTML5, you need a high quality print subsystem. Internet Explorer 9 directly converts web content into XPS format when sending output to the printing system.

XPS is a more modern print system with native support for features such as opacity and complex paths, which results in increased fidelity and quality when printing modern web content.

Because IE9 is built on Direct2D, it has full software fallback support for every feature. The goal is to improve graphics performance and fidelity even for the small number of machines in the world without GPUs, via high quality software emulation.

New HTML5 experiences – with the power of the GPU
Taken together, all of these GPU-powered capabilities in IE9 make it easier than ever before to create amazing new class of Web applications using same markup. 

For example, it took just an hour to create the final MIX demo – a rotating carousel of four translucent videos (at the 28:00 mark in the video). 

The page uses simple HTML and JavaScript - the same markup that runs in other browsers, but with higher quality and performance made possible by harnessing the power of the GPU.

Microsoft Updates IE 9

Microsoft on Wednesday updated its rough-edged preview of Internet Explorer 9 (IE9), adding support for several crucial HTML5 standards and boasting that the browser is faster than ever.

Last updated seven weeks ago , the IE9 Platform Preview is not a full-fledged browser, but instead features a very bare bones interface wrapped around Microsoft's newest rendering and JavaScript engines.

When Microsoft debuted IE9 in mid-March, the company committed to updating the IE9 preview approximately every eight weeks until it issues a public beta. Microsoft has not disclosed a release date for either a public beta or the final version of IE9.

The third preview released Wednesday introduces support for HTML5's Canvas element the tag lets site designers insert dynamic, scriptable rendering of 2D shapes and bitmap images into pages as well as for hardware-accelerated audio and video tags.

Microsoft has pinned IE9's attempt to match or surpass the speeds of rivals on the browser's ability to offload text, image and video rendering chores to the computer's graphics processor, dramatically increasing performance.

The company also touted the preview's improved JavaScript speed and Web standards test scores.

According to Microsoft , IE9 Platform Preview 3 completes the SunSpider JavaScript test suite almost 47% faster than its May predecessor, although it still lags behind production editions of Apple's Safari 5 and Google's Chrome 5 on Windows. 

Platform Preview 3 was more than 10 times faster at rendering JavaScript than 2009's IE8, Microsoft said.

On the Acid3 benchmark , which checks how closely a browser follows certain Web standards, the IE9 Platform Preview 3 scored 83 out of a possible 100, a 22% improvement over Platform Preview 2.

Unlike production editions of IE, the preview runs alongside existing versions, such as IE7 on Vista or IE8 on Windows 7 . 

Neither the Platform Preview or the final version of IE9 will run on Windows XP because the browser relies on APIs (application programming interfaces) built into Windows 7 and added to Vista and Server 2008 R2 in October 2009, but not available on the nearly nine-year-old XP.

IE has been in decline for years. Although that slide has occasionally stalled, Microsoft has lost 8.3 percentage points in the last 12 months. 

The most recent data from Web analytics firm Net Applications puts IE's usage share at just under 59.8%, a record low.

Microsoft speeds up Internet Explorer

Microsoft is taking 5.7 million measurements a day to help it make Internet Explorer the fastest web browser on the market.

Microsoft had been panned for its years of neglect of the Internet Explorer web browser and letting it become a security nightmare. 

In an attempt to show how seriously it takes Internet Explorer development today, Microsoft said it is running round-the-clock tests in its Internet Explorer Performance Lab as it rather belatedly tries to make its browser the fastest on the market.

For Microsoft, Internet Explorer is one of the firm's major consumer facing applications and with rival outfits Google and Mozilla promoting faster web browsing, Microsoft knows it can't be left behind again. 

The firm claims to measure Internet Explorer's performance loading content and web applications through peusdo real-world testing down to the nanosecond level.

Microsoft's Internet Explorer Performance Lab uses over 120 machines of varying hardware specifications to try to resolve Internet Explorer's performance issues. 

Curiously Microsoft decided not to connect these machines to the internet but to its own managed network, where it tries to simulate different connections, effectively creating a little version of the internet.

There's little doubt Microsoft is taking Internet Explorer performance seriously. 

Its considerable resources should mean it can outspend some of its rivals, however with Mozilla's Firefox and Google's Chrome eating up Internet Explorer's market share, all this testing is perhaps five years too late.

Internet Explorer 10

Microsoft announced Internet Explorer 10 at MIX 11 in Las Vegas, releasing the first Platform Preview at the same time. 

At the show, it was said that Internet Explorer 10 was about 3 weeks in development. 

This release further improves upon standards support, including CSS3 gradients. Internet Explorer 10 drops support for Windows Vista and will only run on Windows 7 and later. 

Internet Explorer 10 Developer Preview was also released on the Windows 8 Developer Preview platform.

Windows Internet Explorer 10 (abbreviated as IE10) is the next version of Internet Explorer currently being developed by Microsoft, and the successor to Internet Explorer 9. 

On April 12, 2011, Microsoft released the first "IE10 Platform Preview", which only runs on Windows 7 and later; subsequent platform previews only run on Windows 8. 

It expanded on Internet Explorer 9 functionality in regards to CSS 3 uptake and hardware acceleration. 

The release, only four weeks after the final release of Internet Explorer 9, has been noted as a fast release cycle in the context of the new browser wars.

On Windows 8 it will be divided into two versions with different user interfaces: a new Metro app that will not support plug-ins, and a traditional desktop application, which will retain plug-in support.