March 15, 2009

Choosing the best Flex book – Flex book reviews

Posted in Software at 23:05 by graham

UPDATE March 19th: Added First Steps in Flex, and Learning Flex 3.

You’re an experienced server-side programmer, with a background in C/C++/Java/C# or Python, but no Flash experience. You want to learn Flex. Which book should you buy to learn Flex 3? I have speed-read the following, so that you don’t have to:

Good Flex Books

0. Getting started with ActionScript3 with mxmlc

A free online tutorial, which gets you writing your first ActionScript class, compiling it, and running the resulting SWF in flash player.

1. Foundation AS 3.0 w/ Flash CS3 and Flex – Steve Webber – Friends of ED

Flex is an application framework built on top for Flash, so you need to understand Flash to learn Flex. This book gets you building ActionScript apps. It explains some parts in Flash Authoring, but usually presents a pure ActionScript alternative, which only requires a text editor and mxmlc from the Flex SDK.

Learn about the Flash events, frames, graphics, etc. There’s a small bit of Flex at the end, but this will give you a solid foundation. And if, like me, you’re from a server-side background, playing an MP3 and graphing it in real time will be a lot of fun!

2a. Adobe Flex 3.0 For Dummies – Doug McCune

Don’t let the title put you off, it’s a very good introduction to Flex, and one of only two books that explains the component lifecycle, and the invalidation pattern. Will get you up to speed fast. Most of what isn’t covered here is in the online Flex API.

2b. Programming Flex 3 – Chafic Kazoun – O’Reilly

Good coverage of all of Flex, including explaining what’s Flex and what’s Flash, and explaining the component lifecycle. More complete than the For Dummies. Up to the usual high O’Reilly standard. If you’re an experienced programmer, and you know how Flash works, get this one.

3. First Steps in Flex – Bruce Eckel and James Ward – MindView

Very short (140 pages) and very tight tour of Flex (with a peppering of OO basics). Comes out of the Flex classes the authors have taught. As the name implies, it’s a great first exposure book, which will get you working in Flex fast.

It’s too short to cover the component lifecycle, how Flash and Flex relate, or how to work without the GUI (with mxmlc). Almost all the examples are in MXML, when in practice you’ll mostly write ActionScript classes.

If you’re short of time, a manager, or you’re learning Flex because you have to, this is the book for you. If you have more time and interest, prefer Programming Flex 3.

4. Flex 3 Cookbook – Various authors – O’Reilly

Lots of helpful stuff in here. Not a good book to learn from, but a good second Flex book.

Average Flex Books

Essential Guide to Flex 3 – Charles E. Brown – Friends of ED

Very basic. It would get you going, but only just. It’s a fair title, which delivers what it promises – just the essentials. Takes 600 pages to cover what First Steps in Flex does in 140. Prefer First Steps in Flex or Flex 3 for Dummies.

Flex 3 in Action – Tariq Ahmed – Manning

A disappointing book from Manning, which usually does better. This would get you going, as it covers all the Flex basics, but doesn’t go any further. No coverage of the invalidation pattern or component lifecycle, no mention of Sprite at all, and a poor index. A plus is that it includes a voucher for a free PDF version of Flex 4 in Action, when it comes out. Prefer Programming Flex 3, the O’Reilly book.

Poor Flex Books

Creating Mashups with Flex and AIR – Chris Korhonen – Friends of ED

Pick any two buzzwords, and publish. This book is all over the place, with lots of bits of content, but nothing substantial at all.

Pro Flex on Spring – Chris Giametta – APress

Here we go again, you got your two buzzwords, let’s print. This is a Flex 2 book. The first three chapters are hand waving about project setup (staffing, tools, installing, etc), then in the next chapter we’re overriding updateDisplayList, without any mention of how that fits into the overall framework.

AdvancED Flex 3 – Shashank-Tiwari – Friends of ED

