My 360|Flex Survey Results – did I offend you?

So a bunch of people have been posting the results of the surveys from their 360|Flex sessions. I’ve wavered on this a tiny bit, I’m just a little embarrassed, both because of the positive feedback (*blushes*), but also because I offended some people in the session. So off the bat I want to say to anyone who was actually offended by anything said in my session: I’m sorry. I gave the session the way I talk in normal life, and in normal life I guess I have a dirty mouth.

Here are the full survey results from my session.
If you weren’t at 360Flex, check out the stuff I presented.

The good stuff
Overall the comments were very positive. There were 45 responses, with an overall average rating of 4.5 (which I’m hoping is out of 5, not 10 :P). 80% of people said that the session was what they expected, 80% said the slides were useful and 80% said the session was informative. So here are some of the positive responses (aww, shucks…).

The speaker had a good outline and followed it well, while also allowing community/group input.

Doug was AWESOME and funny. Loved it!

In typical fashion, Doug had a great presentation with a lot of good information. Doug is an inspiration to the whole community.

Doug brought to light components that we all can make use of in our apps – and some that are just fun. Very helpful.

The bad(ish) stuff
These are the only negative comments I received. The first one is about the discussion near the end feeling unorganized. I understand that sentiment, I felt rushed near the end when I was running out of time a bit. I love having good discussions with the audience, but I probably should have left more time devoted to that, and maybe even planned for that in my outline to make sure I had plenty of time to wrap up in a more organized way. The other three comments here are about my language. The last one’s not really that negative a comment, but the middle two sound like the writers were fairly offended.

The presentation could have been a bit more structured, as it felt like the discussion veered away from original intentions near the end of the presentation.

It caught me off guard how much the speaker cursed.

I don’t know what to say. It’s probably not a good idea to try to see how the sign language interpreters do cursed signs. That would make the deaf person uncomfortable.

This session was great for information and mentality about developing in the flex world. Doug is a little 🙂 unprofessional as a developer it doesn’t bother me that much and I would definitely hear him present again because I respect his knowledge and talents but the language is a little distracting.

The funny comments
And then a lot of the comments were pretty funny. I’ve cherry picked a few choice ones here for your amusement.

I appreciate his frank, unexcessively vulgar language

jiggly moving fun

Always a great time. Never seen so many curse words done in sign, damn funny.


Okay, I am just chiming in that I really wanted to go to Doug McCune’s seminar but knowing that I lack experience with OOP and want to develop that further I went to that one instead. Can’t we put Doug McCune against sucky, uninteresting topics instead. *lol*

It’s “fucking” Doug McCune

The language issue
So let’s get this out in the open: I say fuck and shit a lot. Sometimes this comes through on my blog, but even more so when I actually speak. Given the session feedback I think a lot of people find my use of language refreshing and funny (what am I? a clown?). I like to think my presentations are informal, we all just get to hang out and talk about cool stuff, so since it’s just like chilling with friends I don’t censor my language. A lot of the comments in the feedback referenced my use of language in a positive way and said how “fun” and “hilarious” the session was. I like to think we had a good time and it wasn’t dry or boring.

That said, there were obviously a few people at least who were offended and uncomfortable. So in the future I may tone it down a bit, I certainly don’t want people walking out of my presentations upset. I’m sincere when I say I apologize if you were offended.

Maybe next time I’ll start by showing a clip of Goodfellas or Casino at the beginning, then whatever I say will be tame in comparison. Or maybe I should wear one of these on my chest:


At my next session I’ll be checking IDs at the door. If you’re under 17 you have to be accompanied by a parent or guardian.

So thanks to everyone who came to my session! And super double thanks to the 45 of you who gave feedback, it makes me feel all warm and fuzzy inside (well, most of it anyway).

P.S. To Andrew: yeah, your comment got to me 🙂 Sorry I posted the survey results with your name still in there, if you got a problem with that send me an email (or better yet send Tom and John and email).


My 360|Flex Writeup

360Flex ATL360|Flex wrapped up on Wednesday and I wanted to do a quick writeup of my overall thoughts about the conference. First off, I think this was the best Flex conference ever put on. That’s a bold statement because I haven’t been to some of the other Flex conferences, but I’m fairly confident it’s true. I’ve attended the previous two 360|Flex events and each time the conference just gets better and better.

The speakers are getting damn good
The Flex speaker roster has matured a bit, this conference marked the third 360 event that some of the speakers have done (this was only my second conference as a speaker). I think you can see very visible improvement in both the content and presentation skills of the speakers. There were two sessions I’m kicking myself for missing: Jun Heider’s presentation about memory management, and Michael Labriola’s presentation on what happens during the first few milliseconds of your application startup. Both speakers have posted their slides and material. Hearing the buzz around the conference, it sounded like those two presentations were two of the absolute highlights.

