A basic introduction to HTML5
HTML5: The Missing Manual
O’Reilly Publishing provided me access to an electronic copy of this book for review purposes.
When I start looking at books on programming languages, such as HTML5, I look for a few different things. 1) Easy to read and understand language
2) Clear cut, easy to follow (and correct) examples of code
3) Good additional resources to look at
4) Layout and organization of chapters and subtopics flows well
5) And depending upon the language, an in-depth look at how it works.
While this book doesn't offer an in-depth look at every aspect of HTML5 (it is meant for beginners) it does meet the first three criteria that I look for and mostly meets the clear organizational path.
This book doesn't give an in-depth look at HTML5 because what Matthew is trying to do is provide a basic introduction to the various tools and components of HTML5 and how you might be able to use them in your day-to-day work. And this is where the book excels. Matthew breaks down the book into three broad themes (meet the new language, creating modern webpages, building web apps with desktop smarts) and further broken down into 12 chapters on each of these broader themes. Plus he includes a great 4th section with appendices and other additional resources and real world examples of code in use.
In the first section Matthew does a great job of explaining how HTML5 came into being versus the continuation of XHTML and how W3C works to approve code. This is important to understand in the context of this book as not every standard developed by the committee or shown in this book works with every browser at this time (there is at least one that only works with one browser thus far.) Matthew does a good job of letting the reader know which standard will work with which browsers and when, if ever, the standard might be widely adapted. He also does a good job of breaking down the various standards that have the most real world use in building webpages, such as the discussion on semantic tags in Chapter 2. Matthew provides clear cut examples of code and explains how you might be able to use them.