Dropping some ActionScript learning on ya
Last week we started publishing two series of articles to help our users navigate the ins and outs of ActionScript and I’m happy to report that our efforts have met with much rejoicing (in the form of many retweets).
We started off by published the first few articles in our Fundamentals series for people learning ActionScript with little to no programming background:
This week, we published the first articles in our series on object-oriented programming concepts used in ActionScript:
Object-oriented programming concepts
We’ll be adding more articles to both series as well a few getting started articles to help you navigate all this awesome content. New articles will appear on the Adobe Developer Center. Hope it helps and let me know if it doesn’t.
What the heck are AIR Native Extensions?
The quick explanation
With we released of AIR 3.0 we added this awesome new feature called native extensions. Trust me these are cool. Essentially, a native extension will let you extend the functionality of your AIR app so it can access the native capabilities of a device. So, by adding some native code you can:
- make a mobile device vibrate.
- change the channel on a TV
- read pressure sensitivity data from a pen table
The more technical explanation
A native extension is a combination of:
- ActionScript classes.
- Native code. Native code is defined here as code that executes outside the runtime. For example, code that you write in C is native code.
Here’s why you might want to write your own extension:
- A native code implementation provides access to device-specific features. These device-specific features are not available in the built-in ActionScript classes, and are not possible to implement using application-specific ActionScript classes. The native code implementation can provide such functionality because it has access to device-specific hardware and software.
- A native code implementation can sometimes be faster than an implementation that uses only ActionScript.
- A native code implementation allows you to reuse existing code.
When you have finished your ActionScript and native implementations, you package your extension. Then, an AIR application developer can use the package to call your extension’s ActionScript APIs to execute device-specific functionality. The extension runs in the same process as the AIR application.
An even more technical explanation
Here’s an architectural diagram of an extension:
Where to get extensions
Because you can package and reuse extensions, you don’t need to write one yourself. You can use someone else’s. We’ve even set up a handy page where you can find some extensions to get you started. These extension were contributed by both our in-house dev team and our community. Take a look.
If you’re interested in creating your own extension, we’ve created a whole set of content just for you. Check out the Native extensions doc here.
Learning ActionScript is not as hard as you think
As part of our effort to get more involved in our community, my team has been out there in the forums listening to issues and pulling stats on page views and ratings. After gathering up the data we generated a list of top issues. You know what’s at the top of that list (besides Flash Player crashes)? People are having trouble learning ActionScript. We get tons of questions like: why do I need to learn scripting? Where do you get started? Who can help?
We can help. We’ve spent some considerable effort to try and make the process of learning AS3 easier to follow.
So what did we do? Well, for starters we asked our newest community lead, Michelle Yaiser, to employ her awesome training skills to create two series of articles. A fundamentals series that will demystify ActionScript and provide basic information for people trying to pick up the language and an object-oriented programming series aimed at people with some coding experience who want to understand AS3. Michelle is a well known teacher and presenter so she really knows her stuff. You can see the first of these articles on the Adobe Developer Connection right now.
In the coming weeks, Michelle will be publishing more articles to both the ActionScript Fundementals and Object-oriented programming series so check the ADC regularily. She’ll also be wrapping up the learning articles with a couple of step-by-step learning guides to help users figure out where to start and where to find more in-depth information.
We really hope this helps get people started with AS and get them building awesome content!
Looking for ActionScript examples? Try this
Did you know there are tons of ActionScript examples quietly living within the pages of the ActionScript 3.0 Reference? No, well there are. You’ll find tons of code snippets throughout the reference and most classes have longer class-based examples. Just look for the View the example link on a page:
We’re constantly adding new examples for new and updated APIs so check back often to see what’s new. Some of the examples we add were provided by our community so they are awesome and have real-world applications.
But wait, there’s more…
We’ve recently started adding even more practical examples on the pages people use most. Just follow the More Examples links for info on applying APIs, and real-world examples:
Want to see it in action? Take a look at the Array page in the AS Reference.
And even more…
The ActionScript Developer’s Guide also has a ton of examples. Check out a list of all the longer practical examples available on the Using Examples page. You can get the downloadable source code and assets in a handy-dandy ZIP here.
Adding the “Community” in community content
Over the past year we’ve been out in the community listening to issues and gathering content. The results of our labors have been links and code samples added to our help pages. While we feel this makes our content more dynamic, it doesn’t do much unless you know it there. So, in an effort to get more eyes on all this great community content, we’re spicing up our pages in a couple of ways:
- Byline – This icon indicates a link to customer content. See the Enable persistence in a mobile application page for an example of this.
- Adobe recommends – This treatment includes a blurb and an image to help draw attention to the link. See the Displaying HTML content in mobile apps and Network Interfaces pages for examples of the “Adobe recommends” treatment.
In the spirit of giving credit where credit is due, here’s a list of some of authors we’ve highlighted so far:
- Brian Telintelo Using Geolocation on a mobile device
- Steven Peeters Detecting network connection types with Flex 4.5
- Sean Voisen Making the most of StageWebView
- Mark Doherty AIR2.5 StageWebView demo – OAuth Support
- Jonathan Campos HTML Web View in AIR for Android
- Rich Tretola Create a basic web browser with StageWebView
- Sönke Rohde AIR Mobile StageWebView UIComponent
If you have a great tutorials, videos or code sample you want to share, send it along. We’d love to add it to our content so everyone can benefit from your expertise.
iBattery native extension for Adobe AIR
A new native extension for Adobe AIR: http://blogs.adobe.com/actionscriptdocs/2011/09/ibattery-native-extension-for-adobe-air.html?utm_source=twitterfeed&utm_medium=twitter
This new extension was submitted by our community in the AIR pre-release. It’s part of our on-going effort to get out and collaborate with our users. Many thanks to Todd Anderson
My raison d’etre
So more about me: I work for Adobe focusing on all things ActionScript and Flash Player. <legal> The opinions expressed in this blog are my own and not those of the company </legal> So while I’m writing about my random thoughts some of them deal with my job. After all, I spend most of my day there so why shouldn’t the occasional work topic pop up.
Anyway, my job has been changing lately. I used to be in charge of a team of tech writers but today I’m in charge of a group of community leads. What’s the difference? Well for one, we’re getting out from behind out desks and talking to the people who use our product and asking them how we can help. Funny, the idea of writing reams of docs that no one reads has fallen out of fashion. Go figure. Instead, we want to create learning material that is relevant to our users’ everyday lives. You know, actually try and help you do more than make a red ball bounce across the screen. But how do we figure out what content to create? How do we know what you need? Well, that’s why we’re jumping into the great social conversation. We’re trying to go where our users are. We’re going to try and experience the same pain-points you’re all having and just listen. In the end, we may not solve every issue but we may be able to help you get that red ball to bounce and spin.