Thoughts on Essential ActionScript 3.0

Widely considered the ultimate books on programming in Flash, Colin Moock’s Essential ActionScript series recently got updated for AS3. The first thing you’ll notice when you see it on the shelf, or pick it up off a fellow developer’s desk, is that Moock’s been doing a lot of writing. Essential ActionScript 3.0 appears to be about a third bigger than the last version. With the index, it surpasses 900 pages. The size difference between this book and its predecessor is strong evidence of how much ActionScript has grown and changed in recent years.

Let me start my review with a bit of a warning. It’s possible that this book may not contain the information you’d expect in its pages. It’s a book purely about ActionScript, the language. You won’t learn about Flash’s visual drawing tools, the library, components like a List or a RadioButton, and certainly not about anything specific to Flex. The author’s intent is to show you how to use the language itself, regardless of the IDE or type of project in which you use it. Moock shows the reader how to build classes, create functions, use inheritance, and work with many of Flash Player’s native APIs. The information is applicable to both the classic Flash authoring environment and in Flex Builder.

Although the back of the book states, “if you have no prior programming knowledge, this book gently guides you on your journey toward ActionScript proficiency”, I believe that it is more suited for intermediate to advanced developers. Folks coming from AS2 with a little knowledge of OOP should have no trouble, and developers coming from another language will easily transition into AS3. People less experienced in programming may get frustrated by a lack of step-by-step guidance. I’ve heard many people complain that Moock didn’t include enough examples. Personally, I felt the “Virtual Zoo” example that was referenced throughout much of the book felt out of place. Either he should have left it out or he should have built a larger variety of examples.

Reading through Essential ActionScript 3.0 reminded me of the textbooks I had in my college computer science classes. It’s the kind of no-nonsense book a software engineer would use as a stepping stone for a new language before moving entirely to the online documentation, which I think fits well with O’Reilly‘s typical audience. While I very much enjoy the Friends of ED Flash books for their tendency to be lighter reading and more guided, EAS3 was an odd breath of fresh air for me, and I can’t quite explain it. Regardless, know that while it’s a bit more technical, it’s not boring either.

One of the ultimate tests of a programming book, for me, is whether it teaches me anything new. As the guy who always seems to have an answer when my coworkers run into something strange, that can be a bit of a challenge. Generally, it’s some little function on a core class that I simply passed over a million times while reading the documentation. For EAS3, my moment of learning was a little more obscure, but I found the chapter that covers ApplicationDomains and communication betweens SWFs very interesting and I picked up a couple tidbits that I know I will need someday.

Though not for everybody, Essential ActionScript 3.0 is a good manual for development with Flash Player’s primary programming language, ActionScript. At nearly one thousand pages, a lot of information will be at your fingertips, and I imagine this book will sit very close to many developer’s desks. Beginners may find its information a little hard to follow, but experienced developers should feel right at home.

About Josh Tynjala

Josh Tynjala is a frontend developer, open source contributor, bowler hat enthusiast, and karaoke addict. You might be familiar with his project, Feathers UI, an open source user interface library for Starling Framework that is included in the Adobe Gaming SDK.