At our last monthly technical luncheon I gave a presentation on .
Event Tracking in Google Analytics lets the web developer track AJAX requests and by extension Flash events too. AJAX requests don’t cause page views but as more and more web applications use AJAX it’s important to track the AJAX requests in addition to the standard page requests. Here are some examples of things you can track with GA Event Tracking that you typically wouldn’t be able to track with the standard Google Analytics Javascript embed:
Just a heads up that I’ve released 0.2.3. You can update with:
sudo gem install environmentalist
The only substantial change in this release is that we moved the loading of postboot.rb to the bottom of the boot.rb file as opposed to the top of config/environment.rb. This was necessary because common db rake tasks like db:create and db:drop stopped loading the environment in 2.3.2.
As a recap, environmentalist provides an executable that converts a rails app’s config structure. The basic idea is that environments themselves are now first-class citizens, allowing you to create several environments (e.g. staging, prodtest, demo, etc.) in a clean, organized fashion. Each environment is given its own folder where it can store its own set of configuration files (think mongrel configs, apache configs, etc.) without polluting the top-level config/ directory.
If you haven’t heard that was officially released, then get out of the hole you’ve been living in and !
When you’re ready to deploy your first Flash Player 10 SWF, you’ll want to ensure your users have the latest Flash Player so they can actually view your content! Why not make it as easy as possible for them to upgrade and use to embed your SWF and seamlessly upgrade older version of the Flash Player up to 10?
Let’s say you’re embedding a SWF called MyFlashPlayer10.swf. Using the there are just 3 simple steps to follow to get your SWF embedded with SWFObject…
Justin Everett-Church, a member of the Flash Player team, has posted on . Peer-to-Peer in Flash Player 10 will be achieved through utilizing a future Adobe server technology. I haven’t seen any details of this server technology, but it looks like Adobe has a lot of cool backend services in th works like whatever will power RTMFP, , and .
Read on to learn how to encode videos in to H264 for use by Flash 9, and also to stream to an iPhone in Safari, and be able to sync them onto an iPod. Read the rest of this entry »
Yesterday Adobe announced a prerelease version of which is code-named “Astro”. Users may install it and ensure their existing Flash content continues to function in Flash Player 10. Some are available as well to see the new features in action.
Some of the exciting new features include:
the ability to render filters and effects made using the
dynamically manipulating sounds at the ByteArray level
new Vector class for strongly-typed, more efficient arrays
and plenty others
For users that wish to start compiling their content into Flash Player 10 and taking advantage of things like , they may using a nightly build of the Flex 3 SDK.
Also, Aaron West of links to articles and blogs related to the release.
Tonight gave my first presentation at the about . I ran over the history of AMF, the basics, and then walked through 4 examples showing how to use it from various backends:
using
using
I’ve added a section to our website where we will archive all presentations we give including any PowerPoint slides and source code.
I will try to post my code examples to the page by tomorrow evening.
and went to the Baltimore stop of Adobe’s tonight.
Ryan Stewart
Ryan Stewart kicked off the keynote giving an introduction and overview to Adobe AIR. After briefly going over the background/web-history of the Flash player and the motivations behind the development of Adobe AIR, Ryan showcased some AIR applications:
A task app that was made in 24 hours w/ straight CSS & JavaScript by the creator of the Ext framework
(not publicly released yet)
He also highlighted that with the newly to Flash Player 9 (codenamed “Moviestar”), Flash SWFs will be able to support H.264 video and HE-AAC audio. This will allow Quicktime movies to be played through SWFs and the Adobe Media Player.
Ryan then mentioned that the second public beta drop of AIR will be released during the conference. Also, we were reminded of the : a contest to see who can make the best AIR application. The grand prize is essentially a $100,000 travel coupon. There will also be five category winners that will win “The Ultimate Desktop Environment”, which is pretty much a bunch of beast hardware.
Mike Chambers
Next up was demo’ing how to write a HelloWorld Flex-based AIR application. Pretty standard, but he went on to highlight the install experience for end-users that will be using AIR applications we developers will be creating. End-users will need the AIR runtime in order to install an AIR app, but developers will be able to place a Flash Badge on their website which will allow users without the AIR runtime to install both the runtime and their AIR application with only 4 clicks.
Mike finished off with pointing any developers that are starting to play around with AIR to the which have a ton of live data that can be used in an AIR app.
Kevin Hoyt
was next to demo how to build an HTML-based AIR Application.
Kevin emphasized that Flex Builder is not necessary to create AIR applications. The Flex 3 SDK (which is freely downloadable) contains the AIR SDK as well, so you can compile and debug your AIR applications from the command line. Dreamweaver CS3 also has an AIR extension so if you’re a web developer that’s afraid of the command line you can go ahead and develop your HTML page in Dreamweaver and debug the application or package it as an AIR file directly within the comfort of Dreamweaver.
Script Bridging
Kevin next demo’d the script bridging capabilities of AIR, which lets JavaScript reach into the ActionScript world and invoke any methods in the Flash API (anything in the flash.* namespace). The reverse is also true (ActionScript reaching into the JavaScript world). This means you can have a purely HTML-based AIR application that can call methods in the Flash API by simply doing things like:
<script>
var airFile = window.runtime.flash.filesystem.File;
var desktop = airFile.desktopDirectory;
var myFileInJS = new airFile(desktop.resolve("file_on_the_desktop.txt");
</script>
Here, myFileInJS is a JavaScript variable that references an ActionScript 3 class from the AIR SDK.
So “window.runtime.flash.* can let you directly use any Flash class from JavaScript. IMO the coolest thing Kevin covered is the ability augment the Flash packages you can use by simply script including a library.swf from any SWC to access those AS classes:
In this example, encoder is the PNGEncoder from the project, but the encoding is being done in JavaScript using AS classes! Very cool stuff. (FYI: a SWC is stored in a ZIP format, so you can just unzip a SWC file to access the library.swf inside of it)
Chafic Kazoun: Windowing in AIR
Windowing concepts covered/demo’d:
utility window
standard window
custom chrome transparent window
custom chrome where background is embedded in a SWF
custom window dispatching events and being listened to by another window
Ben Forta: AIR + ColdFusion
Highlights from Ben’s talk:
50% of existing ColdFusion customers have upgraded to ColdFusion 8.
ColdFusion/Flex Extensions for Eclipse available at Adobe’s ColdFusion page.
Can generate a ColdFusion-backed Flex web app w/ literally no front-end coding; the extension has Master/Detail/Master_Detail and DB wizards to configure everything which then generates the CFCs, MXML components, and CSS stylesheets using all best practices.
This was possible before in ColdFusion 7, but now ColdFusion 8 can generate a ColdFusion-backed AJAX/HTML/CSS web app in the same manner.
From AIR you can load an HTML page from a ColdFusion backend and it will properly renders this AJAX/HTML/CSS generated content.