Flash Camp London ’09 – February 26th, 1-8pm

flashcamp

From the official website:

Flash Camp London ’09 is a FREE, community-run event for everyone interested in the Adobe Flash Platform! Whether you’re just getting started with Flash or you’re an expert, Flash Camp aims to provide something for you.

We’ve lined up some of the most experienced Flash creatives in the world who will share their knowledge on everything Flash related including, migrating from ActionScript 2 to ActionScript 3, 3D, Inverse Kinematices and video to list a few.

We’ve also got some great prizes to give-away throughout the day (more on that as we get closer to the event). Don’t feel you have to rush off as we will likely move to a local drinking hole to continue the discussions over a few pints.

These are the speakers:

  • Mike Chambers, Adobe [learn more]
  • Lee Brimelow, Adobe [learn more]
  • Serge Jespers, Adobe [learn more]
  • Seb Lee Delisle, Plug-in Media [learn more]
  • James Whittaker, RefreshingApps [learn more]
  • Richard Dean, Lightmaker [learn more]
  • Michael Chase, AKQA [learn more]

I’ll be there, giving some help to the organization. And you?

p.s. to register visit the official website

Logging Flash, Flex and AIR outside the IDE

I’ve discovered myself that logging can save a lot of time in developing an application. I’ve used initially the well known trace action, that permits to send messages to the Output Panel in Flash (or FlashDevelop) or Flex Builder IDE.
Then I’ve used some class like Out from BigSpaceShip Labs. I’ve added a call to the debug method of the Out class in all the methods of my classes, using it like this:

1
2
3
4
private function constructUI():void {
Out.info(this, "constructUI");
/*...*/
}

and having an output like this:

INFO: com.unicoshop.UnicoShop: setConnection
INFO: com.unicoshop.UnicoShop: initApplication
INFO: com.unicoshop.views.TabView: setApplicationGlobally
INFO: com.unicoshop.views.stats.StatisticheVenditeTempoReale: setConnection
INFO: com.unicoshop.views.manager.VenditaArticoli: setConnection
INFO: com.unicoshop.views.manager.ArticoliResiFornitore: setConnection
INFO: com.unicoshop.views.manager.ArticoliVenduti: setConnection

Out is powerful than the trace command, but like it doesn’t work outside of the IDE.

So I googled and I found this two great logging tools, both works in Flash and Flex projects, works under Windows, Macintosh and Linux, and both permits to log the output of Flash and Flex in a custom AIR Application (using LocalConnection to connect to the source swf or reading the flashlog.txt outputted by the debug version of the Flash Player):

  • Arthropod
    (from Lee Brimelow’s blog)
    The application is named Arthropod allows you to color-code your log messages for easy viewing. All you need to do is add their debug class to your project and use the log method instead of the usual trace command. This will be particularly useful for AIR projects created in the Flash CS3 as the trace command doesn’t work unless in debug mode.

    Usage example:

    1
    import com.carlcalderon.arthropod.Debug;

    Debug.log(“My log message”);
    Debug.warning(“My warning message”);
    Debug.error(“My error message”);
    If you are using Arthropod to log an AIR application make sure you have checked the “insecure” option.
    This is a screenshot of my system running a Flex based AIR application, logged with Anthropod:

  • Thunderbolt
    (from the website)
    ThunderBolt is a logger extension for Flash ActionScript 2 and 3 as well as Flex 2 and 3 applications based on the Firebug add-on for Firefox.For logging without Firebug, especially for AIR applications, check out the new ThunderBolt AS3 Console. Unfortunately the Thunderbolt AS3 Console AIR application doesn’t work on Windows, due to a “limitation” of the win version of the AIR Runtime.
    Update: the problem is fixed installing the updated AIR 1.1, I’ve just tested it!

    Usage example:

    1
    import org.osflash.thunderbolt.Logger;

    Logger.includeTime = true;

    Logger.memorySnapshot();

    var myNumber:int = 5;
    var myString:String = “Lorem ipsum”;

    Logger.debug(“My debug message”, myNumber, myString);
    Logger.error(“My error message”, myNumber, myString);
    Logger.info(“My info message”, myNumber, myString);
    Logger.warn(“My warning message”, myNumber, myString);
    This is a screenshot of my system running a Flex based AIR application, logged with anthropod:

on AIR Tour: Milan

Inspired from the sessions at on AIR Tour in Milan I decided to fire up a blog and start blogging to share my ideas and solutions with the Flash and Flex communities. I’ve decided to write it in english because all the blogs I read everyday are in english too, so it’s our standard language (after Actionscript I hope).

Yesterday in Milan it was a beautiful day, perfectly organized in a fantastic location. I want to thanks Adobe and all the onAIRTour Team for the ten sessions, for the good lunch and for all the fantastic prizes gived away during the day. I’m the lucky winner of a copy of Adobe Flex Builder 3 Professional. Thanks Adobe!

I enjoyed a lot Serge Jespers‘s session about “Deploying and Updating AIR Applications” and Andrew Shorten‘s one about “Data Intensive Enterprise AIR Applications”, but my preferred was “AIR Conditioning” , presented by Lee Brimelow, with a lot of demos (NativeWindower, AIRTube, SpitEmOut, etc.) and a lot of fun.