HTML5: Guidelines for Web Developers – Book Review

As the author of an HTML5 book myself, I was recently asked to review a copy of another HTML5 book that was released earlier this year: HTML5: Guidelines for Web Developers by Austrian duo Klaus Förster and Bernd Öggl, who both work at the University of Innsbruck in Austria.

The book itself contains 294 pages of content and aims to cover a lot of what the HTML5 specification has to offer. It does this rather well, with some interesting real-world examples showing how some of the topics discussed can be put into practice in real-world scenarios.

Some of the chapters are lighter than others, due to the specification not being entirely complete at the time of writing or the topic itself not requiring an in-depth analysis. The chapter on canvas is particularly thorough, giving many examples of what you can do with canvas complete with real-world scenarios of how to do it.

Let’s take a quick look at the individual chapter contents.

Chapter 1 – Overview of the New Web Standard

Like most HTML5 books, the first chapter talks about HTML5, how it all started with a time travel through related historic events. It also briefly talks about XHTML and addresses the question of whether you can use HTML5 now.

Chapter 2 – Structure and Semantics for Documents

The second chapter talks about the new semantic elements in HTML5 such as <header>, <article>, <section>, <aside> and <figcaption> and when and how to use them. Some lesser known HTML5 elements such as <ruby>, <mark> and <code><wbr> are also talked about.

Chapter 3 – Intelligent Forms

Forms were given an overhaul in HTML5, and this chapter introduces the new input types and how to use them. The new input type attributes such as autofocus and placeholder are also mentioned. Client-side form validation is also discussed and the chapter is rounded off with an example of a support form which uses some of the elements and attributes discussed in the chapter.

Chapter 4 – Video and Audio

The emergence of native audio and video in your browser is one of the most talked about features of HTML5. This chapter mainly talks about video and describes the different video codecs that are used. There’s also a useful section on how to convert the video files between the different formats. The JavaScript Media API is also introduced, showing you how to use it to create your own custom controls.

Chapter 5 – Canvas

As I mentioned earlier, the chapter on canvas is a heavy one, but it needs to be, as so much can be done with canvas and its accompanying API. All the basics are covered, as is animation and how to manipulate individual image pixels and other features. Topics such as accessibility and security with canvas are also mentioned.

Chapter 6 – SVG and MathML

This is quite a short chapter, merely touching on SVG and MathML, since both of these specifications (which are separate to, but related to, HTML5) are huge and pretty much require books of their own! Still, it’s nice to see them mentioned.

Chapter 7 – Geolocation

Geolocation is not strictly part of HTML5, but is often talked about in relation to it (indeed I did so myself on HTML5 Doctor!). The chapter talks about the simple specification and how to use it, and also provides some nice examples of Geolocation in use with Google Maps and OpenStreetMap.

Chapter 8 – Web Storage and Offline Web Applications

This chapter introduces the essentials of the topics in question and then combines them at the end in a sample game called Click to tick! so you can see how they might be used.

Chapter 9 – WebSockets

Like the preceding chapter, the topic is introduced and then shown in use via a simple Battleships! game.

Chapter 10 – Web Workers

Continuing with the same idea as the previous two chapters, web workers are introduced and discussed, before showing how they can be used in a simple search for leap years application.

Chapter 11 – Microdata

This chapter discussed microdata and how it can be used. It also provides a detailed example of how it can be used, which is fully explained.

Chapter 12 – Finishing Touches: Some Global Attributes

This final chapter discusses global attributes in HTML5. As usual a full example of how it might be used is provided, once again in the guise of a game. The sample game also uses the Drag and Drop and File APIs, which are briefly touched on in this chapter to complete the example.

Other Thoughts

The content of the book is fine, with everything explained well through examples, and as is the norm these days, the accompanying website contains all the code for download.

The style of the book, as in the actual book design, is a bit bland, and can make the book difficult to read, but this of course is not the fault of the authors. There’s no colour in it at all, and whilst some might think this doesn’t matter in a technical book, I think it does these days. The styling for displaying the code is also a bit poor and makes the code difficult to read at times as it breaks into too many lines.

Summary

Overall HTML5: Guidelines for Web Developers is a good book on HTML5, and I would recommend it. The addition of so many varied coding examples helps the book along and makes the content clearer. The book style could have been better which would make the content more accessible to the reader and I think this book is more for the seasoned developer rather than for someone less-techy to dip into, and therefore is aptly named!