Public speaking for developers 101

Public speaking for developers 101

Public speaking for developers 101

Seasoned speakers have a saying “there are two groups of people: those who use speaking skills to improve their lives and those who are too scared to seize the opportunity”. I think it hits the mark. Communication skills are in high demand in every industry, from marketing to IT.

For us, developers, good communication and speaking skills mean fewer conflicts and misunderstandings in our teams, a better chance to be promoted, more opportunities to influence the direction the codebase and product are going, more visibility for our side projects, better opportunities for career advancement and much more.

This post aims to help you “level up” your communication skills by picking up Public Speaking at meetups and conferences. If you didn’t give any (or gave just a few) speeches before, or you are considering giving it a try, then this post is for you. I compiled advice from people who were beginners just like you but worked to improve their skills.

To complement those suggestions I will also share our experiences from working with developers-speakers, as organizers of Scala Wave and Functional World.

Before the talk

Preparing beforehand is a crucial part of every speech, technical or not.

The first hard choice you need to make is picking the topic. The best topics are those who resonate with the audience: something that they do care about, are interested in, or want to explore. The topic should be current but not necessarily “hyped”. Good topics often solve a problem the audience experiences. A good rule of thumb is to ask yourself “would I want to learn about this topic?”.

At the end of the day, your goal should be to fill the audience with people excited about the same things you are.

Jacek, one of my “sources”, pointed out that you don’t have to know everything about a given topic, it’s enough to feel comfortable with it. It might sound counter-intuitive, but picking a topic for a speech might boost your learning.

If you get stuck trying to pick up a topic, but you have some candidates, you can contact the organizers and ask for advice. Of course, they won’t pick a topic for you, but they might give you valuable advice – point out duplicate or recently presented subjects, explain what is the audience you should expect … This should make the choice easier and give you more insights to prepare better.

Having picked a topic, the next thing is to prepare the outline of the talk – key points you would like to address. When you know “what” you want to talk about, you are halfway there. Key points are the backbone of the presentation, but usually, you would like to support them with slides.

A trick many speakers use is to show the agenda as one of the first slides. This helps the audience to understand where they are heading. Adding a summary slide at the end is also a good way to collect the points made throughout the talk.

There are few hints regarding building slide decks. First, try not to do them the night before – this is additional stress you don’t want to go through. Most speakers advise not to put too much content on the slides. Of course, you can fit the whole 9,000-word Wikipedia article on one slide, but effectively you can pass much less information. Use slides to display images, sketches, or schematics.

You can also add funny pictures to make your punchlines stronger and jokes funnier, but use it with caution – you don’t want your audience to be distracted by cat GIFs when you are explaining important concepts.

When showing code, make sure it’s readable and focused. The audience should be able to understand the code and on top of that, they should know, which lines you are talking about at the moment. There are few techniques to make it happen – drop boilerplate, use high contrast, make the code you are talking about bold or change its color …

The outline prepared and backed by slides. Now – rinse and repeat.

Practice makes perfect, so make sure you practiced the talk at least a few times. Do it aloud – speaking in your mind and aloud are two completely different things. Keep in mind that your ultimate goal is to share knowledge, you don’t have to memorize the whole talk. The outline, you prepared earlier, is what you want to share so make sure you can speak to it.

One exception to this rule is the opening of the talk. Standing in front of the crowd, stress will kick in and you might find it hard to start – preparing few initial sentences will give you a head start and defeat stage fright.

To make the practice more effective consider recording yourself. It might feel strange at first, to hear your voice as others hear it, but this might give you better insights into how the talk could be received. You can push it even further – there are mobile VR apps that put you on a virtual stage in front of virtual people, then grade your performance and give suggestions. It’s intimidating at first, but also quite funny.

On top of that, you can do a “dress rehearsal”. If you are giving a technical presentation you will easily find team members who would like to listen to you talk. It’s a perfect audience to test your delivery. On one hand, they have the experience and know-how to understand the topic, on the other, they will be more eager to help you improve. Perfect audience if you ask me.

Advice from Lech is to make sure you can go through the whole outline in 80% of the speech time. This way you can avoid being late, rushing the presentation, and make sure you have time for questions. The conference organizers will also help you with being on time – usually by providing you a clock with the time left.

During the talk