Here’s my theory on why those presentations were so good:

  1. The speakers are maturing in terms of Flex expertise and speaking skills. Both Michael and Jun spoke at previous events (previous 360|Flex and also MAX). It takes a while for speakers to find their groove, and I think with a lot of the Flex speaker roster we’re seeing that people are now at the point where they are confident, badass speakers.
  2. The content is crazy technical and the audience is ready. Previous Flex conferences have been dumbed down in terms of the advanced sessions. 360|Flex Seattle was more technical than the first one in San Jose, but it still didn’t meet the needs of the advanced Flex users out there. This was a tough line to walk, though, because if you did an uber-technical preso you probably would have had about 10 people in the room and only 5 would have understood what you were saying. Jun and Michael’s sessions were way more technical than anything presented at previous 360 conferences. And the audience was able to get it. That says a lot in terms of how much better everyone is getting. I think both of those sessions would have probably bombed at the first 360|Flex back a year ago (god, was that really only a year ago?).

Reflection on my sessions

I had a really good time presenting at this conference. I apologize if I offended any of the sign language translators 🙂 (if you weren’t there let’s just say I had fun getting them to translate certain phrases). My main presentation was on using open source community projects and I’ve posted all the slides and sample code. I thought this session was fun, although I think I crammed a lot of stuff into the 80 minutes and didn’t have as much time as I would have liked for the kind of organic discussion that I find so fun. When I originally told Tom and John the idea for my session they suggested doing an all-day hand-on session on the topic. If I wasn’t so lazy I actually think this would be a really good all-day type of thing. Maybe in the future we can get enough speakers to tag team it, so nobody has to spend the whole day presenting.

The second session that I did, which was unplanned, was a session on building your personal brand. Juan Sanchez and I teamed up for this session and talked about our different approaches on branding and marketing yourself. This session was in place of Jesse Warden’s originally planned session that was on a similar topic (although Jesse planned on covering a lot more content about the business side of things). BTW, if you attended 360, Jesse’s original presentation PDF is on the USB stick, check it out in all of its 215-slide glory. As for me, I had about 8 slides I whipped up 20 minutes before the presentation. This session was a pretty awesome discussion, most of the people in the room contributed and talked about their experiences. Jeff Houser was there and talked about brand building from the perspective of a business-owner (ie not a crazy egocentric nutjob developer like myself). I think the topic of branding is hugely important, and I’d like to see this kind of content presented much more at these kinds of conferences.

I want videos again
This year the presentations at 360 weren’t recorded, and I’m really wishing they were so I could watch Jun’s, Michael’s, and a bunch of other sessions. Last year I didn’t watch the videos of anyone else’s sessions, primarily because the technical level of the content wasn’t quite there. Now I’m pissed because I know there’s some seriously good information in these presentations that I missed (and reading through the slides isn’t nearly the same). I vote for recording this stuff again, even if next time that means we each do it ghetto style and and just stick a crappy camera in the corner of the room.

I love you guys
This is the best developer community. I heard over and over again during the conference about how nice everyone is. There are no asshole prima donna speakers, everyone is approachable and friendly. That goes for the speakers, everyone from Adobe, and all the attendees. Everyone’s just authentically nice. The Flex community is going to grow dramatically over the next few years. Let’s try to keep this awesome small-community vibe that we got going on. This community vibe is why I love presenting at 360|Flex (and the main reason I don’t present at other larger conferences).

Thanks Tom and John! You guys rock.

(photo by Terry May)


Examples from my 360|Flex session – Using Open Source Community Projects

Here are all the examples I showed today in my session at 360|Flex. The demos are the Physics Form, VistaFlow 3D, WindowShade + Degrafa, MP3 Thumbnail CoverFlow, and FlexSpy Event Listeners. All examples have the full source code available and I’ve tried to write up brief descriptions about each one. I’ve also posted a PDF of my slides. View the slides here.

Physics Form
I mashed together the most generic, boring, crappy Flex form example app with a physics engine. The end result is an example that shows how you can add in physics simulations into “normal” applications (as opposed to only games or whatever). In the example below, click on the Login button to watch what happens (hint: after you click login try dragging around the controls). Oh, and I threw in the PromptingTextInput component from FlexLib to meet my requirement of using at least two open source projects in each example.

This movie requires Flash Player 9.

Open source stuff used:

View the example | View Source

