Open Source Flex: Top 10 Reasons To Rejoice

Flex is going Open Source! This is really, really exciting news! I’ve been looking forward to this moment since before I worked at Macromedia. This will certainly change RIA programming in a major way. But what does this mean for you:

  1. There will be a formal process for contributing to Flex.

  2. Your voice is important. Join the Open Source Flex Google Group.

  3. You aren’t locked into a single vendor’s monetization strategy. So is Flex now part of the “Open Web”? I think so.

The Open Source Flex and Apollo Toolkit for Salesforce.com

A few months ago I met with Salesforce.com about Flex and Apollo. They had begun building some Flex applications that used the Flex Ajax Bridge to communicate with Salesforce. This worked but they wanted to be able to more easily build Flex and Apollo applications. So I took their JavaScript library and did an initial port to ActionScript. Surprisingly the code ported pretty easily. It was actually a fascinating experiment. ActionScript 3 is based on the same specification as JavaScript 2, so in theory this kind of thing should be pretty trivial — especially if the code being ported doesn’t do much with the browser DOM. That was the situation in this case because the Salesforce JavaScript library talks to their backend via XHR and doesn’t do much with the browser DOM. Once I had an initial port done including authentication and query support Ron and Dave from Salesforce.com cleaned everything up, added better object typing, built complex examples, and developed an Apollo demo. Everything has been going on under a semi-secret SourceForge project, code named Mavericks.

My Recent Flex & Apollo Adventures

Sorry this blog has been pretty stagnant lately. Things have been totally crazy. I’ve been touring the country speaking at Java User Groups and other conferences. The JUGs have been really fun. It’s amazing to see how quickly the Java crowd falls in love with Flex, like I did a few years ago. There are still more JUGs, conferences, and eSeminars coming up so please check out the schedule and see if I happen to be in your home town sometime soon. If you will be around the Bay Area for JavaOne, we will be throwing a huge bash with Bruce Eckel. The details are still being finalized, but stay tuned. Also coming in October is the annual Adobe developer conference, called MAX. It will be full of top notch Flex sessions by many of our star engineers. Definitely not something you want to miss. In May I’ll be doing a triple header in Vegas; Las Vegas Adobe User Group, Nevada Java User Group, and Interop. Hopefully some of these events are in your home town since I’d love to meet you all in person!

Eckel Flex eSeminar; Buni Joins java.net; Twitter Addiction

Yesterday was an exciting day! Bruce Eckel and I hosted an eSeminar about Flex & Java. We had a few technical difficulties, but overall it was very good. You can watch the recording here:

https://admin.adobe.acrobat.com/_a227210/p16565134/

Bruce and I have a few more eSeminars coming up, find out more info here:

http://www.adobe.com/cfusion/event/index.cfm?event=detail&id=462539&loc=en_us

Also yesterday the Open Source Buni Meldware Communication Suite joined the Java.net community. This is a great step forward for the project, which uses Flex for it’s Webmail client. More info from Andy Oliver:

Reusable Ant Task: Compile Flex If Source Was Updated

I’m working on a project that compiles 11 Flex applications. My Ant build file was getting pretty messy and I was continually commenting out files that I didn’t want to build. By using an Ant macro and some uptodate trickery I was able to significantly decrease my build times when I am only updating files for a single application. The macro also helped to make the build much more manageable.

How I Overcame My Fear of Flash

Long ago I remember the first Flash site I ever saw-spinning gears replaced typically boring site navigation and sound illuminated a previously silent web. My jaw dropped and I said to myself, “I want to build these kinds of websites!” After playing with Flash Professional for days, I realized that my mathematically inclined brain just could not output the kind of beauty that I began to see all over the Flash powered web. I gave up and resorted to building very ugly HTML interfaces. Not because I didn’t want them to look better but rather, it was just too much work and I lacked the skill.

Faster Flex Applications: Shrink Your RSLs

A few days ago Metal pointed out to me in a comment on my blog that by using the SWFs inside a SWC, my RSLs are much larger than they need to be. Sure enough he was right. When you use compc to create a SWC, the SWF inside the SWC contains a lot of unnecessary stuff when used as an RSL. That stuff is necessary to create an application which uses the SWC, so don’t go ditching compc. Here is what you need to do if you want to have size optimized RSLs:

Fun with Easing Functions in Flex

Last week I was doing an impromptu session at Slivafug when I discovered Easing Functions in Flex. I love it when after almost three years with a technology I can still just stumble across something amazingly cool! Easing functions allow you to apply non-linear motion to effects. There are many types of effects which you could apply easing functions to, but I’ve only touched the surface by playing with Move effects and Series Interpolation on charts. I’ve created a little demo application to show off Flex’s built-in easing functions:

Flex Quickies: JUG Tonight, Eckel, Test Drive & more

Tonight I’m speaking at the BayCHI / SV JUG in Mountain View - Starts at 7pm, but you need to either get there early or pre-register if you haven’t already done so.

Bruce Eckel on “Hybridizing Java” with Flex

Screencast of Bruce Eckel and I creating an expressive application using Flex, Hibernate, and XFire

Christophe Coenraets’s new Tomcat based Flex Test Drive

New Yahoo Group just for us Java Flexcoders

Mutual Authentication: Prevents Phishing Attacks?

One of my credit card companies just implemented Mutual Authentication for their web site. I think this is a fantastic idea since it can help to protect users from phishing attacks. The hard part will be training users to not enter their credentials unless they see the tokens they selected.

Continue reading to see how Juniper implemented Mutual Authentication.