Multi-Mania was better than Belgian chocolate!

All I can say is those crazy-lovely Belgians in the picturesque town of Kortrijk definitely know how to put on a wonderful conference and party! :) (At least one of these must have something to do with the fifty-eight million varieties of amazing beer that they have, including the cause of my personal downfall, the famed Duvel -- literally, "devil!")

I got back from presenting at the Multi-Mania conference yesterday and, after taking part in three sessions (including the OSFlash panel) and partying all night, I proceeded to sleep the day away, waking up only to join Andy and the rest of the troops at ClearLeft for their one-year birthday party. (Where, I'm proud to report, I stuck mostly -- mostly -- to water!)

My first session was marred by a spat between the projector and my computer (some sort of lover's quarrel, I believe, from what I overhead and could make out with my limited knowledge of Binary) which meant that I was forced to improvise the session using Ronald's computer. In retrospect, it gave me the chance to cover the architecture of the View in Flash applications, stress the importance of encapsulation, and muse on inheritance and composition at greater length than I would have been able to otherwise. And thanks to Ronald taking the initiative, I got the chance to present my original session later in the day in a different room with a different projector. (Two sessions for the price of one?) :)

At my second session, I demonstrated the ActionScript 3 version of Arp for the first time ever (having finally gotten time in Belgium to hack it out and get it working at 3am before the day of the talk) and showed the audience how Arp allows you to reuse your knowledge across every technology on the Flash Platform, including ActionScript 1 and 2 with the Flash IDE (outputting to Flash 6,7,8, and soon 9), Flex 1.5, AMES and now, ActionScript 3, and Flex 2.

As part of porting Arp to ActionScript 3 and Flex 2, I created a migration layer for Flash remoting that allows Arp applications written in ActionScript 2 to be ported to ActionScript 3 without huge interface changes (you basically replace the standard Service, PendingCall and RelayResponder classes in AS2 with the AMF0Sevice, AMF0PendingCall, and AMF0RelayResponder AS3 classes in Arp.) The Flex 2 version of the PizzaService sample application, for example, uses these classes to talk to the same AMFPHP back-end that all of the other versions of the application talk to.

Even if you do not use the rest of the Arp framework you can still use these classes to keep talking to your existing remoting back-end when migrating your application to ActionScript 3.

I will be checking in the new code to the Arp repository over the weekend and I'll make another blog post when I do.

Here's a big thank-you to Ronald and Koen and the rest of the Multi-Mania crew from Departement PIH of the Hogeschool West-Vlaanderen for organizing such a wonderful conference and for taking such good care of us while we were there. Belgium is very lucky to have such a world-class technical university staffed by the youngest, most motivated faculty I've seen (I thought that the volunteers I saw at Multi-Mania were students and they all turned out to be lecturers and professors at the programme.) You guys have truly altered my preconceptions of higher education in our field -- it apparently is possible to have a cutting-edge university programme in multimedia. I only wish I had attended such a programme while doing my own undergrad and grad degrees.

Can't wait to see you guys again -- you rock! :)

[Update] Christophe Herreman and Nicolas Lierman have also blogged about the event.