This example uses the FlexMDI library (now part of FlexLib!) to manage multiple open windows and switch focus between them. I combined that with a slightly modified version of my CoverFlow component that I posted before, and I made an effect similar to Vista’s Flip 3D. When you launch the example try adding a few windows with the “Add Window” button and then press Shift-Enter to cycle through the windows (ie hold Shift and then keep pressing Enter to move through the list of windows).


Open source stuff used:

  • FlexMDI (now in FlexLib)
  • Extended Flex CoverFlow component

View the example | View Source

WindowShade + Degrafa example
In this example I used the newly added WindowShade component in FlexLib, combined with the CanvasButton control (also from FlexLib), combined with Degrafa for some custom graphics drawing and CSS skinning. It’s a simple example of creating a “drawer” type of component that docks to the top of the screen and drops down when the user clicks the handle.


Open source stuff used:

View the example | View Source

MP3Flow AIR app
This demo is an AIR application that lets you drag and drop MP3 files onto it and it will extract the thumbnail image from the MP3 file and use that image in a CoverFlow UI. To extract the thumbnail I’m using Metaphile, which is a project created by Ben Stucki for reading and writing metdata from files. This app also uses another of Ben Stucki’s components, which does the audio visualization stuff.


Open source stuff used:

NOTE: I used the last AIR/Flex 3 Beta for this example. I have not updated it to AIR 1.0. If you have the new AIR 1.0 runtime I assume this app will not install. I’ll try to update this example within a few days, but for now it will probably only work if you have not upgraded the AIR runtime on your machine.

Download the AIR installer | View Source

FlexSpy with Event Listeners
I decided to show this example even though I had already released the code on my blog. I realized that this example was perfect for showing the benefit of keeping a running list of open source projects in your head. I remember seeing FlexSpy when it first came out, I read about it on a few blogs and briefly checked it out by playing with the example. But I didn’t ever download the code or use it in my app. And then last week when I was monkey patching FlexSprite to add extra event listener functionality and I realized that this was a perfect place to use FlexSpy. I couldn’t remember the exact name (I thought it was something like Flexray), but I googled around, determined to find the project that I knew existed. Pretty quickly I found it, pulled it down, started reading the source and hacked in the functionality I wanted.

After doing that I realized that this is exactly what I was going to be talking about in my 360 session. Since I had been reading Flex blogs when FlexSpy was released I at least knew it existed. Since I love open source projects I had initially checked it out and understood what it did. Then later, in a completely unrelated project, something clicked in my mind and from some far corner I pulled up that memory of the FlexSpy project.

Open source stuff used:

View the example | View Source


360Flex Open Source Panel tomorrow at 10am, my open source talk at 2:30pm


So tomorrow at 360Flex at 10 am we’re getting together a bunch of open source Flex developers to talk about a few key open source projects, what it’s like to start an open source project, and whatever other random stuff people want to talk about. The truth is, I don’t know what will end up being covered, it’s sort of an open panel discussion thing. The basic idea went something like this: since we’ve got a bunch of guys involved with various open source projects all at the same conference, why not shove em all in the same room and see what happens? So Adam Flater’s going to talk about Merapi, some dudes from the Degrafa team (Juan, Andy, Pavan?) are going to talk about Degrafa, Ben Stucki’s going to talk about OpenFlux, I’ll probably say something about FlexLib, and Ben Clinkinbeard will talk about flexmdi. This is going to be pretty informal, I don’t think we’re going to have slides (unless someone is going to be a dork and over-prepare). So we’ll just hang out and talk open source and Flex. And if you’re working on an open source project be sure to come by and tell us all about it.

When: Tuesday @ 10 am
Where: Maple Room A (Hands-on room)

My talk at 2:30 – Using Open Source Community Projects
I’m also giving my presentation at 360|Flex tomorrow at 2:30pm. My session has a similar theme, but will be entirely different content. I’ll be talking about a wide range of open source projects out there that you can use (physics, 3D, graphics, audio, etc etc). The official sub-title of my presentation is “How to be lazy and make cool shit.” I’m showing a bunch of cool examples (well at least I think they’re cool…) of mashing up various open source projects to make impressive looking stuff without much work. I won’t be digging into Degrafa, OpenFlux, or Merapi, since those will be covered in the panel discussion in the morning and other individual sessions later in the conference.

Oh, and I’ll have an extra hand-bedazzled 360|Flex shirt (like the one Matt Chotin wore at today’s keynote) to give out at my session, so if that doesn’t make you want to come to my session I don’t know what will. Come to my session, it’ll be fun.

When: Tuesday @ 2:30
Where: Pine Room (Custom Components room)

