I've never had a fear of public speaking per se; yet I just felt like I didn't know "enough" to get up in front of dozens of people and share what "little" I did know. A few wonderful women in the Android Community helped me come to my senses and realize that I did have "something to say". Not only that, what I wanted to share was valid, entertaining and useful.
I've broken my learnings into four main sections:
- The Talk
- The People
Before you can speak at a conference you need a talk, well at least you need the idea for a talk. I find that my best talks come from something that I'm very passionate about and that I've spent some time working on. I work full-time as an Android Developer, so every day I'm solving technical challenges. When I come across something that takes me a while to figure out, I add it to my ongoing_notes.md file. It's a simple Markdown file where I paste code snippets, log steps taken, and add screenshots to problems I solve.
In the below example, I added some notes for creating Custom Radio Buttons on Android. You can imagine that I may add future snippets around customizing user input. Then eventually I can put them all together into a talk: "Upgrade Your Application's UI with Custom Input Fields". (<< I literally just thought of that title 😉
Now of course, it's not always that simple. However, if you're just getting started you'll be the most effective if you talk about things that you know well and feel comfortable with. The key here is to keep track of things, so that when you're ready you don't have to start from scratch.
Now once you decide on a topic, the next step is to choose a format for your delivery. Here are some of the more popular formats I've noticed at tech conferences:
- The Case Study - "We used to do X, now we do Y and thus we have Z."
- The Deep Dive - Take one thing: a complex block of code, a concept, a feature of a tool and go into the ins and outs of how it works and why
- The Overview - Here's this library/framework/tool, let me show you how to do the basics and share its capabilities
- The "Let Me Show You" - Gives a brief introduction to the concept, then gives multiple real-world examples of how to use it
Next, I create an outline for myself. The first thing I do is decide on my main point. What is it that I want everyone to walk away from the talk with. Then I make sure that my outline has at least 3 main points of interest that I plan to cover in the talk. If I can't come up with at least a solid outline for a talk, then I put it on hold and revisit at a later date. When I finish my outline, I try to talk it over with a few folks that I trust to give constructive feedback. Not every single idea is going to be great for a talk. Some topics would do better as a short instructional video, a blog post, or a few tweets. Therefore, it's healthy to get more eyes on your proposed talk before putting a ton of work into it. This leads me on to the next part of "The Talk"...slides.
I've heard many popular speakers say things like: "Slides are the least important part of a talk.", "The last thing I think about are my slides.", etc. To me, I feel that the quality of your slides is very important when giving a technical talk. Let me enumerate a few of the reasons why I feel this way:
- Tech Conferences are mentally draining. With so much content being thrown at you during any given day, it's refreshing to attend a talk that has the right balance of information displayed on the slides to give your mind a rest. Always think about the audience.
- After your talk is presented, many people like to go back and review the slides at another time when they can go at their own pace and dig deeper into what you have presented. Even those who were not able to physically attend can still benefit from your great content.
- Often your slides can provide additional context to what you're saying. This goes back to the age old saying, "A picture is worth a thousand words." Imagine trying to learn about the various operators available in RxJava without those helpful marble diagrams.
- Finally, if you're just getting started as a speaker it's great to be able to use your slides as a way to jog your memory about what you wanted to cover during that time.
My go to option for creating slides is: Keynote. It has everything you need to create polished presentations. It's also trivial to export those presentations into PDF format for uploading to any online slide sharing platform. Below is an example of the format that I tend to follow when creating my slides.
|Slides with Keynote|
I like to break up code with images, gifs, and short phrases. I do this so that I don't bore people to death with tons of any "one thing" back to back. Keep in mind that at a tech conference there is a wide range of expertise present. Some people are not developers at all, others are just getting started, still others are more advanced. I find that in general the audience skews more toward the Newbie/Intermediate level of things. Therefore, I aim to present valuable information that doesn't leave them completely overwhelmed.
An example of this is how I present code to the audience. Instead of just showing everything all at once, I progressively reveal the code over a few slides. I tend to lower the opacity of the previous code as I advance. This allows the audience to keep the context, yet focus on the lines that I'm reviewing at the time.
Pro Tip: Upload your slides in advance so the audience can follow along.
Occasionally I have to present at work or a Meetup event on short notice. For these times, I often turn to Deckset in order to create my slides. It lets you create your slides in Markdown. The software then provides a few themes that you can choose from to display your content. I like it because I can create decent looking slides quickly, with minimal effort.
|Sample Slides with Deckset|
Ultimately, the best thing you can do for yourself is to practice, again and again. I will often present my talk to a few friends and family to help me work on how I deliver it. Then I may present to some coworkers and finally at a local Meetup group before presenting at a conference. This helps me to find holes in how I've outlined the information and gives me an opportunity to be prepared for common questions.
Pro Tip: Start out by developing only one or two talks per year.
The day of the talk I have a mental checklist that I run through. This helps me to feel the most comfortable and confident that I can while delivering my talk.
- Have some water with you
- Arrive early to your talk room
- Have backups everywhere (Google Drive, Dropbox, iCloud)
- Expose the talk's landing page (example here)
- Wear comfortable shoes/clothing
- Take off your badge before you begin
- Make eye contact with your audience
Conferences are all about people. There are the organizers, the attendees, your fellow speakers, and those who will interact with your content later. Each group has its own agenda. Organizers want things to run smoothly. They have sponsors to wrangle, complaints from all directions, and often financial obligations. Therefore, what they want from the speakers is: Limit the drama; be low maintenance. What would that entail?
- Be upfront about your financial needs (Do you require travel and housing? If yes, say so.)
- Stick with the accepted talk description (If you proposed a talk on Raspberry Pi, don't give a talk on Baking Apple Pies)
- Help promote the event (From the moment you've been accepted, share consistently on your social networks)
- Communicate any change of plans (If you will be arriving a day late, let them know)
- Stick around (Attendees love interacting with speakers face-to-face, so don't just disappear once your talk is done)
- Follow the direction of the A/V team (You want your recording to come out well, don't you?)
As an attendee, I'm looking to learn something new and have my questions answered by the experts. What does this mean for you as a speaker? Well, first recognize that you're considered an expert. So be prepared to provide more than surface answers to questions in your talk's domain. Also, be approachable. Let the attendees know that it's ok to come and talk to you. You can do this by sending out some tweets before and during the conference to let folks know you'll be around and are available for questions.
The final group of people that I'll talk about are your fellow speakers. A major perk of being a conference speaker is that you get more access to other speakers. It's a great way to grow your network and have your questions answered in a private setting. For example, at Oredev this year I was able to ask very specific questions about RxJava and Bluetooth with two of the foremost experts in the Android community. Of course, I could reach out on Twitter or Slack, but the level of detail would have surely been lacking in comparison to what I gleaned in person.
— Kaushik Gopal (@kaushikgopal) November 9, 2016
Next piece of advice, is to sign up for a Frequent Flyer Program early on. I belong to two, Delta and American Airlines. Even if a conference agrees to book your flight for you, you can send along your preferred airlines along with your member id. This will eventually allow you to stand and wait in line earlier than others on your flights 😉 Ok, so there's more perks than that. Typically, you get enhanced customer service, free upgrades, priority boarding, etc. If you're traveling often, these small benefits ease the pain some.
Try to arrive at least one day before you are scheduled to speak. I've had occasions where my flight has been cancelled, forcing me to take a much later flight. It happens all the time when you're flying, so just give yourself some breathing room to miss a flight or two. If you're flying overseas, make sure you've done your due diligence on any needed Visas or required travel documents. And make sure you have copies of everything available. I have scanned my passport info and driver's license. Therefore, in case of an emergency I can print out copies if needed. I also, make sure my family has my itinerary for each day, especially if I'm out of the country. If you plan well, you can make your travel experience significantly less stressful.
A year ago, no one could have told me that I would have been given the opportunity to travel the world and speak about doing what I love. Looking forward to continuing my journey!