Many folks who are just tuning into the HTML5 saga because of the battle between Adobe and Apple are surprised to learn that the push to create a fifth official version of the HTML specification began six years ago. And that's just the first half of the story because the latest implementations, while nice, are far from standards. The HTML5 demos from Apple, for instance, are impressive, but they only run well on Safari.
While the jokes may sting and waiting for more general adoption is tiresome, it would be a mistake to simply ignore HTML5. There are not only powerful companies behind it, but there's also the standard process of technological development. The software, both browsers and tools, tends to absorb all of the orbiting extras, incorporating them into the main standard.
HTML5 will change many aspects of life on the web. It will not displace Flash or Shockwave: One glance at the games on Miniclip.com, such as Jet Ski Racer, shows how much ground the HTML5 committee must cover. But HTML5 will still remake the web and enable basic websites to do much more, from tracking our location to storing more of our data in the cloud. HTML5 tags will displace plug-ins for simpler jobs, at least some of the time, and it will open up advanced capabilities to a larger audience. It might even make the web more secure, more efficient, and more adaptable.
To see where this new standard may take us, I collected the opinions from a number of developers, programmers, and designers. Here is an unordered list of ways that the web may change as HTML5 is gradually adopted and standardised.
HTML5 will reduce the importance of plug-ins
Once upon a time the web world liked the idea of a browser plug-in or add-on because it encouraged creativity and experimentation. Sounds, moving pictures, and other neat tricks appeared on the web first through plug-ins built by Sun, Adobe, RealAudio, Microsoft and many others. The plug-in interface was open to all, and everyone experimented with adding new features to the old, text-based world.
Will the idea of a plug-in disappear or fall into disfavour? Perhaps, but it depends on what you want to do. If drawing images is your goal, then the Canvas object may be powerful enough. But if you want to build specialised 3D worlds like the ones found in the more sophisticated Flash and Shockwave games, you may be pining for the old days when a plug-in could get direct access to the video hardware or run a 3D game world.
HTML5 will enable more interactive graphics
The old web loaded images by downloading a GIF or a JPG file. The new web can build an image on the fly in a Canvas object. A number of good graphing libraries have appeared, and all of them make a website's graphics much more interactive.
There is a legitimate danger that all of this sophistication will overwhelm the poor client-side processors. In the past, some developers deliberately disabled the Flash plug-in to avoid the headaches and overhead of rendering heavy Flash content. That won't be an option in the future. Everyone who's been complaining about Flash may learn that the troubles had little to do with the technology itself, the problems came from the designers battling for our attention.
HTML5 will allow applications to tap local file storage
Web programmers have always been able to store a surprisingly large amount of information in cookies (300 cookies of up to 4,096 bytes in IE), but to do real work you need more room. The early versions from the Dojo toolkit used the Flash plug-in to commandeer a section of the hard disk, but now the tools can simply use HTML5.
The technique does not need to undermine the hard work of cloud proponents, though, because the local databases can act like smart caches. Game programmers might store descriptions and artwork locally, saving the time of downloading the information again and again.
On the downside, these databases are buried deeply in the system folder, so making backups may not be the simplest step. Users who may want to move their local data from machine to machine will pull out their hair. Or perhaps we'll just see a hybrid cloud/local approach appear where the local machine caches the data but the cloud maintains a definitive version that can be accessed from different machines.