If you speak at any programming conference, from a BarCamp to a huge, well-orchestrated conference like OSCON, you have only a short time to do a data transfer from your brain to the attendees. Use it wisely.
Tech conferences are incredibly expensive, and not just in dollars. Even free conferences like BarCamps incur the expense of the attendee's time. Taking time off from work or family is a hassle at the very least, and it’s time that isn’t billable. The draw of the conference boils down to those 45 minute sessions, and speaker and attendee alike should make the most of it.
Speakers often start off by wasting time. They front-load the presentation with worthless information. If you are a speaker: I don't care what company you work for unless it's somehow relevant to the topic you're presenting. I don't need to hear a history of the product that you're discussing. When you've been given a 45-minute time slot, then spending five of those minutes talking about yourself means that you've wasted 11% of the time on information that nobody cares about.
What I do want to know, as an attendee, within the first few minutes of the talk, is whether I'm going to get anything useful out of it. I want to know if I should pack up and head to another session.
Here's an example of how an effective speaker could start her talk: "Hi, my name is Sharon Bosworth. Thanks for coming today. I'm going to be talking today about the FooTest testing framework for Perl. When I joined Amalgamated Widgets 18 months ago, we had an N,000-line codebase, and projects always ran over because of bugs. Now, my team of four programmers has halved project timelines and management loves us. I'm going to tell you how we used FooTest to do it, and give you suggestions on how you can adopt it in your organization, too."
In this introduction, the speaker has told us what she's going to tell us about, why it's interesting, and what we're going to get out of it. Note also what Sharon has not told us. She hasn't discussed where she lives, or how many startups she's worked at, or what open source projects she contributes to. She has told us nothing more than is necessary to get things going and to keep the attention of the attendees.
As an attendee, you can usually tell within the first few minutes of a talk if the speaker is any good and if he'll be presenting information that's worthwhile. If not, head to another session right away. I always have a backup session checked in the schedule that I want to head to if my first choice is no good. Don't start dinking around on the Web and checking your mail and Twitter feed and seeing how you're doing in FarmVille. If you've blown five minutes in a session, make the most of the remaining 40 minutes in that time slot and go to something else. That session time is gold.
Farmville is a great benchmark. It's a mindless time-filling game that people turn to when they're bored. If what you're saying in your talk, at every point in the talk, isn't more interesting than planting pixelated potatoes, then you're doing something wrong.
If you see people playing FarmVille, fast-forward through your presentation to the next point. Yes, even if you spent hours creating those slides and examples. Of course, every audience will have people not paying attention, but if that’s most of the crowd, then you need to get their attention back. Maybe that point wasn’t so relevant to this audience because they aren’t using the latest C++ or the mobile testing technique you’re describing won’t work with their platform. Unless you see a meaningful segment of the audience gazing at you intently, say, “There’s more to this; see me later if you want details” and move to the next section.
Your talk should never be boring. One of my mentors, the fantastic speaker Mark Jason Dominus, has said, "If you as a speaker must choose between entertaining or informative, go for entertaining. People are giving you 45 minutes of their lives."
Be interesting. It's possible to be interesting even if the talk doesn't directly speak to the listener's needs. You are speaking to people who care intensely about how things work and what it takes to make them work. Not to go all FarmVille in this article, but there was a great talk at CodeConf about the infrastructure Zynga has in place to support all the millions of users of FarmVille. The speaker discussed the latency issues when dealing with mobile devices, and the asynchronous communication that the Farmville app has to make in the background to make the app seem responsive when people use it. It made me consider latency issues in my own apps. Most of all, it was fascinating as a case study.
The best talks give the attendee something to take back to work with him. If possible, provide three to five action items that he can work on when he gets back to the office. If this is a handout on paper, so much the better. This has the added advantage of letting audience members listen to you rather than frantically taking notes.
One final note of caution on being interesting: Be very careful with humor. There has been a groundswell of anger and disgust lately at technical presenters using sexist comments, sexualized imagery and other unprofessional content in their talks. Sample code that ranks women by “hotness” might seem funny to you, but are distracting at least and offensive at worst. For attendees, if you’re in a session that you find unprofessional, don’t be afraid to get up and leave. Even if you don’t, let the conference organizers know about the problem.
What are the best-and-worst things you’ve seen tech conference presenters do? Share ‘em in the comments. Maybe we can prevent one person, just one, from making the same mistakes, and wasting your valuable time.