Posted: Sunday October 10, 2010
Tagged with: web flash browsers competition performance
Reading the review of Internet Explorer 9 at Nettuts+ highlighted one important thing above others to me. Over the past few years competition between browser has becoming more and more intense, yielding amongst other things, vast performance improvements, better standards compliance and a change in the browser market share which has been long dominated by Microsoft's offering. With the latest iteration of their web browser, Internet Explorer 9, Microsoft has put a lot of effort into catching up and in some areas surpassing the traditional modern browsers: Google's Chrome and Mozilla's Firefox. Whether you agree with their business practices or release cycles, it is hard to argue that IE9 won't be a competitive browser. The benchmarks speak for themselves (though the question of how long that will last due to the long period between versions is an interesting one and one that Microsoft hasn't shed any light on post IE9). The very fact that browsers are now following Microsoft's lead in implementing hardware acceleration is a perfect example of one browser dragging others forwards.
All this highlights the fact that the intense competition between modern browsers has really driven technological advance on the web. For example, HTML5 - the latest buzzword around the web these days - would probably not have gathered so much interest and attention had browsers not started implementing its features bit by bit despite the specification not being finalised yet. Internet Explorer 9 is the latest to join this class of browsers which are bringing tomorrow's technologies into today's browsers.
As Internet Explorer's browser share continues to be eroded (a good thing as Microsoft's older versions of the product hold back the web and should either be upgraded or ditched) competition will only get fiercer between the three main vendors: Microsoft, Google and Mozilla. Technological competition will at some point benefit from shorter release cycles which will benefit users of Microsoft's offering most. All this is good for developers but most importantly users as they will benefit more rapidly from open technologies which will be optimised for performance.
Which brings us to the main web platform which stands out from this competition. Flash. Unfortunately for the web, there is only one vendor which provides the Flash plugin across all operating systems. In the past this has been a good thing as it has enabled the platform to evolve very quickly and fill the gaps that open web technologies couldn't provide. Today however Flash technology has come under fire for not performing on various platforms, more notably from Steve Jobs who has publicly highlighted problems on mobile platforms. While the mobile debate still continues, it is beside the point. Any Mac user will still tell you today that Flash underperforms on this platform even despite Adobe announcing such improvements as GPU acceleration in their latest version. A quick comparison of CPU usage of a given Flash site on a Mac and a PC will reveal this discrepancy which has been an annoyance for years. The fact that the Safari plugin ClickToFlash has gained such exposure on the net is a testament to this fact. This plugin disables Flash on websites unless specifically activated by the user.
The performance problems on the Mac highlight how one vendor without a real focus on performance across all platforms can drive users away from a technology. Flash itself has it's strengths and place on the web today but its implementation is driving users away. Were it truly open in a way that a company like Apple could implement an OS X accelerated version then it would be a different story. Sadly this is not the case and given the widening number of platforms Adobe wants to port the technology to it is hard to see them devoting the resources necessary to really bringing the plugin up to scratch.
Ultimately the question is how sustainable is the single vendor model? The advent of open source and open standards has taken technology to a place today that would have been unachievable had one vendor retained control of any given platform. Today Adobe's offering on Android (the one mobile platform that runs currently Flash) is not compelling enough and this is after a very long development time. Of course the experience can only get better, but at what point will efforts devoted to improvements on one platform, say Blackberry, mean that another one such as WebOS will miss out?
This article is not an attack on Adobe or its Flash platform but rather a wake up call to them. They need to encourage the development of third party optimised implementations if they want the platform to survive the mobile onslaught. I for one would love to browse a rich interactive web without being able to distinguish a site running Flash from a pure HTML based one just by looking at CPU usage.