ActionScript 3.0: It is NOT hard to learn
Here is a warning: This article is best suited for ActionScript Beginners.
I regularly hear people claim, incorrectly, that to use ActionScript 3.0, you have to know object-oriented programming, or every variable's datatype must be declared, or everything has to be in packages and classes. In practice, none of those assertions are true. ActionScript 3.0 code can be placed on timelines, exactly as it was in ActionScript 2.0 and ActionScript 1.0. The code doesn't have to reside in classes. Variable datatypes don't have to be declared, even in the strict compilation mode. The language is designed to provide as much or as little structure and flexibility as the task at hand requires. If you prefer to program procedurally with functions and variables declared in frame scripts, you can continue to do so in ActionScript 3.0.
However true and a good motivational statement for developers who're new to ActionScript, I'd say, "Once you're through with it, curve yourself towards writing ActionScript 3.0 the better and the right way - object-oriented programming, declare every variable's datatype, write package and classes."
Nonetheless, I love Colin Moock's innovative methodology to instill that sense of fearlessness, easy-to-program approach towards ActionScript 3.0. I've always been a big fan of him and will remain so. In the article, he looks at a series of comparative examples showing typical code that a new programmer might have to learn. He compares ActionScript 3.0 codes with their ActionScript 1.0 counterpart to show that it isn't that hard at all to learn the new ActionScript 3.0.
Ah! I remembered that I still need to write a review of his awesome book - Essential ActionScript 3.0