In this installment of Learning Flex From Scratch, I'm going to diverge a bit from the usual content, and devote this time to disclosing the most helpful resources I've found so far on my journey into Flex. There's a lot of information out there for those who want to learn Flex, but nonetheless it can be tricky sometimes to find that perfect resource that answers your questions.
Those who are new to programming altogether may inadvertently overlook great resources because they often don't know what information is important to focus on. Inevitably, throughout the series we will discover additional helpful links, and we'll be sure to report them as they come along. Not a complete list of available resources by any means, rather these are those that I've found helpful so far:
Perhaps most of my time has been spent researching the Adobe sites. There is a ton of information here about Flex and other Adobe technologies. It should be noted though, that Adobe's site has several sections with similar content, so if you have trouble finding what you need in one location, you may have better luck in another. In the Flex help section of LiveDocs you can browse page by page through tutorials on various topics that range from an introductory level to more advanced Flex usage. Since the amount of information and possible pathways on this site(s) is so huge, it's important to keep organized. From this homepage, (similar to the help section in Flex Builder) you can navigate to a virtual sea of tutorials. Bookmark this page, and make it your starting point when you need to find information about Flex.
Right away you find a link to a tutorial that walks you through the building of a Flex application. This is a great starting point for getting the feel of using Flex. There's also a nice video you can check out that serves as an introductory overview.
Under the "resources" heading, you'll find several highly useful links including: one for downloading sample applications, the Adobe LiveDocs(tons of info), the Component and Style Explorers, the Developer Center, Flex.org, the Flex Showcase, and the Flex Cookbook.
Lately I've been making good use of the Flex help section in LiveDocs. (I've made a few references to the "Flex help" section in LiveDocs, and if you've followed the links there you may have noticed that they don't lead straight to Flex help. It appeared that the site was having some technical issues at the time this article was posted, so I changed the link to bring you to Adobe Flex Resources, which allows you to download a PDF of the documentation if you like). This site has lots of "learning pathways" that you can read through to gain an understanding of the various parts of the Flex programming environment. Simply click on a topic, and your connected to a series of tutorials that go into great detail. For example, if you'd like to learn about ActionScript, you can find introductory material here, as well as more advanced programming concepts. When learning Flex, use this material as a guide to gain an understanding of the necessary skills to have as a Flex programmer. Beginning programmers, though, may need to consult other resources as well in order to make sense of the Flex environment.
A helpful resource when learning to program in Flex is the ActionScript 3.0 Language and Components Reference. This site contains the ActionScript 3.0 APIs for the Flash Player and Adobe AIR. A beginning programmer can gain a lot of understanding by exploring this reference and seeing how the different parts of the language work together. A student of Flex can use this site to clear up any confusion about the relationship language components have with each other.
Thanks to Jonathan Snook's article, "On-demand Seminars from Adobe", here on InsideRIA, many people know of, and are taking advantage of a huge collection of recorded seminars posted here. You'll find talks on all Adobe products here, and lots of them, so it's easy to get sidetracked by all the Photoshop or Premiere sessions-remember..., Flex! :) Although many of the Flex seminars here cover fairly advanced topics, a beginning Flex developer can get a feel for what's to come in their education by checking out any one of them.
Finally, the Adobe Developer Center's Flex page is a good spot to check out to keep current with the Flex world. You'll find similar content here as you will on other Adobe Flex sites, with great links to important information that will help you make the most of Flex. Another resource that's been helpful, but is not specific to Flex is the Adobe Developer Center's ActionScript page. If you're new to ActionScript, this site can help make sense of it all by providing links to many different informative discussions.
In addition to the many resources available at Adobe, I find it useful to consult a few other key sites. I always make a stop at Wikipedia when I'm trying to work through concepts and terms. If I need to understand general programming concepts, I can usually find some useful information here.
There are a few resources that I'd like to recommend that aren't free. Available as a subscription, I've found the tutorials at Virtual Training Company, and Lynda.com to be very useful. Both of these services offer a wide range of tutorials for many different technologies outside of Flex, so if you need information outside the scope of the Adobe sites, they might be worth the cost. Also available as a subscription is the Safari Books Online service. Depending on the subscription plan you choose, you have access to thousands of books at your disposal. Among those books is Essential ActionScript 3.0, by Colin Moock (O'Reilly Media inc.), of which I've nearly worn out a hard copy.
Finally, it's important to mention that a major part of learning Flex is getting to know the environment of the Flex community. I find it helpful to keep current with the content of several blogs, including:
Again, this list of is by no means a comprehensive group of resources by which to learn Flex. Indeed, many of the included links have within themselves many relevant and important links to great content. The idea is to browse through them and hopefully come across helpful information. It's important for anyone learning Flex to create an organized system of research so that they spend more time studying pertinent information than searching for it. With that in mind, we welcome your comments regarding helpful resources you may have run across in your experiences with Flex.
As an ongoing project, Learning Flex From Scratch has created a del.icio.us. account so that you may have access to our favorite links. We will be adding content here as we continue to run across new finds. http://del.icio.us/lffs