Chrome: A new force for web applications?
Promise through the froth
Another interesting feature in relation to Flash is the Canvas element. This was invented by Apple for Safari, which also uses WebKit, and is part of HTML 5. Canvas lets browser applications paint arbitrary graphics, just as you can in Flash or in native code applications. A note to the official specification adds that "a future version of this specification will probably define a 3d context (probably based on the OpenGL ES API)". Speculative - but clearly Canvas has the potential to reduce the need for plug-ins like Flash or Silverlight.
Firefox also supports Canvas, but what about Internet Explorer? You guessed: it is missing, though there are clever wrappers which use IE's VML graphics library to emulate Canvas.
Google has made Chrome quick to install, with no restart needed, and we may see websites that treat it almost like a plug-in: "Install Chrome to view this site."
The other big feature for application developers is Gears, which can enable offline functionality through a local store and web server, as well as Sqlite and the desktop integration mentioned above.
Google has made much ballyhoo over security and robustness in Chrome, thanks to its process isolation for tabs and running processes with restricted permissions. There are echoes of Microsoft's protected mode for IE7, and its tab isolation in IE8.
Reading the white paper on Chrome security, it is interesting to note how security in Chrome's current implementation is closely tied to Windows features, which is probably a good thing since Windows poses unique security challenges thanks to its poor history of users running with local administrator rights.
While this is good progress, Gears security strikes me as a concern. Gears lets web applications write to the user's hard drive, though only in areas that are part of the user's profile, and isolated by site origin. The idea is that only trusted sites are allowed to use Gears.
Chromium, the open source Chrome project, ready for Visual Studio 2005
However, with popular applications like WordPress starting to use Gears as an option for enhancing performance by caching data, there is the possibility of all sorts of sites inviting the user to enable Gears. What if a hijacked site used the desktop API to install malicious desktop shortcuts, or worse? Although Gears enables new possibilities for developers, I suspect the security aspect needs more examination.
Another snag with Chrome is that currently it does not support any extension API. Google said it will do in future, though bearing in mind that one popular extension might be an ad blocker, perhaps it will not hasten in this.
Finally, one significant Chrome advantage for developers is that all the code can easily be downloaded. Configuring a machine to build some open source projects successfully can be a challenge. But Chromium is delivered as a Visual Studio 2005 solution, and its main dependency is the Windows SDK. This gives developers the ability to debug and profile code at the deepest level.
Chrome, then, is a significant new force in web application development. ®