I’ve spent over 40 hours so far this year delivering talks and workshops about programming, visualisation, and data science, with several more hours still to come before the end of the year. If you’d told me 10 years ago that this is something I would do voluntarily (and would actively enjoy), I would never have believed you. I’d have been horrified at the thought.
And as I’ve started organising more events and finding speakers for meetups, I’ve realised that there are many more people who are also horrified at the thought of talking about tech in public. For example, there are so many people who write code every day but don’t feel comfortable talking about their code in public. I was definitely that person for a long time.
Now, I think I might actually be at my most relaxed when I’m running workshops. So I wanted to write down some of things that have helped me in getting comfortable talking about tech (although hopefully some of the advice is also useful for non-tech talks!)
These are some of the things that have helped me and are personal opinions – they many or may not be things that help you!
This might seem entirely counter-intuitive, but if you hate public speaking, I recommend speaking for longer. Lightning talks (usually somewhere between 3 and 5 minutes) are often recommended as a good entry point to talking about tech. Personally, I find lightning talks the hardest talks to deliver. With only a few minutes, it can feel like it has to be really well-rehearsed with little room for error. And that can feel like a lot of pressure.
Conversely, in a one hour workshop setting, if you muddle something up or make a mistake, you have plenty of time to correct it or clarify. You can take a little bit more time to breathe and collect your thoughts. It’s a much more relaxed environment on the whole.
Photo: rugfoot photography
People who dislike public speaking often avoid it until they absolutely have to do it. And those situations where you’re forced to speak in public are often more high pressure e.g. a job interview, conference presentation, or important work meeting.
Meetups are often a great low pressure environment to practice a talk. They’re informal gatherings of nerdy people who want to spend some time talking about data. Organisations like PyData, R-Ladies, PyLadies, rainbowR, R User groups, Tableau User Groups, or data visualisation meetups can be a great place to meet people with similar interests, and give a talk to people who you already know are interested in what you have to say.
Several of these organisations (and the Data Science Learning Community) also host book clubs, if you want a more relaxed way to get to know other people. You could present a chapter of a book to build your confidence in delivering a talk.
At the start of the Covid-19 pandemic, many communities moved their events online, and many have kept some or all of their events available in an online format. Although some may find delivering online talks a little demotivating at times (we all get screen fatigue and can find online talks less engaging), they can be really good for building your confidence in delivering talks. If you’re nervous about talking in front of an audience, it’s much easier to pretend they’re not there if you’re just sitting at home. Delivering a presentation is often more relaxed if you’re in a familiar environment rather than having to travel and deal with the technical problems of connecting laptops and sharing screens in a new location.
It’s also easier to have some notes for yourself. I used to (and occasionally still do) have the habit of talking too fast when I’m nervous. When I started doing online talks, I would write giant notes to myself to BREATHE and then count to four. It’s started to become a more natural habit when I’m delivering presentations, and it was much easier to build that habit in an online setting first.
One of the first technical meetup talks I delivered was for R-Ladies Nairobi
There’s plenty of literature (both scientific and anecdotal) that shows, when talking about writing code, it’s more engaging and beneficial to do live demonstrations with code. And I would highly recommend it as a way to make tech talks more engaging!
But, if you’re already feeling nervous about delivering a presentation, the thought of writing code live, in front of an audience, is unlikely to make you feel less nervous. There’s a more room for mistakes – which is absolutely fine by the way! The mistakes are often the most useful as an audience member because they show easy-to-make mistakes, and how to fix them.
One of the compromises between showing static code and live-coding, that I found useful, was pre-recording short snippets of code. For example, a gif showing the process (rather than just the final product) of writing YAML options in a Quarto document:
Pre-recorded gif of YAML in a Quarto document
The short, repeating nature of the clip means you don’t have to worry about talking at a certain pace. But you also don’t have to worry about being able to write code live. And it’s more engaging for an audience than just looking at a static image of your code.
Don’t be afraid to re-use the same talk at multiple places. Developing slides for a talk takes time, and it’s easier to iterate on your slides rather than starting from scratch each time. You can tailor the talk to different audiences e.g. spending more time talking about code in a meetup versus talking about results at a conference. Or use different data sets for the examples you show.
Each time you deliver your talk, you’ll notice things you want to edit, things you want to remove, or things you want to add in. You’ll gradually become more confident in delivering it, and have a talk you can deliver at short notice.
Note: some conferences may require you to submit a new talk that hasn’t been presented before.
Feeling ready to give your next (or first) talk about tech? Here are some more resources you might find useful:
This episode of the Posit Data Science Hangout fetaures Acacia Duncan and Blythe Coons from Articulation (the company who have been coaching speakers for posit::conf).
Emil Hvitfeldt’s Slidecraft blog series can help you to design beautiful slides using Quarto – perfect for presenting slides about code!
The slides from my pre-conference workshop at the 2022 RSS Conference on Technical presentations are difficult – let’s make them easier! take you through some guidance for developing a good talk. It also has the advice we crowd-sourced during the session about what makes a good technical presentation.