Slash Boxes
NOTE: use Perl; is on undef hiatus. You can read content, but you can't post it. More info will be forthcoming forthcomingly.

All the Perl that's Practical to Extract and Report

use Perl Log In

Log In

[ Create a new account ]

Alias (5735)

  (email not shown publicly)

Journal of Alias (5735)

Thursday December 21, 2006
03:44 PM

With regards to my lightning talk at OSDC

[ #31986 ]

It is not my nature to intentionally provoke controversy, or even to act in roles that directly interface with the general public. I lack that feel for public opinion, and my word-smithery can be sometimes a little off target.

Those who know me well have told me that in person I can often be noticably careful to choose my words. This comes from something of a bad history regarding picking the right words in conversations.

To the extent I hold any positions within the Perl community, or engage in debates, or speak in public forums such as this journal, I try to contain myself to technical positions and technical topics.

However I make an exception for talks at conferences, as they give me a chance to both entertain and teach things I think more people should be aware of. And the talks make a great vehicle for meeting a lot of new people.

And so if this post has taken me quite some time to write, please be aware that it is because I hope to be accurate about my feelings.


At the Open Source Developers Conference 2007, during a Lightning Talks session on day two, I presented a talk called "How to name your CPAN module".

The concept for the talk came from another talk the previous day by Jose Castro about the CPAN's "Acme::" namespace, which acts as an area for quarantining humerous modules, technical proofs relating to obscure language debates, and other modules that should never ever be deployed on production systems.

One module discussed was Acme::Playmate which looks up the, how can I put it, "details" of a Playboy Playmate for a given year and month.

Bemused that Playboy would actually bother to provide this information as any sort of formal web service, I took a quick look at the source code while sitting there in the audience and found the module just web-scraped the public site, quite badly in fact.

At dinner while explaining to some non-Perl people about CPAN's module naming issues, the idea was born that a lightning talk could be created that would demonstrate various module naming issues and methodologies. As the focal example, I could start with the (broken) Acme::Playmate and by repeatedly extending it create the most satirical and rediculously unlikely module possible.

And so I started that night on the code to support a 5 minute lightning talk that would extend Acme::Playmate and mix in a number of other modules, resulting in a work of high farce, Acme::Playmate::Object::Doublet::Outsource::AU.

This module would take a year and month, retrieve the Playmate data, and normalise their measurements into objects using the Data::Vitals module, which was commissioned by a modelling agency to implement functionality relating to the common problem of metric vs imperial measurements of both male and female models.

The new Acme:: module would then automatically generate a png file of the sewing pattern for an Elizabethan Doublet tailored to that specific Playmate, using the Costume::Doublet module.

And then it would further use the Email::Stuff module to email the pattern to somebody to have the doublet actually made.

Finally, it would show the standard CPAN localisation technique of subclassing by country code, in this case AU.

All in less than 50 lines of code.

While an outline was written up that night, most of the slides were created in the meal break before the talks, and while the other lightning talks were in progress (I asked to be moved to the end so I could actually finish it).

The speaker immediately before me had made the gaff of thinking his laptop did not work. He presented his his talk orally, while unbenownst to him the Linux boot sequence for his laptop rapidly scrolled on the screen behind him, completely (and humerously) distracting the entire audience from his actual talk.

Seeing the obvious potential for a joke pointing out the importance of not distracting people during your talks, I grabbed an image (waist up, partially clothed, breasts exposed) from the page I'd been testing my code with and dropped it at the front of the talk. I was pretty certain that would distract 100% of the audience from my warning about not distracting the audience (obviously for different reasons for men and women, and different subgroups thereof).

I put the same image in later after the slide mentioning "Data::Vitals::Chest" as a "callback" joke about filthy minds (the following slide was "Ugh..."), and then got up to give the talk.

The spoken component of the talk was literally made up on the fly as I went through the slides.

The distraction joke got a lot of laughs, and from my perspective the talk seemed extremely well recieved, with applause at the end.

None of this excuses my actions, but I hope it will go some way to explaining the context in which they occured to those who were not present at the talk.

Although people I spoke to after the talk were positive about it, I was informed by the organising committee that a small number of men had complained to them about my talk immediately after the lightning talk session, and the committee officially warned me against using any similar material in any future talks.

Having reviewed the slides for the talk again after the conference, it is apparents to me that they take the talk well over the line of what is acceptable at a technical conference.

That mistake was compounded by a bad assumption on my part that all of the audience would know what the Acme:: modules were and thus see the satirical nature of the talk (negative comments seem to have been primarily from outside the Perl community) and then made worse again by some very bad choices of words I made while delivering the talk.

From subsequent informal surveys done by friends, I've have an estimate that around 25% of the audience were uncomfortable with or offended by the talk.

To those present in the audience who were merely offended by the talk, I can say only that I hope you can come to an understanding that the talk was intended as a work of satire, and does not reflect my personal beliefs. It was an attempt at humour (that did seem to work at the time) and it was certainly not my intent to create offense.

I will be correcting my mistake and NOT giving that talk again.


There are two groups for which this mere explanation and request for understanding goes not nearly far enough.

Foremost, to all the women who were present in the audience for the talk I would like to publicly and unreservedly apologise for the subject, content and delivery of the talk.

In particular, that I added the image DESPITE knowing it would be shocking to you was utterly stupid on my part. I completely misread how badly it would be taken.

I SHOULD have recognised immediately that the talk would have had a stronger impact, and created feelings of being singled out from your peers solely due to gender, or feelings of being unwelcome in the room. And in one case I'm aware of, of creating a fear about being in the room itself for a minute or so.

With two younger sisters of my own, I cannot express how guilty I feel that I might be responsible for creating anything like that "walking alone at night" feeling for you, especially in a conference environment where there are already so few women, and in which you should be welcomed with open arms.

Secondly, I would like to publically apologise to the organising committee, and to the sponsors.

You already have far too much to do organising a conference of this size and you have all contributed so much to make it happen and to make it a success.

I'm terribly sorry I dropped this situation in your lap when you REALLY didn't need it, or in the case of the sponsors for anything I may have done to bring you into disrepute.

I can assure you all I won't be delivering anything like that at any future conference. I've learned my lesson.

The Fine Print: The following comments are owned by whoever posted them. We are not responsible for them in any way.
More | Login | Reply
Loading... please wait.
  • I didn't know about this, but it's great to see you taking responsibility and apologizing, rather than the other way 'round: seeing people bitch about what someone did and then someone else attacking back and blah blah blah.
  • You were officially warned for what actually? Showing an image of bare breasts? Mentioning Playboy? Not having an image of a man for the women in the audience?

    I wonder what's next. Not inviting Larry to give a keynote because he might mention something that some Muslims or atheists take offence of?

    I bet if you had shown pictures of guns, and talked about screen scraping the NRA website, noone would have complained, and you wouldn't have had a reason to post your note.

    • Showing an image of bare breasts?

      So that is acceptable is it? There is a time and place for everything and showing that at a conference isn't one of them, IMO. Sorry, just call me a prude and be done with it.

    • The official warning was for "inappropriate content". By which they mostly meant the image.

      I don't think it is necesary to apologise merely for causing offense to somebody or some subset of the audience. You will always offend someone no matter what you say.

      And an apology to those people are not necesary.

      However, as I said, for some people it caused more of a problem that just mere offense. And I feel an apology to those people IS required.
    • Showing an image of bare breasts

      No, showing soft-core pornography, which has its time and place; neither of which should occur within a "technical" conference lecture room.

      Mentioning Playboy?

      No. Some people were upset by the mere mention of Playboy but had there been a little more context, and more appropriate images, I don't think that itself would have been a problem.

      Not having an image of a man for the women in the audience?

      The answer isn't "more porn". Balancing it out so that there are equal numbers of naked men as women won't make the people who feel uncomfortable with any porn feel better. It

  • It sounds like a very good talk that caused a scandal because you used a single inapproriate image.

    I don't see any reason not to give the talk again with some toned down images (playboy do after all have acceptable pictures of their playmates as well as the more arty, or exposed).

    It would also be interesting to see how much code-re-use and lessons you could apply to a brand new ACME::Model::Chippendale package, including why it's important to make modules within the same namespace consistent, and why you ma

    @JAPH = qw(Hacker Perl Another Just);
    print reverse @JAPH;