TechBookReport logo



Keywords: Javascript, HTML5, web applications

Title: Programming HTML5 Applications

Author: Zachary Kessin

Publisher: O'Reilly

ISBN: 978-1449399085

Media: Boook

Level: Some Javascript recommended

Verdict: Not enough detailed content

 

The first thing that strikes you about this book is its size - or rather the lack of it. Stand this next to some of the others in O'Reilly's Programming series - such as Programming Perl, for example - and the slimness of this volume really does stand out. And it's not as if the subject matter is itself small - with web apps all the rage, and HTML5 the next big thing - you'd expect something a bit chunkier. Unfortunately this feeling of 'is this all there is' is hard to shake off.

To be fair, let's start with the positives. Author Zachary Kessin has got a very readable style, and what he has to say is interesting and engaging. To be honest lots of tech authors really struggle on this, but he doesn't, which is a real bonus. And, to be fair, small can be beautiful when it comes to technical books. Sometimes a book is so full of padding you think you could use it as a pillow. That's not the case here, where the content is terse, and so is the code. So, to be clear, the slimness of the volume isn't necessarily the problem.

There are, however, lots of minuses too. Firstly, there's so much left out of this book that it's hard to really gauge who it's aimed at. How can you have a book on programming HTML5 applications and not really cover HTML5 or CSS3? The content is almost exclusively about Javascript. The assumption, clearly stated it has to be said, is that the reader is already fairly familiar with it as a language - it's nowhere near suitable for a beginner. But that begs the question, if the reader is already familiar with Javascript, aren't they going to be looking for additional information on the non-Javascript aspects of HTML5 applications programming?

This is terseness taken to the extreme. For example, HTML5 supports graphics programming in the browser using Canvas and SVG. This is mentioned in passing towards the end of the book. The topic gets four paragraphs. It's no more than a fly-past. Local storage, another big deal in HTML5 applications, fares a bit better, but even that is covered in around ten pages.

The most satisfying parts of the book were actually the chapters that focused on the language itself and on testing. For someone who's already got some Javascript experience the chapter on lambda functions, functional programming and decorating objects was the most satisfying. Second to this was the chapter on the challenges of testing Javascript applications, including coverage of QUnit and Selenium. But while this is interesting and useful, it's also not especially about HTML5 applications either.

For someone who's looking at building a first HTML5 application there's simply not enough here. And that's the big problem. You can have a slim book and still pack in the core content that the reader expects, but this isn't the case here. As a reader I felt that I needed more - this book really only scratches the surface.


Hit the 'back' key in your browser to return to subject index page

Return to home page

Contents © TechBookReport 2012. Published February 29 2012