The Ultimate Guide To Memorable Tech Talks — Part 4: Tools of the Trade

Tools for brainstorming, backups, creating slides, time-management, and more

Nina Zakharenko
13 min readFeb 16, 2019
Photo by Rob Lambert on Unsplash

This is Part 4 of a multi-part Guide to Memorable Tech Talks. Visit the outline for more information.

Key Takeaways

  1. Find the tools that work for you. Many of the best tools are free to use.
  2. A markdown-based slide generator like Deckset, GitPitch, and reveal.js enables you to version control your presentation with git.
  3. Be prepared for disaster with two forms of backup and a local copy of your talk.

There are several different tools, apps, and programs, and gadgets I use to help me track my time, my tasks, craft my talks, back them up, and share them afterward. My preference is towards tools to be easy to use, accessible from multiple platforms, and help save time. For time and task tracking, being able to set reminders and due dates is key.

I no longer use Powerpoint or Keynote to craft my tech talk slides. I moved on to markdown based slide editors, and even though they have their quirks and provide limited features, that’s become the process that works for me. I hated making the pixel perfect adjustments to get my keynote slides to look good. The process let my perfectionism take over. I noticed I’d procrastinate on making the slides look good instead of focusing my time on making quality content.

You’ll need a separate application to convert the markdown text into slides. My slide editor of choice is the Mac app Deckset. A license costs $29, but there are plenty of other options available like reveal.js, GitPitch and others. I love a lot about Deckset, like the live-preview window that shows what your slides will look like as you update the source text. You can see the full list of features here.

There are several quirks to Deckset that I don’t like, like not being able to format the speaker notes or adjust the presenter view. Not being able to adjust the presenter view means my next slide display is much smaller than I like it, and I can’t adjust what the timer looks like.

Sometimes your slides will end up looking funny and you have to tweak them manually because the formatting doesn’t always look the same between different themes. For the most part, I’ve figured out workarounds to my issues. Deckset comes with quite a few themes and you can even customize them and make your own. I like that I can now focus on making useful content rather than endless adjusting how my presentation looks.

Because my slides are now markdown based, and many conference applications allow markdown styling, I now use a markdown editor for all my conference talks. I use a free lightweight editor called Visual Studio Code for markdown. VS Code comes with a feature that lets you open a live-preview tab side by side with the source markdown file.

I now know markdown like the back of my hand, but I was never afraid of using a reference while I was learning. Having a code editor open can help make sure that any included sample code is syntactically correct and runs as expected. As a bonus, VS Code has quickly become my favorite editor for Python.

If you use a text-based slide editor you should consider putting all of your files and images into source control in a remote repository like GitHub. The huge advantage of text-based slides and source control is being able to track changes. That way if you change around or remove content you’ll always have a reference point. If you don’t know how to use git and GitHub, now is a great time to learn.

GitHub logo

Shameless plug: If you’d like to learn but don’t know where to start, I’m the author of a FrontEnd Masters course on Git.

If you’re not ready to share your progress with the world, make sure you create a free private repository. I use a private GitHub repo to keep all of my talk proposals, including the rejected ones so that I can see what works and what doesn’t in the long term.

For large file formats, make sure you use Git Large File Storage (LFS). Because git was created with text in mind, a secondary tool is needed to support binary formats with large diffs. This keeps your repository from becoming bogged down and slowing down with each commit. It’s very easy to use and takes two minutes to set up. The type of larger files you’d want to store with git LFS include presentation files like powerpoint and keynote, images like png, jpg, and gif, PDFs, and other large files. Commit early and commit often to track your changes, and remember to push frequently in order to sync your changes to the server.

