Native Interactivity and Animation for the web
Steve Fulton & Jeff Fulton
Printed in May 2011
O’Reilly Media, Inc.
I was all excited when I received this book. I´ve been looking into Canvas briefly but not fully got my head around it. I’m originally a Flash developer with over 10 years of Actionscript programming experience, that has been embracing the transition to Canvas over the past six months.
The Flash parts are in my experience beneficial when starting with Canvas. HTML5 Canvas offer lots of similarities but also many differences. This book describes those differences very well and in a manner a flash developer easily can grasp.
The book contains 628 pages of tips and tricks when working with Canvas. It´s mainly written with game development in mind, but the techniques described in the book do apply on other types of interactive experiences as well. In fact, I would buy this book only for having it as a reference to the mathematical formulas it´s describing!
The first chapters walk you through the Canvas API, text, images, and drawing. The next few chapters deal with math and physics, video, audio, games and mobile. The last chapter introduces the reader to 3D with WebGL and multiplayer.
Every section includes demos and a well-organized walk through of the code, and the routines used are repeated so you can understand the flexibility of the code.
Tone of voice
I really appreciate how the authors make use of a simple language (for a non-native English speaking person like me). Without being all too humoristic or too earnest, even the more complex topics are easy to understand.
HTML5 Canvas is a great resource when transitioning from the Flash platform. But even if you haven´t been working with Flash and Actionscript, I think this book is a good start to learning about Canvas. If you are completely new to programming you might find it hard to grasp all the programmatic terms and examples.
I have read quite a few tech books throughout the years and this one is definitely one of my top 3 picks in terms of structural arrangement and the ease of understanding the concepts described.
I would have liked to give this book top score, but the fact that it is game-focused, brings it down a notch. I would have preferred to see the techniques described in other contexts as well.
All in all, I totally recommend it to anyone interested of learning about the HTML5 Canvas element.
Patric Jonsson, @flashpatric
Malmö, Sweden, April 5th 2012