Posts Tagged ‘NFJS’

Recorded Presentations – The “Lipsync” Pattern

Monday, December 7th, 2009

Presentation Recording, The Origins

This is a tidbit of insight about my radically revised techniques for assembling complex compelling presentations this year. I’m certain it will create a widely varied set of comments and feedback.

Earlier this year, Neal Ford, Nate Schutta and I were driving from the Des Moines No Fluff Just Stuff show in the pouring rain. Pouring hard enough to stop a dashboard GPS device from working. Hard enough to stop all outbound flights from the airport. Hard enough to cause us to lightly hydroplane. In short, a normal NFJS weekend.

This fury of nature would not deter us from our technical discussions and the subject of presentations with large quantities of moving parts came up. I said that “for a certain set of presentation demos that contain around 5 or more interwoven components — not JAR dependencies mind you — keeping this operational for the course of a year of presenting was more work than building it in the first place and highly crash prone.” We debated aggressively, but Neal interjected at one point and said “You should just try it.” And thus, I did.

Neal, Nate and I have a project that we’ll be able to tell you more about soon. Related to this project, we’re attempting to give names to these presentation patterns and anti-patterns. For example, Neal dubbed the above discussion’s output the “Lipsync Pattern.

Recording Tools

In terms of tooling, I’ve become very attached to Screenflow 2.0. I previously used iShowU HD, but its capabilities are now far exceeded by Screenflow in terms of seamlessly stitching together multiple pieces of footage in a meaningful way.

Feedback

Feedback from this technique for my Open Source Debugging talks have been overwhelmingly positive. Some examples are:

“Thanks for giving the great talk on open source debugging tools last night at BJUG. Specifically the part where you “played through” the typing/console. It sort of reminded me of prezi.com, with the way you were able to zoom into sections of slides, seemingly capture keyboard input, etc. Loved it.”

and another really captures the essence of why I feel this is a meaningful way of teaching:

“I liked that you used a recorded version vs. live coding. I felt like you were able to explain things better than other presenters I’ve seen who try and field questions while coding live. Also the spotlighting and highlighting really helped the flow.”

Applying this Technique

When using this approach, I’ve found, through the feedback of friends like Scott Davis, that it’s best to exaggerate the fact that you are not live coding. Joke about it. And lastly, make it a positive trade by discussing what’s happening in the playback in a dialogue with the audience.

Summary

I’m becoming so jaded that I (internal voice, not external) am having a hard time watching some live coding speakers now. It’s often swordplay showmanship on the level of Errol Flynn. It has nothing to do with teaching. And it usually bombs, at least in a minor way, somewhere, and we spend 2 minutes watching the speaker “clean it up.”

I hear that there’s going to be a “Presentation Patterns and Anti-Patterns” book with Neal’s name on it. Based on my positive experience, I can only say, “the sooner the better Neal.”

Maven, OSS and iPhone: The Denver NFJS Audience Rocks

Monday, June 1st, 2009

Of all the cities I’ve presented in this year for both NFJS, private training, and user groups, two stand out so far as real gems: Minneapolis and Denver. The audiences are highly engaged and ask challenging questions. This is both scary and energizing as a presenter. You are being asked to call on not just your prepared slides, but your experience and catalog of knowledge to come up with a relevant answer. Sometimes, the audience will even help you with the answers, like on the defaults for Objective-C’s @property. It turns out, the answer is: atomic. Thanks Johnny Wey!

Sometimes things just don’t go perfectly in the open source world. There are times where it seems like a dot release cures many things, but then breaks/regresses several important ones as well. Like the XML parsing in the iPhone demo. Turns out, it was a Grails 1.1 issue (which I upgraded to from 1.0.3 to solve another bug) in which optional URL parameters are wrongly required. Grails 1.1.1 fixes it, which I validated at 11pm last night, but it would have been fun to live fix this with the audience. This reinforces the point in my talk though that you should always check your web services, possibly using curl, or SOAPui prior to connecting your iPhone application to them.

It’s amazing to see how many of the presenters and audience members are on Twitter and posting their experiences about the conference. That’s a real change from last year, where hardly anyone was live posting in that fashion. I hope to see you all again in the Fall at the next Denver NFJS, loaded with more difficult questions and an inquiring state of mind.

iPhone Reaches 50% of Google’s Mobile Traffic

Wednesday, April 1st, 2009

If you need one more reason why, as a developer, you should learn Objective-C, here it is: The latest stats say that the iPhone is now 50% of Google’s mobile browser traffic. That is a crushing domination of the market share of even its nearest competitor, Symbian, with about 35%. Go grab a digital copy of Bill Dudney’s book, iPhone SDK Development, and then read it on your iPhone with the free Stanza .mobi reader. Then, hop on a plane and meet me at #NFJS Seattle this weekend for a talk on iPhone and Java Web Services.