Extreme Speaking
Somewhat to my own surprise, I’m at YAPC::Europe in Paris. I pitched up to the early birds session and offered a talk if they’d had any people pull out and it turned out that they had — Ronan Oger was due to give a half day tutorial on SVG-based GUIs on the first afternoon of the conference, but he wasn’t going to make it in time, so the organisers swapped his talk with Dave Cross’s talk on Tieing and Overloading Objects in Perl.
Somewhat to my own surprise, I’m at YAPC::Europe in Paris. I pitched up to the early birds session and offered a talk if they’d had any people pull out and it turned out that they had — Ronan Oger was due to give a half day tutorial on SVG-based GUIs on the first afternoon of the conference, but he wasn’t going to make it in time, so the organisers swapped his talk with Dave Cross’s talk on Tieing and Overloading Objects in Perl.
Dave’s talk is an hour shorter than Ronan’s, so Simon Wistow, Richard Clamp and me offered three 20 minute talks to fill the gaps.
There was a catch; all the talks I’d taken to America had been aimed at 40 minutes and for the life of me I couldn’t see how to make them any shorter.
“Never mind,” I thought, “I can waffle about Pixie or refactoring or something, or if all else fails I can brush off 12 Step Perl and get my audience to do at least half of the work for me.
This was my plan, but then I had this idea for a cunning trick to make Perl’s method inheritance system a little more sane.
There’s at least one problem with Perl’s inheritance system — if I
bless a hash into a class, then the blessed object isa
HASH, but method
dispatch will not see any methods in the HASH class. So I fixed that.
The resulting code is faintly evil and I’m not going to show it here,
but there will be an Acme
So, having written the code in the morning I spent the first part of the afternoon writing slides.
It’s surprisingly easy to do this sort of thing; the trick is the same as one that lies at the heart of Extreme Programming: Trust. In an XP environment you trust yourself and the rest of your team to be smart enough to do the Right Thing at the Right Time. Which isn’t as scary as it might sound. In a programming context, if I trust myself to make a decision now, then surely I can trust myself to make a decision that’s at least as good at some point in the future when I have more of the facts. As a speaker, if I trust myself to be able to deliver a talk I wrote three weeks before, then I can surely trust myself to deliver a talk I wrote five minutes ago.
Try it, it works. But don’t make a habit of it.