The speech is prepared, you did train the delivery and the big moment is right around the corner. What to keep in mind when you’re on the stage?

Firstly, try to talk slowly and clearly. Don’t rush – your goal is to share your experience or influence the audience, not to get out of the stage.

Of course, it’s not easy to perform under stress is in your head and, at the end of the day, your attitude towards it is what makes all the difference. To deal with the stress, consider your audience to be your friends. They are people just like you, and you have a lot in commons. In fact, they want you to succeed as much as you do.

Jacek takes it even further – to battle stress find a person in the crowd that seems interested and excited about your topic and try to “talk to him/her”. If you have at least one friendly face in the group, the speech will become much more personal and less troubling. In the worst case – you can simply bring your friend to the audience.

An open, friendly tone of the whole presentation has more to it than just that. It helps you to behave naturally and the audience to be more forgiving in case you make a mistake.

Sometimes, things go wrong not because of you. Apps crash, slides don’t rewind, sound systems don’t work … The best way is to take it with a smile. When something goes wrong, tell a joke. It will make you feel better about the situation, the audience won’t get too distracted from your talk, and it will give the organizers some time to react and fix the issue.

Technical problems are especially cumbersome when doing live coding. If you decide to live code always keep the correct code near you. On a piece of paper, in another window or branch. This way if, under stress, things go bad you have a fallback to use.

Keep in mind that you can’t rely on conference Wi-Fi – organizers are doing the best they can, but with a big audience it’s hard to keep the connection fast. Make sure your build tool is set to “offline” or has the dependency cached locally. If you absolutely need internet to consider using LTE from your phone. As a plan B, you can also record accessing the external resource.

When you reach the end of the presentation it’s typical to ask for questions from the audience. A small hack that could help you to encourage people to talk is to ask “What are your questions?”. This way you kind of force questions out of the crowd.

Another trick you could use to engage the audience is to ask them questions. Opening the talk by probing the audience (“Who here has used X before?”) or asking questions related to the presentation (“Who thinks the output to this code will be true?”), is a great way to make sure the public is following.

After the talk

Sit down and relax – you deserve it.

scala-wave-speakers

Beyond the first speech

Congratulations, you made it! But the work doesn’t stop here. You overcome your fear, now it’s time to refine the skills. Here are some resources to help you in the way forward:

Having said that, I would also like to mention that this year Scalac is organizing the second edition of the Scala Wave conference. You can check it here

Do you like this post? Want to stay updated? Follow us on Twitter. 

Read also

Download e-book:

Scalac Case Study Book

Download now

Authors

Patryk Jażdżewski

I'm a software consultant always looking for a problem to solve. Although I focus on Scala and related technologies at the moment, during the last few years I also got my hands dirty working on Android and JavaScript apps. My goal is to solve a problem and learn something from it. While working with teams I follow "The Boy Scout" Rule - "Always check a module in a cleaner state than when you checked it out". I think this rule is so good, that I extend it also to other aspects of software development - I try to improve communication patterns, processes and practices ... and all the things that might seem non-technical but are vital to success.

Latest Blogposts

17.04.2024 / By  Michał Szajkowski

Mocking Libraries can be your doom

Test Automations

Test automation is great. Nowadays, it’s become a crucial part of basically any software development process. And at the unit test level it is often a necessity to mimic a foreign service or other dependencies you want to isolate from. So in such a case, using a mock library should be an obvious choice that […]

04.04.2024 / By  Aleksander Rainko

Scala 3 Data Transformation Library: ducktape 0.2.0.

Scala 3 Data Transformation Library: Ducktape 2.0

Introduction: Is ducktape still all duct tape under the hood? Or, why are macros so cool that I’m basically rewriting it for the third time? Before I go off talking about the insides of the library, let’s first touch base on what ducktape actually is, its Github page describes it as this: Automatic and customizable […]

28.03.2024 / By  Matylda Kamińska

Scalendar April 2024

scala conferences april 2024

Event-driven Newsletter Another month full of packed events, not only around Scala conferences in April 2024 but also Frontend Development, and Software Architecture—all set to give you a treasure trove of learning and networking opportunities. There’re online and real-world events that you can join in order to meet colleagues and experts from all over the […]

software product development

Need a successful project?

Estimate project