This book is all about connecting Flex to other things, such as Java, PHP, Twitter, Salesforce, etc. But I wanted to learn Flex, not the Salesforce API! It also uses updateDisplayList without telling you what’s going on.

A plus point is that this is the only book I found that doesn’t toe the Adobe Consulting party line on Cairgorm, the ‘official’ Flex MVC framework, inspired by Java’s Struts. He points out it’s design shortcomings, how Struts isn’t a good match for Flex, and offers two alternatives.

Learning Flex 3 – Alaric Cole – O’Reilly

Should really of been called ‘Using Design view in Flex Builder’, as that’s pretty much all it covers. It takes forever to get going (‘Who uses Flex’, ‘How Flex relates to C’, etc), and then has helpful sidebars telling you how to add comments using only the mouse (Click the Source menu, select ‘Add block comment’). Doesn’t deserve to be an O’Reilly ‘Learning …’ book, and I think Tim knows, because it didn’t get an animal for the cover.

On the plus side it is the most visually appealing book in the list. If you don’t read books without pretty pictures, and don’t own a keyboard, this might be the Flex book for you.

Special Mention – An Unusual Flex book

Flex 3 Component Solutions: Building Amazing Interfaces with Flex Components – Jack Herrington – Friends of ED

I really liked this book. It is essentially a catalog of third party Flex components, which, here, means graphical widgets. He covers the open source libraries, such as AS3CoreLib, FlexLib, and Degrafa, and the commercial ones such as as3components.com, and ILOG’s Elixir.

With First Steps in Flex, this is also the only good coverage of using Flex’s states, which the other books show, but don’t explain, and don’t use in a helpful fashion.

Finally there’s a great tip to use Google’s Sketchup 3D modeller to pre-render an animation, as an alternative to PaperVision3D.

10 Comments »

  1. PK said,

    March 4, 2010 at 04:00

    How about “Professional Adobe Flex3”?

    — PK

  2. jenue said,

    October 29, 2009 at 16:53

    one good flex book also is “Java and Flex Integration Bible”

  3. Vikram said,

    August 28, 2009 at 05:30

    How about Wiley’s Flex 3 Bible?

  4. James Ward said,

    March 20, 2009 at 10:35

    Thanks for adding First Steps in Flex!

  5. Will Wilson said,

    March 17, 2009 at 17:30

    Agree with your comment about ‘Essential Guide to Flex 3’. While it was an enjoyable read I came away knowing very little – certainly not enough to build my own application. Also coverage of ColdFusion is really poor; no mention of the RemoteObject tag – or any tag for that matter – it just guides you through the wizard.

  6. Kris said,

    March 17, 2009 at 15:57

    Hello,

    Please add your site at http://www.sweebs.com. Sweebs.com is a place where other people can find you among the best sites on the internet! Its just started and we are collecting the best found on the net! We will be delighted to have you in the sweebs listings.

    Regards Kris

  7. Graham King said,

    March 16, 2009 at 22:50

    @cease I totally agree, the bulk of these books read like an annotated API guide. Java books were like this in the early days.

    @Jeremy I’d love to review it, but my book buying budget is pretty empty now :-) From the table of contents and index, it does look more complete than most.

  8. Jeremy Crosbie said,

    March 16, 2009 at 21:14

    I am surprised that “Adobe Flex 3: Training from the Source” wasn’t included in your list. I would place it in the “good” category.

  9. cease said,

    March 16, 2009 at 19:28

    Although I haven’t read all of these, I have read a lot of them, still looking for a very good flex book. The problem with most of them is all they do is cover the components available for 90% of the book, and look very little into whats going on underneath. I will have to check out the Foundations book. Good writeup thanks

  10. James Ward said,

    March 16, 2009 at 02:41

    If you want to review First Steps in Flex by Bruce Eckel and myself then please email me so I can get you a copy. Thanks.

    -James http://www.jamesward.com

Leave a Comment

Note: Your comment will only appear on the site once I approve it manually. This can take a day or two. Thanks for taking the time to comment.