At least that's the vision. And folks have been eating it up. IT managers love the promise of HTML5 and the cloud because it means installing one app on the desktop -- the browser -- and forgetting about those boxes in the cubicles. Programmers love it because HTML5 is often as easy as putting a few tags in the right places, even though CSS can occassioinally drive us mad. The bean counters love it because Web designers are cheaper and more plentiful than C++ programmers. Strategic managers love it because they don't need to ask the smartphone manufacturers for permission to get in their Web store.
[ Experts explain all key HTML5 specs, from canvas to local storage, plus the latest browser benchmarks and report cards on HTML5 support in InfoWorld's megaguide to HTML5. Download the PDF today! | Beware the 11 hard truths about HTML5. | Keep up with the latest developer news with InfoWorld's Developer World newsletter. ]
Exemplary HTML5 app No. 1: Zoho
There are at least 33 apps in the Zoho collection. Some are basic productivity apps, like a word processor, and others, like the Zoho CRM app, are more akin to structured databases for storing information about customers, users, and clients. Zoho has wisely found a way to work with Google Apps, so you can use the best of both collections.
Zoho's tools rely on many parts of the HTML5 specification, but less than you might expect. The editing tools do much of the layout work with carefully designed CSS rules. The editing logic is all handled by Zoho's code, and I couldn't find the new HTML5
contentEditable tag in any of the documents I tried. If the feature set is complex, it can be easier not to trust the browser to handle the editing.
Several Zoho apps open up databases using either the local storage or session storage API. They can push key/value pairs for later reuse.
Other parts of the HTML5 tool set are obvious. The form builder lets you drag and drop elements into place. The data, though, seems to be using its own internal hooks instead of the newer features for form validation.