This conference rocks hard
360FlexThis is probably the most fun I have ever had at a conference. Seriously. This community just frickin’ rocks so much, it’s like hanging out with good friends for a few days. Juan Sanchez and I filled in for Jesse Warden today (get well Jesse!) and had a really fun session about building your personal brand. We got a sweet discussion going and people had awesome stuff to talk about in terms of marketing yourself and getting famous. I had a blast and I hope the people in the session enjoyed it.


Full video of my 360|Flex Seattle session on Custom Flex Component Development

Since the next 360|Flex is fast approaching, I thought I’d post the full recording of my session at the last 360|Flex in Seattle. You can do whatever you want with this video, embed it wherever, watch it wherever, you can even download the original mp4 video file. Hopefully the embedded video is good enough quality to read the code on the screen, if not go ahead and download the full size version, that’s the best quality we got.

At the next 360|Flex at the end of this month in Atlanta I’ll be speaking on “Using Open Source Flex Projects”. If you’ve never been to a 360|Flex event, maybe this video will give you an idea of what they’re like. An important thing to note in this video is that there might be chunks of silence when people in the audience were speaking. I didn’t do the best job of repeating everything people said, but it wasn’t like I could just repeat questions people asked. The session was really a discussion among lots of people in the audience, and it really had a great community vibe to it, with people answering each others questions and teaching me lots of cool stuff. That’s what I love about the 360 events, it’s just a bunch of dorks hanging out and talking shop.


Got my bling for 360|Flex

My 360|Flex shirts and my bedazzler just arrived, so I’m now officially pimped out and ready for 360|Flex in Atlanta next month.
The picture doesn’t really do the shirt justice, but in real life as I move it sparkles, take that Lil John.

A few pictures of the bedazzling in progress:

You can order your own shirt with the bling 360|Flex logo here. Assuming I have extra rhinestones I’ll probably bring the bedazzler to the conference, so if you want to get your shine on between sessions you can pimp your own gear. I’ll also have a few extra bedazzled shirts, one of which is going to the winner of the Degrafa contest.

If you haven’t made up your mind about coming to 360|Flex you need to go buy your ticket now.


360|Flex Badge to make Lil John Proud

So Tom and John, the guys putting on the 360|Flex conference in Atlanta in February, asked me to make a logo/badge for the conference. The conference is in Atlanta, so they wanted me to do some kind of design like a peach. But if the peach doesn’t satisfy your inner bling bling pimp, here’s a real ATL badge.

360Flex ATL

Cha-ching! I’m getting this on a t-shirt and I’m getting a bedazzler and putting rhinestones all over it. It’s gonna be hot.

If you want to use this badge on your blog or wherever, you can download a zip file here that contains the badge in various sizes. Here’s a version at 150px wide that might be good for a blog sidebar.


My 360|Flex slides translated into Chinese

My presentation that I gave at 360Flex has been translated into Chinese by Robert Shuie. Thanks Robert! He translated my slides, as well as my blog post about the samples I presented. This is a bit of old news, since this happened about a month ago, but I’m trying to catch up on my life so I’m finally getting around to posting now 🙂 Anyway, fricking sweet that we’ve got such an awesome Flex community overseas that someone goes through the trouble of translating presentation slides.

Robert sent me an email when he did the translation and I loved this comment:

It is hard to translate “monkey patching” term into Chinese. I recently mark it as “????”, which means “force to evolve”. I have no idea if it fits the origin idea.

Ha 🙂

Flex/Flash/Actionscript, Uncategorized

Some clips from my 360Flex presentation

Here are a few small video clips from my 360Flex presentation. The first is my favorite moment in the presentation when I get applause for saying “God damnit, make that protected.” 🙂 And the second clip is 7 minutes of the presentation where I talk about monkey patching (or “underriding”) the core Flex framework classes. I thought this was one of the cooler parts of the talk, so I decided to post the video of that section. You can get the full video (1 hour 20 minutes) of the presentation here.

The videos are licensed under Creative Commons license, so I’m supposed to do some attribution thing. They were filmed at the 360|Flex conference that was put on by John and Tom, video work done by Bryan Zug. You can get all the videos here. Cool?


Download My Recorded 360Flex Presentation Video

The 360Flex folks have posted some of the recorded videos of the conference. You can see them all here, or here’s a direct link to mine. You can download the whole thing (my video is 280 megs). They’re selling the vids for $3.60, I think I get some kickback if you buy mine, although I’m unsure of the details.

So buy that! I’m gonna make millions. And I’m competing with Juan Sanchez for video “views,” so if you just want to go to the page and hit refresh a lot on my video that would help 🙂 I’m gonna be a millionaire AND a cheat!