Why do we need plug-ins such as Flash and Silverlight to create web apps that have the same facilities as desktop apps? With HTML we don't and Google proves it!
We have grown accustomed to the idea that to create Rich Internet Applications RIAs we need to extend the capabilities of the browser. In many cases the capabilities that we need to extend were crippled to implement some sort of security barrier between the untrustworthy application and the innocent user.
Quake in a browser!
Adding back these capabilities and extending the browser experience to make it more like the desktop has always been achieved using a browser plug-in - Silverlight or Flash being the obvious market leading examples. However, the downside is that the user has to be persuaded to download the add-in and this often means that they simply don't bother to view the content or use the app. Even Java FX, which is currently as close to a plug-in free RIA development environment you can find, has a set of runtime requirements that not all browsers or machines meet. Currently if you want to implement a RIA then you generally need to consider using a plug-in, or at the very least a non-standard development environment.
If you think about the idea of using a plug-in to add facilities to a browser the whole idea seems mad. You have a machine with an operating system. This hosts a browser which has limited abilities partly for security purposes and partly because it has to run on a range of platforms. However, most host platforms have graphics and multimedia capabilities that go well beyond basic HTML. These are simply ignored by the browser but delivered by the plug-in. In fact why not just dump the operating system and make the browser the OS.
This is, of course, the nightmare that first forced Microsoft to take the web, HTML and browsers seriously. They seem to have forgotten this lesson and currently seem quite unperturbed by Google's Chrome OS which is designed to be an OS for web applications. This is a radical approach and might not prove popular depending on how well the whole thing is promoted and there are some problems. Any new browser OS has to support the current standards and if it is also going to run RIAs then it also has to support plug-ins. Getting rid of the separate OS layer doesn't get rid of plug-ins - but it might in the future.
So what does all this mean? It is clear that a 3D action game isn't the same thing as a commercial web app and you still might worry that implementing your latest project using nothing but HTML 5 is risky - but wait the clue is in the "using nothing but".
The point is that approaching an app via HTML is standards based and in principle it should be able to run on any modern browser. Also given that the Chrome OS has adopted the same technologies this is also a chance for simplification and unification in that it might not be the browser that offers the runtime environment for your next HTML 5 app but an HTML 5 based OS.
It looks as if some of the madness created by trying to move the desktop into the browser might finally be coming to an end with the browser finally mutating into the desktop.