HTML5, native or hybrid? All three
In fact while this argument was and is usually conducted along “what do developers think they’ll be using by 20xx” lines, the real struggle was strategic. Apple (for instance) is now all for native apps (since they appear to feed its platform and keep it safe), although interestingly Jobs was a big supporter of Web apps earlier in the piece.
Google, meantime was a natural supporter of ‘open’ HTML5 apps, but is now in a quandry because of the success of the very native Android OS and download store which puts it in a hugely powerful position in the mobile field.
As it stands, Google now seems to sit comfortably between the two approaches: supporting HTML5 with its Chrome browser and Chrome OS while at the same time walking the native walk with Android as its mobile and tablet platform.
You might think the clever and logical outcome for Google is to develop a hybrid platform blending both native code for specific platforms and cross-platform HTML5 (and 6, 7, 8… etc). Google’s upmarket Pixel chromebook, which blends touch-screen and traditional keyboard, may well be a feint into this hybrid territory.
If it is, it may make sense. The obvious argument-stopper back at the ‘HTML5 v. native’ question has always been “It will be a hybrid approach”. In fact it will be HTML5, native AND hybrid.
Telerik has just completed a mobile developers’ survey on this very question. Its first survey, conducted just a year ago, came in the wake of Facebook’s humiliating failure to complete its HTML5 version of Home. That no doubt set the sentiment gauge back a few stops at the time, but according to Telerik, it’s all come right a year later and HTML5 is looking up again. It’s the developer’s choice.
The key takeway from the survey was that there was no 'one-size-fits-all' solution available or likely. In fact the reports shows that many developers are swapping approaches mid-project, in both directions. What might seem the best approach at the start - either Hybrid/HTML5 or Native - might turn out to be less so as changing requirements or an improved understanding of the capabilities of an environment or tool develops through the project. Reading between the lines this was effectively what happened to Facebook.