Author: Bruce Lawson & Remy Sharp
Publisher: New Riders, 2010
Aimed at: Early adopters
Pros: Clear and straightforward
Cons: Lacks depth and encourages poor practice
Reviewed by: Ian Elliot
Impatient to get going with HTML5? If you can't wait then you probably need to read about it and try some of the new facilities out.
This particular book is both a shop window for HTML5 and a sensible discussion of where we are in the process of shifting from one standard to another.
It starts off with a look at the new tags and manages to convey the idea that the new tags are all about introducing semantics into your layout. No more is HTML a layout oriented markup system - it simply conveys meaning. For example, the <nav> tag indicates a chunk of HTML that provides page navigation e.g. a menu. What an item looks like is governed by the CSS. This is not a new principle but it is pursued more aggressively in HTML5. The book does a good job in explaining the new tags, showing how to use them and discussing what to do for browsers that don't support them.
Chapter 3 moves on to issues of more interest to programmers - forms and how to use the new form tags and facilities. Chapter 4 covers video and audio and bemoans the fact that the situation with codecs is so messy as to require multiple encodings of any video file you want to serve. Chapter 5 deals with Canvas and graphics in general. Chapter 6 is about data storage and the new facilities we have to store session and domain data. Finally the book rounds off with a look at offline options, the not-so-good drag-and-drop API, the easy to use Geolocation facilities and threading. The range of the book indicates what a mixed bag of technologies HTML5 is.
The authors discuss the pros and cons of HTML5 in an informal style. This certainly isn't a reference manual. It also doesn't provide real world example, there is a lot of detail missing. It also doesn't really discuss the impact that HTML5 will have on other technologies such as Silverlight and Flash - but then you probably need a crystal ball for that.
A good, straightforward but not deep introduction to HTML5.
Recommended if you want an overview with opinions, history and reasons why.