The basic Web application paradigm hasn't changed in almost two decades. Even the latest, slickest HTML5 websites resemble those of the early days of the Web, at least at their core. A developer wraps tags around data and writes a bit of JavaScript to make the sites somewhat more interactive. So what's all the big fuss over HTML5 being a game changer for apps on the Web?
First off, while the model hasn't varied, the feel of the sites deploying the latest HTML5 features is dramatically more interactive and dynamic. Whereas yesterday's Web offered essentially static displays of data, HTML5 forerunners are serving up dynamic presentations through which the data moves and flows quickly. Relatively small enhancements such as these make all of the difference in speed and sophistication.
[ Find out how to hack your browser in 7 easy steps | Also on InfoWorld: "HTML5 in the browser: Canvas, video, audio, and graphics" | "HTML5 in the browser: Local data storage | "HTML5 in the browser: HTML5 data communications" | "HTML5 in the browser: HTML5 forms" | "HTML in the browser: Geolocation, JavaScript, and HTML5 extras" ]
The emerging HTML5 model for Web apps differs in four major areas. The most visible may be the relative standardization of the canvas
object, an improvement that makes it easier to write Flash-like animations with JavaScript. The results are often just as, well, flashy as the ones that come from Flash for anyone who's able to put in the time. Casual game developers who used to write for Flash are producing slick games that run in JavaScript alone.
Developers continue to report that the tools and libraries for Flash code are substantially better than those for HTML5, but this is changing. The gap will probably narrow, given the major push by the browser makers to cut Adobe out of the loop, but it may be difficult to unseat Adobe, considering the depth and quality of its tools.
The other major differences lie below the surface. The latest browsers offer Web developers a local database for caching several megabytes of material. Most users won't even notice this reliance on the browser for data caching; they'll just feel that some data-centric apps are livelier. The lag from waiting for the Internet is disappearing.
There are many other HTML5 features that make it easier for Web developers to build applications that offer responsiveness on a par with that of native applications. Improved forms, more sophisticated layouts, and richer background work all offer smooth performance that may not be as immediately apparent as dancing sprites on a canvas
object but still add up to more usable tools.
Smart designers see HTML5 as a way to create a single design out of basic tags and CSS directives that works well on many different machines and on many different screen real estates. It's never perfect, of course, but it's easier than writing Java for the Android phone, Objective-C for iOS, and an entirely different Objective-C for Mac desktops.
Can HTML5 help the Web supplant native code? Only time will tell, but for now here are 10 Web apps that highlight the best that HTML5 can deliver.
HTML5-optimized app No. 1: TweetDeck
In the beginning, TweetDeck was just a native application. Then the company recognized that Web apps were becoming more common and powerful, and it wanted TweetDeck to remain a leader.
James Whittaker, an architect who helped craft the user experience of the Web version of the product, said that while he knew that moving the application to the Web would be a challenge, the extra features made it possible to design a sophisticated version of the application.