Learning ActionScript 3.0 offers the best intro to Flash development

Very few Flash or Flex development books get me excited. They’re all generally pretty decent, but only the rare ones1 make me want to read cover to cover. A good programming book is one that I want to share with others before I’m finished reading it. Among those great gems, I’ve recently added Learning ActionScript 3.0 by Rich Shupe and Zevan Rosser. It certainly lives up to its title.

Learning ActionScript 3.0 differs greatly when compared to other books published by O’Reilly. The most obvious difference when you see this one on the shelf will be that there’s no iconic animal drawing on the front cover. When you pick it up, and start looking through its pages, you’ll soon discover an even more surprising difference. Every page in Learning ActionScript 3.0 is printed in full color. All the code is formatted to match Flash CS3’s ActionScript editor. All the screenshots are, you guessed it, fully colorized. Unlike many other developers, we of the Flash community tend to work on projects that are highly visual. Screenshots in previous Flash and Flex books I’ve read have been greyscale and sometimes very difficult to see. Learning ActionScript 3.0 sets a new standard. The books I read in the future will lose points immediately for crappy black and white screenshots.

The visual treatment isn’t all that stands out. The authors have experience teaching “thousands of students at universities, training facilities, and conferences”. In the preface, they explain that they’ve been told time and again that no ActionScript book for beginners is truly all that good for the intended audience. They set out to try to fix that problem. In my opinion, they’ve done an excellent job crafting a book that slowly eases someone into programming ActionScript without being too overwhelming. They wait six chapters before introducing Object-Oriented Programming, and I think it works very well. The first three chapters offer the bare minimum of programming concepts and then the reader is taken into sections about how to use the Display List and the Timeline. Only then, after the reader has built a couple things, and hopefully gained some confidence, do the authors begin to introduce the complete concepts behind objects and classes. It’s a very gentle introduction with enough hands-on learning that it doesn’t get boring.

In later chapters, the authors touch a bit on text, sound, video, animation, drawing, and loading external assets like images and XML. With each topic separated into its own chapter, I get the feeling that this book will be an excellent resource for someone who might want to skip certain bits of functionality and reference it later as needed, or for a beginner that needs a refresher every once in a while. I noticed on several occasions, as I was reading, that these sections cover many of the most common questions I see in online Flash forums.

The book ends with a chapter on “Programming Design and Resources”. This chapter introduces various software development models, such as waterfall, spiral, and several agile methods. I like that this section was included because most Flash books don’t really mention larger project-scale processes that developers might want to consider following. It’s refreshing and forward thinking. After that, the reader gets a very short introduction to design patterns. Though I was impressed that they were included, I felt this section could have been bigger or omitted. With such a slow introduction to OOP earlier in the book, the sudden appearance of what many consider a very advanced topic felt out of place. Still, I think it will probably help inspire some especially-talented new developers to discover how to move to the next level, so perhaps it fits. Finally, the chapter ends with several large lists of online resources for Flash developers, including many popular blogs (sadly, not mine. haha), open source libraries, books, forums, conferences, and more. For someone new to Flash development, this section alone offers hundreds of ways to go beyond what’s in the book.

While targeted more at beginners, Learning ActionScript 3.0 serves as an excellent reference to some of the most common tasks ActionScript developers encounter daily. The transition from the very basics of Flash programming to more advanced topics is gentle, but engaging. The full color pages throughout this book separate it from everything else on the shelf, and O’Reilly couldn’t have chosen a better topic than Flash to enhance with this wonderful addition. I’m not the only person excited about this book either; Lee Brimelow, Platform Evangelist at Adobe, called it “the best ActionScript book ever written.”

1For reference, the last Flash book that got me excited was Object-Oriented ActionScript for Flash 8, which I read back in 2006 (there’s an updated version, Object Oriented ActionScript 3, if you’re interested).

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.

Discussion

  1. Pingback: 12 Great Ways to Learn ActionScript 3 in Flash - Zeus Labs

  2. Greg

    I echo your sentiments on this book. I’m an experienced AS3 Flex developer, and I purchased this book a few weeks ago because one subsection addressed a specific problem I was curious about, but I was also pleased to see that it covered many topics that other supposedly advanced books hadn’t even touched, or only touched upon lightly. Its a great reference.

  3. Jesse Freeman

    Saw your excellent review and linked to it on my blog FlashArtOfWar.com. You really summed up why this book is a must buy for any beginner/intermediate Flash developer. This is coming from someone with over 8 years of Flash programming background. Also been a big fan of your blog for some time, hope you are enjoying your new job at ESRIA.

  4. hugo

    hi i had constructed a web site based in 3D animation but i have a big problem the site is very easy justo a 360º and i want when i press one bottom in menu start playing and stop in another frame example( play (2) stop (26))…i search ouver a week but cant find anithyng if some one can help me i apricieite

    thanks
    hugo_gaspar

  5. Pingback: Cole’s Learning Flex 3 perfect for newbie Flex developers - Josh Talks Flash

  6. conspirisi

    I’m trying to get back into flash coding, I did a couple of object orientated experiments with AS 2.0. But didn’t find the time to fully explore it.

    A couple of years have passed and i’m itchin’ to get back into codin’. Do you reckon it possible to use a book like ‘Learning AS 3.0’ with FlashDevelop to learn AS 3.0 for free?

  7. Josh Tynjala

    conspirisi, yes, I think it would be possible to learn AS3 with completely free tools like FlashDevelop along with a good book like this one. One thing worth noting is that FlashDevelop doesn’t provide the ability to draw things visually, like the Flash authoring tool. To pick up coding, though, it should work well.