Dropbox is a good second form of backup. Symlink a project directory to the Dropbox folder and the contents will automatically back up to the cloud as long as there’s an internet connection. Using this technique, you’ll always have an up to date backup of the presentation and any additional assets like photos or videos, even if you forget to `git push.’

I like to say that my advice is not one size fits all, and you should pick and choose what to follow. That generally applies to everything in this article except for this next bit.

Any assets, including images, gifs, and videos should be contained on your local machine and backed up as part of the presentation. Never present from Google Slides or any other web-based presentation service. Don’t run live demos that solely depend on the internet with no backup plan.

My very first conference talk was almost ruined because the wifi cut out right before my talk. I was using Google Slides to present and didn’t have a backup. The organizers had to run around to find a network cable and an ethernet adapter that worked for my computer. It was a stressful situation for everyone involved. If you insist on using Google Slides and don’t need notes, export your presentation and present from a local PDF.

I’ve seen so many tech talks go south because of network issues. You risk rattling your confidence if your slides don’t work or if you have other technical issues. I went to a talk last week where the speaker had hoped to show accompanying videos, but the internet wasn’t reliable and none of the gifs or YouTube videos loaded. It broke the speaker’s stride and cadence and distracted from an excellent technical talk.

You should never expect the conference wifi to work. The quality and availability of conference wifi is a long-running joke. Don’t become the butt of it.

Photo by rawpixel on Unsplash

There are plenty of great free resources available to help you make your talk beautiful. If you decide to stick with a presentation app, Slides Carnival has plenty of beautiful templates. You can get powerful high-resolution photos to help convey your message from Unsplash for free, with credit. You can find icons on the Noun Project.

Remember to credit your source and the artists who were kind enough to spend their free time making assets for you to use. If you use a template from Deckset or Slides Carnival, try to personalize it a little bit if you have the time. You don’t want your slides being generic like the bootstrap phase of the internet, where for a while every single site looked exactly the same.

Work on making your slides look good, but battle perfectionism. It’s not about the perfect font perfect color or nudging that image 3 pixels to the right. It’s about your content. Think about it from the perspective of what your audience wants not what you want. Remember, the tools you use are up to you but consider how you want to spend your time. These days, I’d prefer to focus on crafting quality content rather than fighting with my tools.

Representing complex concepts visually makes them easier to understand.

If you’re more of a visual thinker, outline your talk topic in a mind mapping tool. I use mindmeister, an online mind mapping tool to organize my thoughts. I really like that I can drag and drop, and condense down the details to see the big picture of what I’m I’m trying to say, and make sure that the outline of what I’m presenting makes sense. Not everyone prefers to think this way, but if you do, then mind-mapping will be an excellent tool for you.

The mind map I used for outlining this talk

This is an example of a mind map that I used for planning the content of this blog post. Each one of the top level categories has multiple nodes with the general idea of what I’d like to say for each top-level topic. I was able to brain dump all my thoughts and ideas in just a few minutes, and then organize them later.

I use LucidChart to include charts, graphs, and diagrams in my presentation and for code screenshots. An example is the latest version of my Memory Management in Python talk. is also a great tool for posting code to Twitter. I’m not thrilled with this process because it’s very manual and I can no longer animate my charts. Besides for the quirks, it’s still better than fighting to get the formatting right with Keynote.

An example code image from, using the Night Owl theme by Sarah Drasner

Make sure the code samples you use in slides are syntax highlighted and easy to read. Ideally, you’ll use a tool that allows you to highlight the lines of code you’re talking about while greying out the rest. You could also step through these highlighted lines of code while you’re explaining and presenting. GitPitch calls this feature Code Presenting, and DeckSet also allows you to step through highlighted lines of code. Keep your slides and your code as simple as possible to explain the concept. Make your code slides have good contrast so that they’re easy to read from the back of the room.

If you put a link to your slides at the beginning and end of your talk, attendees can follow along and use them as a resource after the conference. Make sure you post resources where you promised to, ideally before you even give your talk. There are two popular services available for hosting slides. Slide Share is a good option if you don’t need to edit your slides after upload. It allows people to leave comments, and the links in the presentation are clickable.

Speaker Deck allows you to make edits to your slides, but your links are not clickable. In my opinion, this is a glaring omission. I’ve brought it up before as product feedback and I’ve been patiently waiting for this feature but it hasn’t been implemented yet. Until it’s available I really can’t recommend the service. People can’t leave comments on Speaker Deck, but they can favorite your slides. I like to make my slides their own valuable resource. I generally include many additional resources after the last slide I talk about, but with Speaker Deck those links aren’t clickable.

To be honest, I don’t love either service. If anyone has recommendations for other slide hosting sites, please drop me a note in the comments.

I’ve tried to post short links to my blog instead so that I can change my mind or switch services. I don’t always have time to put together a blog post before my talk but I don’t have time, especially if I’m in a rush. This year I’m planning on working on my own Python link shortener for my domain. That way I can manually change where the link points to if I need it.

In order to keep an eye out for open Calls For Proposals (CFPs), have a place where you regularly check submission deadlines. Preferably, also set up notifications and alerts. I do this with a ClickUp column with deadlines and calendar reminders synced to my personal Google Calendar. I’ll put events in this list even if I’m not currently interested in speaking, just in case I change my mind.

A column in my personal ClickUp board where I track upcoming proposal deadlines.

Schedule time on your calendar to actually work on the proposal, and if you can, try to submit it with plenty of time to spare. I procrastinate in this area, and I’ve gotten bitten before by the CFP closing as I tried to enter my proposal in with seconds to spare. The stress of potentially missing the deadline after you did all that hard work isn’t worth it.

Think about a place to keep all of your talk ideas, whether it be a notebook and a pen, a note on your phone, or something more complex like Evernote. Ideally, you’ll be able to access these notes any time and from anywhere. I get ideas for potential talks all the time and quickly jot them down. I document everything and filter for quality later. Sometimes I flip flop on an idea. Other times, I take a rejected talk idea out of the graveyard and inject it with new life.

The tools I use for this task are Google Keep and Evernote. I pay for the premium version of Evernote so that I can keep my ideas and documents offline. I use it on my phone and my computer, so I always have it with me. Evernote has excellent search capabilities, which lets me just type and brain dump, and organize and tag later.

Grammarly Premium is a tool that provides an AI-powered writing assistant to analyze your writing for style, tone, and repeated words, and incorrect idioms. It catches more mistakes than your standard spelling and grammar checker. Since English is my second language, I find it especially useful to check all of my written proposals and long-form writing. It’s pricey, but for me, the premium version is worth every penny because it’s helped me improve my writing over the long term.

When I’m feeling unmotivated or unfocused but I know I need to work on my talk, I use the Pomodoro Technique. The gist of it is you select a task you’d like to work on. Then, you give that task your undivided attention for 25 minutes. After 25 minutes, you take a five-minute break. After four sessions, you take a longer break.

I used to use a desktop app timer, but I recently switched to a physical timer that I taped to my monitor. I like this particular timer because it has an extra large display and the numbers are always lit up when it’s running. I can use it to count up or count down, and adjust the ringer volume from soft to loud.

When I’m really struggling, I use a distraction-blocking extension for chrome called StayFocused to block distracting sites like Reddit, Twitter, and Facebook. If I need to turn off distractions on my phone, I’ll use BlockSite for Android because it’ll block both the app and any browser tabs for that app, so I can’t just log into Twitter on my mobile browser to “just check one thing.” I also like that BlockSite allows you to set timers Pomodoro timers for app blocking so that you can unblock apps during your five-minute break period.

You can also turn on site blockers during a set time like during the workday, or the morning hours when I’m most productive. I make sure to close any distractions and programs that might pull me out of focus on my desktop, and turn off notifications on my phone. I close all my tabs and open just the resources that I need to work on my talk. If you can manage to work in a flow state, working on your talk won’t feel like a chore. I wrote an article about how to leverage flow state to do productive work for the pastry box project.

I use a few helpful items when I’m traveling to or at a conference. Please note that I earn a small commission if you make purchases through the links in the next few paragraphs. I only link to items I own myself or clearly state otherwise. I carry this multi-port 60W USB-C power charger that will charge my MacBook Pro and has 2 extra standard USB-A ports for charging my phone or other devices. Now I don’t have to carry multiple chargers with me. I also bring a multi-charge cable with adapters for USB-C, micro-USB, and lightning so I always have the right charger with me. I carry a Mophie USB-C power brick that’s powerful enough to charge my MacBook Pro because I tend to leave my charger up on the stage, and forget about it, or remember about it after someone else has already taken the stage. I always have a USB-C to HDMI converter in my bag in case the conference doesn’t provide one to hook up my laptop to the projector.

This is completely optional, but I prefer to use a clicker. A clicker allows me to advance to the next slide without breaking my train of thought. If I have a wireless mic, I can walk around the stage instead of being stuck in one spot.

By bringing my own, I’m already familiar with the buttons and don’t have to worry about pressing the wrong thing. I’ve had this basic Logitech clicker that’s available for under $35 for a few years. I like that it comes with a case, so I can store extra batteries in it. Other clickers in the $50 range have a countdown timer on them to help with pacing, and vibrate with silent warnings when your time is almost up. If my clicker ever breaks or gets lost, I’ll be upgrading it with this much fancier spotlight version in gold that allows you to highlight parts of your presentation with software instead of lasers. I hate laser pointers and find them distracting, so I’m glad to see that they’re being phased out.

The fancy gold clicker on my wishlist

Choose the tools that help you get work done, but don’t get caught up in finding the perfect tool for every scenario.

Continue to Part 5: Planning and Time Estimation

Skip to:

  1. Introduction — About me and my journey through technical public speaking.
  2. Choosing a Topic — Selecting a topic you’d like to speak about.
  3. Writing a Conference Proposal (or CFP) — A guide to writing and submitting conference talk proposals.
  4. Tools of the Trade — Tools for brainstorming, creating slides, time-management, and more.
  5. Planning and Time Estimation — How to plan your preparation time before the conference.
  6. Writing a Talk — Writing an engaging talk and captivating slides.
  7. Practice and Delivery — Preparing for and delivering on the big day.



Nina Zakharenko

Cloud Developer Advocate @microsoft, software engineer, pythonista, & speaker. Team #emacs. Previously @reddit @meetup @recursecenter. she/her