HTML 5 Unleashed

I previously reviewed some books on HTML5 and CSS3, but that was back in 2011. This is a brand new book on HTML5. It doesn’t cover CSS3, but it covers the HTML specification in greater detail than the other two books.

HTML5 Unleashed is part of the same series as my book, Ubuntu Unleashed 2014 (which is brand spanking new as well…just saying…). I’m stating that right up front so that everyone knows that I have a potential conflict of interest. Read my review with that in mind. I’m trying to be unbiased, and I have no direct financial or editorial interest in HTML5 Unleashed, but I am the author of a book in the same series. So, now that that is out of the way, let’s dig in.

HTML5 Unleashed is filled with beautiful, full color pages. Figures and code appear just as they do in browsers and quality code editors. That is a really nice bonus that makes long code samples (and we all love long code samples!) easier to read and gives us an easy way to visually confirm that what that code is supposed to do is being done in our browser when we try it out. Seriously, there is color on every page. I like it.

The book starts with a nice, easy introduction that gives us some historic and technical context as to why HTML5 was created and what it is designed to do. For those of us who have been making webpages since the early GeoCities era, it is a nice refresher that makes for a very quick read and provides an accurate context for the newcomer.

Chapter 2 is another quick introduction chapter that presents the important concepts for HTML5 from a high-level. This is actually important as it clarifies the “why are these things being presented” well before you dig in to the meat of the book. Don’t skip it, it’s short and worth reading.

The rest of the book, chapters 3-13, cover what I consider the main reason for buying the book. In here are the details we all want. While a quick Google search will give you most of this information, maybe all of it, it will not give it to you in such a well-planned order that builds upon itself.

Specifically, topics include everything from the basics like Doctypes and semantic tags to forms. Then, we move into deeper topics like rich media. A set of four chapters is dedicated to covering HTML5 canvas, which is the flashiest and most immediately-gratifying part of the new specification as it “natively enables interactive movies, games, charts, diagrams, and tons of other forms of dynamic visual content.” The canvas section includes topics like when and when not to use canvas over other options, working in 2D and even in 3D, making canvas interactive and stateful, performance tips, and even a discussion of its expected future.

The last section of the book takes a 5 chapter romp into HTML5’s JavaScript APIs. There was a time when JavaScript was optional for the web, but if you want to make anything relevant today, you must know how to use at least some set of JavaScript functions. Here, the book covers everything from Geolocation to storage options to messaging and web workers. It goes even deeper into network communication using WebSockets and XMLHttpRequest Level 2. Finally, it covers microdata and related small things and gives you a heads up toward topics you may want to explore beyond HTML5.

This book does not cover presentation, such as is done using CSS. This is the content side of the equation, and honestly it is the part I enjoy most. However, it will not help you learn everything you will need to know about web programming and site creation. It will, however give you the useful tools you need to upgrade your skills to today, if you are an HTML4 or XHTML proficient, and it will help the novice gain a solid foundation and understanding of what makes a site work, which I think is important before you start to work on making it beautiful.

Disclosure: I was given my copy of this book by the publisher as a review copy. See also: Are All Book Reviews Positive?