Significant Enhancement in Internet Explorer 9

Background

Microsoft announced Internet Explorer 9 Release Candidate on Feb 10th, 2011, RC indicates except bug fixing, there would not have big changes before the final RTM. Since I've been keeping a watchful eye on Internet Explorer 9 from its very first preview version, I would like to write a post about its significant enhancement from a developer's point of view, I intend to summarize most significant enhancement points of IE9 listed below:

Enhanced performance

The New Chakra JavaScript Engine

Hardware Acceleration

Enhanced Web Standard Support

HTML5 (huge number of new attributes support and Web Storage support)

CSS3 (border-radius, ::selection pseudo-element, )

W3 standard Geolocaltion API

Windows 7 Integration

Website customizable TaskBar Jumplist

By achieving new features above, Internet Explorer 9 will absolutely be the fastest and best Web Standard support version in the entire IE history.

Walk through IE9 Enhancements

New JavaScript Engine – Chakra

IE9 team must be persistently working so hard on improving Chakra's performance, I picked the following two paragraph from Chakra Page on Wikipedia:

Microsoft's development of the engine was in response to evolving competing browsers, on which IE8 was lagging behind in terms of JavaScript processing speed.[3]SunSpider tests performed on November 18, 2009 showed the PDCversion of IE9 executing scripts much faster than IE8, but slower than respectively Firefox 3.6, Chrome 4, and WebKit Nightly.[4] The same test performed on March 15, 2010 showed the first IE9 Platform Preview (using the then-current version of Chakra) to be faster than Firefox (with SpiderMonkey), but slower than respectively Safari (with SquirrelFish Extreme), Chrome (with V8), and Opera (with Carakan)

On February 8, 2011, the test showed the IE9 Release Candidate (using the current version of Chakra) to be faster than Safari, Firefox (with TraceMonkey), Opera, and Chrome.

You can image there was a "steep curve" done by Chakra to catch up the competitors in the market: V8, TraceMonkey, etc.

IE9 is cutting edge in all modern Web Browsers in WebKit SunSpider test.

Hardware Acceleration

In general, the "Hardware" is the GPU, from the page All Around Fast, they said:

Today's websites and browsers only use about 10% of the processing power your PC has to offer. Internet Explorer 9 unlocks the other 90%. With Internet Explorer 9, we're tapping into your graphics processor through Windows to harness the full potential of your PC. It makes HD video smoother, colors truer, graphics clearer, and websites more responsive.

Internet Explorer 9 uses the DirectX family of Windows application programming interfaces (APIs) to enable several advances for web developers. We have moved all graphics and text rendering from the CPU to the graphics card by using Direct2D and DirectWrite.

Well, how faster IE9 does by utilizing GPU's power? Please take a look at this Video.

HTML5

By running an HTML 5 support test at http://html5test.com, IE9 RC scored 116, it is a pool score comparing to most other modern browsers (refer table below), however, much much better than IE 8 and below…

Web Storage

Web Storage is a brand new HTTP state storage strategy implemented by Session Storage and Local Storage, they are 100% stored in the client by a concrete browser, it is obvious bandwidth is saved and security risks are reduced by doing this. IMHO, this is one of the greatest improvement of HTML5! I've written an article which delves deep into HTML5 Web Storage, here is the link:Web-Storage-In-Essence.aspx.

Now IE9 RC has completely supported sessionStorage and localStorage, Invoke sessionStorage and localStorage in JavaScript is fairly easy, sample code is shown below:

Geolocation API

One month ago, I wrote a blog talking about invoking W3 standard Geolocation API and Google map to track end user's Geolocation (http://wayneye.com/Blog/IPAddress-To-Geolocation/, it described how to implement W3 standard way to track Geolocation with sample JS code), at that time I was using IE9 Beta2 which doesn't support it, now it is excited for me IE9 RC has completely supported Geolocation API! See screenshot below:

By clicking "Allow once", your Geolocation will be collected by the browser and passed to Google map.

Windows 7 Integration

This is really a highlight feature and it is really funny:), see screenshot below:

Conclusion

IE9 RC has made a great enhancement on JavaScript execution performance and much better Web Standard (HTML5, CSS3, Geolocation API) support, even more, a seamless integration with Windows 7 Taskbar Jumplist. However, there are still a number of pities, personally I wish IE 9 will implement the following HTML5 features:

HTML5 form input elements (<input type="email/range/url/time/color etc.") now are completely not supported by IE9.

Web Workers which supports long-running scripts that are not interrupted by scripts that respond to clicks or other user interactions.

Server-Side events (SSE) is standardized as part of HTML5, which allow servers initiate data transmission towards clients once an initial client connection has been established.

I am so sorry dudes....
I was trying to "import" my technical blogs into CP last night by adjusting my RSS generating engine (a poor & naive engine written by me), I forgot to populating the whole content...

I sincerely request you adjust your rating after seeing the complete content, or can you delete the rating 1? Thank you so much and sorry again for my mistake!

Did Apple, Mozilla or Google pay you to vote him 1? He just shared his information to the global community. We all love to help other by sharing information over blog and CodeProject and have no tendency to earn money on that.

Yes, I agree that it is not an Article and the author added it via Technical Blog feed which is absolutely correct. This is a blog post feeded by CodeProject on author's request. So, it is ok.

Next, I also agree that IE (I will not say any version) is slower than other browsers but there are plenty of things (e.g. HTML5 rendering), which are pretty faster in IE9. You can find some comparison on net. By reading that, you will come to know what is True there and what is False.

You are coorect in what you say and you are starting to make me feel bad that I voted so low.

My reaction is based on the feeling I got from reading the article like it was a "political" pitch for Microsoft and raising a slow browser to some kind of "superior" position among browsers and it doesn't even have web sockets !