I've had the pleasure of getting a review copy (PDF no less, which is darn handy) of the soon to be released Flex 3 in Action. Authored by Tariq Ahmed, with Jon Hirschi, Abdul Qabiz, Faisal Abid, and Frank Krul. This book will be released on September 15 and is published by Manning Publications. So what did I think?

First, let me talk a bit about my personal history with Flex. I've been playing with it since before it was released, but as I've had a grand total of one paying job to do Flex work, I've yet to truly gain a good understanding of it. I took a Flex 2 class last year, but as we all know, without practice our skills tend to wane a bit.

I've followed the development of Flex 3 as much as I could, but honestly I've not had a chance to really look at the platform deeply. So with that in mind, I had high hopes for this book. I was not disappointed.

The number one thing that struck me about this book is how well it presents the basic concepts. The book will often make comparisons to "traditional" web development (html/js) and how it compares to Flex. This makes things a lot easier to grok for those of us moving from the HTML development to RIA work. Those of you who use ColdFusion (a few of my readers, right?) will also be happy to see many comparisons between Flex and ColdFusion concepts. All in all this makes for a very friendly book.

Now this doesn't hold true completely. As with any book with multiple authors, you will have different levels of quality produced. I'm sure folks have noticed this in the WACK as well. The chapter on popups, for example, I found to be very difficult to understand, and not very well done. It's something that could be fixed in a later edition of course. Another chapter that stood out for me was the data services chapter. It begins with web services and wastes a few pages on describing and defining WSDL. Frankly I'd rather have my teeth pulled then read about WSDL. This is something that should be cut and added to an appendix perhaps. I was also curious as to why Flash Remoting wasn't shown first. While it's true that not everyone has access to FR, the benefits of it are so incredible that I'd lead with that before anything else probably. Just my two cents.

Another complaint, although minor, is the amount of typos and misspellings. I saw many "Coldfusion"s and at least two code samples that were very wrong (and boy did I feel proud when I recognized it myself!). However, my PDF copy is about 8 weeks old now (sorry Manning!) and I'm sure these issues are fixed. (And it's not like the WACK doesn't have a few issues as well.)

Something I really appreciated about this book is that the authors went out of their way to try to show multiple ways of doing something. So for example, they will show both the MXML way of doing some action as well as the pure ActionScript way of doing something. Another thing they will do is often show multiple ways of performing some action, and explaining how one way is more abstract and better in general. Some may consider this a waste of space, but with Flex being easy in general, showing how multiple paths and comparing and contrasting these paths can really give new developers a step up in their learning.

All in all the book really does a great job of teaching you Flex 3. I finally "get", thanks to the book, why the AdvancedDataGrid rocks, and many other concepts that I stumbled with in the past now actually make sense to me. As a quick note, AIR is discussed in the final chapter, but just in a quick introduction. Folks looking to learn AIR will need another book. (Which is perfectly sensible of course!)

I definitely recommend picking this up.