This morning while walking (I love how the mind flows with ideas when exercising) I began to think about presenting and what advice I'd offer to folks who are considering giving it a try. There are plenty of books out there on how best to give presentations. I won't pretend to be an expert in the subject myself. But I've given quite a few of them and there are a few things I think I can share that might be useful. Also - many books on presenting don't tend to cover the specific needs of technical presenters - i.e. people who are talking about code related topics. So with that focus in mind, here are some ideas. As always, feel free to add your own. I'm curious to see what other suggestions folks have. One more quick note before I begin - most of this advice comes from mistakes I've made - and continue to make. I enjoy presenting. I think I'm good at it. But I'm going to looking to improve myself until the day I retire.
Getting Started
If you have any interest at all in speaking, it can be a bit intimidating to get started. Fear of public speaking can be incredible. The only way to get over it though is practice. There's plenty of ways you can get practice in a safe, less stressful environment though. Consider giving a presentation to your coworkers. That may be a group of 5 or so people and it's people you know. That's going to be much less stressful than 20-30 strangers. Forget about the traditional "60 minutes" of slides format and consider just a quick 5 minute topic. This could be a review of what you learned at the last conference. It could be just a demo of a cool plugin you found over the weekend. Just the act of getting up in front of people and speaking - even with minimal structure - will help make you more comfortable.
Outside of work your local user groups are another excellent place to speak. Most user groups are desperate for speakers. If you are already attending the group then you will - most likely - know everyone there. You can also suggest a short topic there as well. Most groups will have meetings planned around a central topic, but you could offer to give a short talk either before or after the main session. (And it bears repeating - if you don't know where your local Adobe User Group is, simply visit groups.adobe.com today and find one!)
The biggest advice I can give in regards to fear is to remember that people attend user groups and conferences because they want to learn. For the most part then it is safe to assume you have an audience of people who are friendly. (For the most part. I'll talk a bit more about audiences later on.)
It's important to find a topic you are actually interested in. Most of the time that isn't a problem. There are times when your boss may ask you to speak on a topic you don't quite care about, but even then, if you try, you can find a way to make it interesting. Every now and then I suggest a topic that - later on - I frankly wonder what in the hell I was thinking of. As an example, a few years ago I spoke about SQLite development in AIR. At the time I suggested it because I didn't know a lot about it and I thought it would be a good way to "force" myself to learn it. Turns out - the more I dug into it - the more freaking cool it seemed to me. Maybe I'm just nerdy that way, but I found a way to dig into the cool parts and make what was essentially a database topic exciting for me. While it doesn't always work out, if you are excited your audience may be as well. Enthusiasm is noticeable.
Getting Organized
No one, and I repeat no one, is going to be able to give a good presentation without organization and planning. I still remember the first time I discovered that comedians actually write their jokes ahead of time. It makes sense now - but at the time I thought they simpler winged everything. About a year or so I had to give a presentation on ColdFusion and Solr with - I kid you not - 5 minutes preparation. I was able to - barely - and that's with me having a very comfortable understanding of the technology. It just proves though unless you spend the time preparing you are not going to give a good presentation. Period. If your job is asking you to present on something, then you need to insist on time to prepare. About 10 years or so I was asked by a sales guy to give a full day class on ColdFusion. When I insisted I'd need 2-3 days to prepare the outline, materials, etc, he got pretty upset. He assumed that since I was an expert I could just walk in and teach a room full of people. That's simply not the case.
I typically begin with a very simple outline. Maybe just 2 or 3 basic points. I then begin to organize slides around those points. One thing to keep in mind is that this should be an iterative process. I typically modify my slides again and again - sometimes up to the time of the presentation itself. I try to think about the topic and how best to explain it. So for example, if I'm going to talk about using ColdFusion, I may begin with describing what it is and why you would use it. I'd move on to how to install it. I'd then move into actual examples. What's important though is the flow. I'm not going to begin with ColdSpring for example. I'm a big fan of starting as simple as possible and then building gradually up from that. Not just for 'intro' topics but any topic. This has the additional benefit of allowing you to end your session with tips on how to go "higher" in whatever process you were speaking on.
Practice is important - but personally I'm not a fan of doing a run through in front of a mirror. And while my wife loves me - I'm not going to put her through the hell of hearing me talk about code. I know some folks swear by it. Above I mentioned the idea of giving a presentation to your company. It's also a good way to practice a presentation that you may be giving elsewhere. What works for me is simply going through the presentation in my head. I sit there with my Powerpoint and mentally go over what I'm covering on each slide and what code I'll be showing for examples. I'll do this probably 10-20 times and make edits and updates as I feel things need clarification, trimming, etc.
It's the content stupid
I'm going to out on a limb here and say - especially for technical presentations - I don't give a damn about your slide design. I know some books make a big deal out of this. I know that I've seen some incredibly cool looking slides before. But at the end of the day, it just doesn't matter. If you are new to presenting, it can also be a distractor. Pick one theme in Powerpoint or Keynote and just be done with it. The content of your slides is going to be critical. Try to keep your slides to 2-3 bullet points each. Your slide is not a script. You should not be reading from the slides but using it as a guide to what you will be talking about while the slide is on screen. The text there reinforces what you are saying. It doesn't repeat what you are saying.
Do not put code on your slides. Now there are certainly exceptions to this. The presentation I'm giving today has two slides with code on it - mainly though as an illustration. But unless you use a real small font then you're not going to get much code on the slide. I do think a generic example is fine. So for example, I'm talking about parsing RSS feeds in ColdFusion, I may include: <cffeed source=".." name="..">
Speaking of code, before your talk, go into your editor and increase the font. It's not big enough. Trust me. And if you are an Eclipse user, have fun with that. As much respect as I have for the Eclipse platform, it sometimes has the UX of a double left handed monkey. You also want to remember the size of your output. I make this mistake a lot. I'll run something in the browser and forget that the default font size is too small. You can zoom in with most modern browsers, but be ready to do if need be. If you're doing some fancy layout try to ensure it doesn't break when you zoom the browser.
Assume the Worst
Your laptop is going to break. Windows/OSX is going to blue/gray screen. Your internet connection will not work. Period. Be ready for it. For technical presentations remember that your audience is used to this already. We all know how darn unreliable our technology is. But be ready. In terms of an internet connection, never assume you will have one. If your session requires it, try to find a way around it. So for example, if I were giving a presentation on web services, I'd try to host my examples locally. It doesn't make sense for local code to call other code locally via SOAP, but in terms of a presentation it makes perfect sense. (And makes it easier for people to test your code later on!)
In terms of your machine crashing, there isn't much you can do about that. I try to minimize the amount of startup services so that a restart isn't a 10 minute affair, so you can consider trimming the fat there. Try your best not to get flustered. If you are midway through your discussion, it's a good time to go into Q and A while your system is starting up.
Keep a backup of your code and slides. There are too many services to list, but I make use of Dropbox (affiliate link) and ensure both my code and slides are available there. That way if I need to go to completely different machine I have that option. (And yes - I've had to go that route.)
Public Speaking is... Speaking
Ok, this is probably obvious, but don't forget you will actually be speaking. Get water. Period. Your mouth will dry out. Do not get coffee or soda or - lord forbid - beer. Go slow. I've mentioned my stutter before - and while it isn't much of an issue when I speak - I do consciously slow myself down to make it less of an issue. This is especially important if you have an accent. (And don't forget - to yourself you'll never have an accent. To everyone else outside of your immediate area - you probably do.) For every foreign speaker I've had to struggle through listening a simple slow down of their pace would have helped tremendously. Watch out for words like "um". We all use words like that when nervous but try to avoid saying it every other sentence.
The Audience is your friend - your slightly crazy unpredictable friend
I mentioned earlier that - for the most part - your audience is going to be friendly. They are there to learn. They are there to listen. That being said, the audience isn't always going to very polite. I remember my very first presentation. I noticed people in the back of the room get up and leave. I was shocked. Leaving a presentation? My presentation? I now know that's not a big deal. Keep in mind that sometimes session descriptions don't do a great job of conveying what is being covered. If a person discovers the topic isn't what they need, do not be offended. It happens to all of us. I do it myself. The important thing is not being flustered by it.
Talking can also be an issue. Luckily most of us are mature adults. We don't hold a loud conversation while a speaker is talking. But it happens. Most of the time I try to ignore it, but if it becomes a problem, and if I see people around the troublemakers looking upset, I'll stop and ask the people speaking to please take it outside if they can.
There's another thing about audiences I've learned as well - they change. That shouldn't be too surprising, but I've given the same presentation one day after another and gotten a completely different reaction. It can be a bit unnerving. Sometimes they don't click. Sometimes you don't click. Look at it like any other relationship. While it may be generally friendly, theres going to be arguments.
Last Tips
Not to be indelicate but... go to the bathroom before your talk. Every time. Pretend like you're talking to your child and whether you have to go or not... go.
Don't type. You will typo. Period. If you are going to write code, keep it short and sweet, not more than one line. Your code should already be done before hand, so at most, use cut and paste to drop in snippets. What I prefer though is an iterative approach, where I'll from from test1.cfm to test10.cfm and add a few lines at a time.
This one bugs me. Don't stop and start your slideshow as you go from slide to code to browser. Keynote used to be bad about that - basically blocking you from alt-tabbing while a presentation was going on. It's the main reason I export to PDF now. You miss transitions, but 99% of transitions are distractors anyway. Practices quickly going from slide to editor to browser. If it isn't fluid, fix it. Presentations in PDF, or HTML, are also more shareable to the public and can more easily be viewed online.
When someone asks you a question, repeat it. This serves two purposes. One - it's pretty difficult to hear people across a room without a mic. Second - it gives you a chance to mentally prepare your answer. I also rephrase the question sometimes just to make sure I really get what they are asking. And by the way - it's ok to say "I don't know." No one knows everything. If you can't answer the question, offer to take a note of it and come back to the person later.
Shut down Twitter, IM, and basically any program or tab not related to your discussion. Even something as innocent as iTunes. Any program or distraction is going to - well - distract you. At worst it will embarrass you.
Archived Comments
Great post! I agree with everything except "Even something as innocent as iTunes." Since when has iTunes been innocent? ;)
As someone who speaks but doesn't like to do it, I would emphasize as you do that it's a learned skill - the only way to get more comfortable is to keep doing it. That said, some of my early presos were fill-ins for people who dropped out. Bad idea. I didn't have enthusiasm for the topic and that combined with my being new/uncormfortable with speaking was a bad mix. Finally, find some presos you can reuse/rework. I find the more I give particular presentation the more I improve it as well as get comfortable with it (and thereby present better). You'll save yourself a lot of prep time and get better in the process.
Thanks Ray! A number of people have been stepping up and presenting on the cfmeetup. Any thoughts on how to present well over a connect session?
Excellent points. I would also add a bit to it of my own experience on presenting and teaching on various subjects. First, you have a lot less time than you think. Minimize the presentation to the core of what you are getting across. One hour is a very short time to go into detail on most subjects. Working out the timing is important and your presentation will become shorter as you edit it. The audience will not sit in rapture for more than a hour or so.
I outline my talks, but in a schedule rather than points to be made. Usually, schedule and talking points can be the same, but not always. One of the worst things is to get to the end of your time and have 25% of your talk remaining. That is why scheduling is important. Better to be shorter and have more time for Q&A than to rush through in the last 5 minutes.
You can video yourself giving the talk these days with so many gadgets we have available. I have heard of people doing that rather than asking their spouse or friends to sit through it.
It doesn't happen every time, but some times you will get an "expert" who sits in the front row and tells you all the things that works for them and how they would do it "their way". You have to deal with these folks since most of the audience has come to see your presentation rather than theirs. Usually, I address this up front in a presentation or workshop telling them that I appreciate that others may be versed in the subject, but people came to hear how I do it. Otherwise, you can plant some big fellows in the audience to do a beat down on those folks if you can.
I'm sure others will have other ideas. Excellent blog Ray.
Wow, that's an excellent question Phillip. I give a bunch of them and frankly - it's difficult. First off - on a personal level - this type of communication always makes me stutter a bit more. I also have stuttering issues on the phone too. Maybe it's the "talking to someone I can't see" issue. I don't know. But it's more difficult for me to maintain a "speakers voice" if that makes sense. It's also REAL hard to gauge interest. In a normal presentation you can see smiles, blank stares, etc. It makes it easier to judge if you are going too fast, too slow, etc. You fly blind on Connect.
Random thoughts:
a) If you give it at work and work in a cubicle, it's going to cause noise issues. Try to get a meeting room instead. By the same token - don't assume you can give it at Starbucks. Treat it like you would a recording session almost.
b) Anything motion based, like effects, are going to be a bit spotty. If your preso is heavy on that you want to account for it. Perhaps using slower effects than normal.
c) Invest in a good mic. Nothing expensive, but pick one up. To be honest, I get by with my laptop mic. But I also wear headphones while I present just to help keep down on feedback.
That's all I can think of now.
This is all helpful stuff ... I've taken a class on professional communication for software engineers, and we covered pretty much everything you mentioned here.
From the little experience I've had, I'd definitely emphasize practice. The average person has no idea how much material it takes for him to give a one-hour presentation, or how long she can talk on a particular subject. Write up something, practice it, note the time, adjust, polish it until you can get it within striking distance of your allotted time. (When in doubt, aim short; better to have questions, even if you need to plant a couple, than to cut things too short.) This is especially important if you're like me, and you a) talk quickly under normal circumstances and b) talk even faster when you're excited or nervous or something.
We were advised not to hand out a slide deck, associated materials, or anything like that before the presentation. If you give people something to read, they will read it, not listen to you, whether or not it's directly related. Instead, make copies and have people pick them up on their way out, or even better, post a URL where they can get a copy of the deck (or whatever it is you're passing out).
Don't worry if your first few presentations aren't good. Most people actively dislike public speaking and will appreciate that you're even trying it; some may make fun of you for presenting "poorly", but forget them, they'll probably complain about something no matter what's going on. If you get interesting and/or important information across, that's what people will remember. If you become a memorable presenter, so much the better.
When in doubt, arrange for refreshments. (Ideally not in the same room as the presentation; motion will distract the audience.) If you can't enthrall them, bribe them. I'll sit through just about anything if you give me cookies.
"Don't worry if your first few presentations aren't good."
Let me just add - to this day - I still don't hit a home run every time. I try for a single. On a good day I'll get double - or even a triple. But I accept that I'll do "OK" most of the time. And yes - sometimes I strike out. (I can think of a preso in the past year that - in my mind - just plain failed.)
Great post. Hope it encourages more people to speak.
BTW, Keynote now allows for nice cmmd-tabbing.
Great post. A survey reportedly stated that the #1 fear for the majority of people is public speaking. #2 is death. So at a funeral more people would rather be in the casket than delivering the eulogy.
Great post!
It still doesn't encourage me to do a presentation, even for something as simple as trying to teach you guys Finnish swear words. :)
Maybe it's because I don't think I have anything intelligent to say or just a fear of being mediocre.
<I'm blond>
Jaana
@Jaana: It has nothing to do with intelligence. I don't think I'm intelligent. It's about sharing what you _do_ know. Everyone knows something. Shoot, even just talking to your coworkers about a conference and what confused you can be interesting.
:p
Maybe I'm just shy hehe.
I get the sweaty palms, nervous tick etc even when I need to give an opinion in a board meeting and I know all members there.
I think it is good mention that you don't have to be an "expert" on a topic to give a good presentation on a topic. In fact, experts tend to forget the common assumptions that normal people make. Sometimes being a newbie on a topic and sharing the challenges and false assumptions you made are far more valuable than expert dissertation on technical details.
Ray,
Don't hate me, but don't forget about using proper grammar.
In your first paragraph in this post, you improperly use "there's" instead of "there are" twice. It's no big deal in forums like this, but it's not something you want to do in a presentation. A representative from the University of Chicago came to town and presented to a group of aspiring students, including my son, and I counted about 16 grammatical errors that he made before I gave up. He had written several books. It happens, but I also left unimpressed with his presentation and ultimately the University of Chicago.
Thanks Joe, corrected.
Public speaking is truly terrifying for me. Especially in situations where I have to have a sign language interpreter. Not only do I have to think about what I'm talking about, I also have to make sure my interpreter is conveying my message properly (especially if said interpreter is not used to technical terminology). Last time I did public speaking was when my co-worker and I had to talk about what we learned at CFUnited. I'm afraid I made a mess of my portion. And make sure people address their questions to ME, not to the interpreter as in "tell her that . . . "
Maybe someday . . . if I can get over my stage fright and can get my "personal" interpreter like Marlee Matlin has (she has used the same interpreter for years for her public speaking appearances . . . she can afford to do so).
Besides which, I don't know what I could speak about and not sound like an idiot. ;-)
You see - you are the second person to say you were worried about sounding you're an idiot. Yall need to get over that. :) Maybe it's just that I _love_ talking tech, but I can't imagine not enjoying listening to something you had to say. (Well, to be honest, I'd pass on the knitting. ;)
Ray, did you notice that the 2 who are afraid of sounding like idiots are both female? We're wired differently hehe.
That is true. I know life is definitely different for women in general, and particularly in tech.
Yeah, it definitely is different for us women. It has to do with feeling confident and being taken seriously. I'm glad to see more women speaking at conferences, and gives me hope that I may be able to give a good presentation (once I come up with a topic that is interesting and I feel good enough about to talk about).
Last year, NCDevCon had about 20% female lead sessions. It wasn't a gender issue as much as trying to give new people a chance to present on some new topics. I don't think Dan had an agenda in that direction, but everyone was in favor of the outcome. I went to Daria's preso and learned some things about caching.
Of course, the biggest issue is getting women into local user groups and getting women to do presentations at UGs. That is a first step towards getting on the larger stage mostly.
Another issue is to get more women to attend the conferences (that are left.) We have tried sending info to local women's colleges and even some personal contact with some women colleagues, and we were only partially successful at NCDevCon. We did have a decent mixture of attendees though. I would love more ideas on what might bring more females out to the conferences.
I'd love to be able to attend conferences and it would have been possible before kids, but I've got 5yr old twins and husband in racing (Nascar) and gone 230+ days a year. That leaves very little time for me to be able to leave the house to attend anything. Luckily I get to work from home, so get to do what I love the most - ColdFusion.
We're now straying off topic, and Jaana you can decline to answer this, but who is your husband? I don't follow NASCAR (much prefer Indy and rally racing instead), but it's cool.
Sorry, didn't mean to get us off topic :(
My husband is just one of the team members in a Cup team, driving the race hauler for Kasey Kahne.
No worries - if I had really minded I wouldn't have asked. ;)
@Jaana - The person who drives the hauler is not 'just one of the team members' :D
I am a big NASCAR fan, as is my older son. We are taking him to his first race (and mine) in October at Dover - super excited.
</threadHijack>
:) I know Scott, it's more then *just* :) I just don't want people to think it's a glamorous life, because it's not. It's rough being on the road for 60k+ miles every year, live in hotels, work 14-16h days and very little time off during race season (3 weekends off). Yes it pays well, benefits are great, but I'd prefer having a husband home and so would our daughters.
</threadHijack2>
Useful post and insightful comments. Couple of other useful resources, not specifically tech focused:
Presentation secrets of Steve Jobs - very general in scope, some useful pointers about how to structure a preso and what content to include (and what not to include)
http://slidesha.re/5YqzAX
Surely everyone's seen this by now... Guy Kawasaki on his 10-20-30 rule.
http://www.youtube.com/watc...
If I ever need to make code changes more than once to the same file - I try not to do this, but in some presos, its unavoidable - I will simply comment out the code I want to add prior to preso, and then just uncomment it. I am less likely to make typos commenting and uncommenting code than trying to write code on the fly.
Also, I used to open up all the 'preview' pages in a browser before hand, but recently, I have just started including links to the pages in the slide deck. This way, I have a prompt of when I should show example code (I would sometimes get lost as to waht demos to show)
The only argument I'd have against your "comment" idea is that I tend to worry about it being distracting. So for example, if I'm demoing some ColdFusion feature, I'm not going to be anal about my HTML. Ie, I don't both with html, head, body, etc. I figure any line of code that is not necessary to demo feature X shouldn't be on screen, even if the result isn't "HTML Perfect" (if that makes sense). I try to do the same when I blog as well.
Makes perfect sense, and I typically will do the same, however, there have been presos I have given - like the 'Pimp Out Your Model' one I am dong for RIACon (http://www.riacon.com) where I am demoing a full app, and not just code snippets.
I agree - that's a good place where being "complete" makes perfect sense.
Thanks Ed for the link to the 10-20-30 rule. That reminds me about lightning talks, Pecha Kucha and Ignite presentations. What is the overall feeling about those?
Not as cool as Nascar. Thread merge ;)
I think they are a great format for speaking.
To earlier points about finding something to talk about I have two thoughts;
a) one you don't have to be an expert on something to speak on it. Often its the basic or intro talks that help me get something. Especially if they come at it from a fresh perspective.
b) give a topic on your experience on something. This you can limit to just what you know. These can be useful for exposing others to a piece of a new technology.
Jaana, I never thought about it before, but would more women attend conferences if there was a kids play thing or some sort of day care? It probably opens a bag of worms about liability, but we do want to encourage female attendance. I think I have even heard guys say they can't make it because they had to stay with the kids while their spouse was busy. Just an idea.
Roger, it would make a big difference if that was available. I have a great sitter in my end that most Saturday's my girls go with, but the day is not as long as it would be during a conference. The ability to bring my girls with me, leave them in capable hands during the conf. would make it a whole lot easier for me to participate.
Of course that idea will turn into a can of worms... different age groups, liability etc., but possibly something could be arranged with a daycare provider or such if there was enough interest in that.
Definitely worth thinking about :)
Ray, sorry to hijack your comments. We will move the discussion to the TACFUG list eventually.
Jaana, there is a lot to think about on the day care issue. It could work for both genders since people are so busy all the time. I know I have heard guys say that they couldn't make it due to having kid duty while their wife had a commitment.
If it would only be a couple of people, we might be able to find some responsible sitters around the area. There are a lot of college age women around who might like a weekend gig.
I'll bring this up with the NCDevCon team to see what they say. There is so much other stuff to do, but if it allows a few more women geeks to attend, it would be a good thing. I'll email you if I think of any questions. Feel free to email me directly if you have any suggestions and/or comments about this.