HTML5 Guidelines for Web Developers

Twelve chapters on different technologies that fit into HTML5.

A few months ago, I was asked if I knew HTML5. It’s a good question if you think about it. See the thing is HTML5 is not CSS3 or whether your browser can playback video without using a Flash plug-in, despite what Apple says. Instead, it’s being developed in public with several different versions as browser makers propose and implement a range of new features. This book is a set of 12 chapters that provide real examples of some of the features being developed, from the well known to the less known as well as background information on why specific standards are used.

The best instruction books don’t just tell you how to do something, or why things are done a certain way. They are forward-looking to how things will likely be done in the future, and educated guesses backed up with facts. With HTML5 Guidelines, Klaus Förster and Bernd Öggl have put together a set of 12 chapters on different technologies that are under development for the HTML5 standard. As the book says numerous times, the standard is evolving. While some parts, like <canvas> are already widely supported, others like MathML are not yet, and others like <video> and geolocation are still being hashed out. Consistent behaviour across browsers can not be assumed.

The book starts with a bit of history of how HTML5 came out of the failure of XHTML2 to gain acceptance, the desire for HTML4.1 to continue to be developed rather than be extended willy-nilly by browser makers. The outcome of that would likely be returning to the days when Netscape and Microsoft played one-up with each other extending HTML in incompatible ways.

See also  Front End Drupal

The chapters in the book cover: Structure and semantics for documents, Intelligent forms, Video and audio, Canvas, SVG and MathML, Geolocation, Web storage and offline web applications, WebSockets, Web Workers, Microdata and other improvements.

The first chapter on Structure and semantics, which introduces the new HTML tags (<article>. <content>, <footer> and <header> among others) designed to make it easier for computers to understand the content on a webpage, in the same way <h1> tags are used to signal to search engines that the content is important. Much of this can be used today, and JavaScript libraries like Modernizr (that detect a browser’s support for various CSS3 and HTML features) are mentioned as tools developers might want to use.

The chapter on the <canvas> element is particularly in-depth, and that’s partly because <canvas> is one of the best supported HTML5 features. On the other hand, the HTML5 <video> mess is addressed with examples of how to support H.264, WebM and Theora video in a compatible way. Since the best selling tablet, today only supports H.264, there’s some useful information for developers who will need to support it as well as newer Android tablets coming only the market.

While the audio and visual features get a lot of attention, HTML5 promises to improve the web experience and make it possible to mimic traditional desktop applications. Among these improvements are better form elements, offline storage, geolocation and some general improvements like spell-checking and drag and drop files. Those last two are already part of Firefox and Chrome, but this aims to standardize them.

See also  Learning HTML 5 Game Programming

In closing, this is a good solid book on how to use HTML5 as it exists today. The 12 chapters that make up the book cover most of what developers have available to them today.  To borrow William Gibson’s best-known quote, HTML5 is here it’s just not wholly supported in one place; or in other words, the features that will probably be part of HTML5 support today in different browsers, but no one browser supports them all. This book will help you navigate through that fact.