How to make a tech talk

Hud Nov 2024

(and why that's an awful title)

@opherv

source:https://www.flickr.com/photos/neocommunications/albums/72157673485431421

Dylan Beattie

Dylan Beattie is a consultant, software developer and international keynote speaker. He’s been building web applications since the 1990s, and works primarily on Microsoft .NET, HTTP APIs, UX design, and distributed systems.

 

Dylan lives and works in London and when he’s not writing code he plays guitar and writes songs.


I'm Opher

Hi!

Playing guitar for 24+ years


I'm Opher

developer @

Hi!

Programming for 26+ years

Playing guitar for 24+ years

I've given over 60 tech talks

locally and internationally

1. It's great

2. I think you should do it too

3. I want to show you how

My method for writing and delivering an amazing tech talk that will surely make you rich and famous, probably (maybe*)

 

Subtitle

* probably not, but it's still going to be a great talk!

What is a tech talk?

How do you get to actually perform one?

 

My process for creating a talk

Once you're up there - what do you do

(and more importantly - what not to do)

Why would you even want to do one?

What follows after

1. The Ordinary

2. Call to Adventure

3. Refusal of the Call

4. Meeting the Mentor

5. Crossing the Threshold

6. Tests, allies and Enemies

7. Approach

8. The Ordeal

9. The Reward

10. The Road Back

11. The Resurrection

12. Return with the Elixir

The path of doing a tech talk

Come across a speaking opportunity

Prepare CFP Materials

Submit CFP

Get accepted! (Or rejected)

Wait

Research & Write talk

Practice 

Perform

What's next?

Think up a talk idea

1. The Ordinary

2. Call to Adventure

3. Refusal of the Call

4. Meeting the Mentor

5. Crossing the Threshold

6. Tests, allies and Enemies

7. Approach

8. The Ordeal

9. The Reward

10. The Road Back

11. The Resurrection

12. Return with the Elixir

(of tech speaking)

1. The Ordinary

1. The Ordinary

2. Call to Adventure

1. The Ordinary

2. Call to Adventure

Or to be precise "Call for Papers"

Developer Avocados  Weekly

JSIsrael Meetup

Tech Daily CFP

3. Refusal of the Call

2. Call to Adventure

3. Refusal of the Call

2. Call to Adventure

or - why would you even do this to yourself

I'm not experienced enough

No thanks I'm good

I don't like to travel

I'm scared of public speaking

Why not

It seems like a lot of work

I don't have anything new or interesting to say

I don't have the time

3. Refusal of the Call

4. Meeting the Mentor

3. Refusal of the Call

4. Meeting the Mentor

in which I tell you why it's a journey worth taking

It's fun (eventually)

Promote your personal brand / Showcase your work

It feels good to be valued

Gain knowledge by giving knowledge

Personally I do it for the adventure

But why?

Improve your communication skills

About me

Over 60 tech talks blah blah blah

5. Crossing the Threshold

4. Meeting the Mentor

5. Crossing the Threshold

4. Meeting the Mentor

Stuff that's trivial to you (isn't trivial to everyone)

What do you like doing the most? (How to avoid stuff you hate)

How does your other passions help you in your day to day

Your company does things differently

What do I even talk about?

Personal triumph story / Personal failure story

You don't need to actually

make the talk before submitting!

Talk Title

a delicate balance between

wanting to be descriptive and trying to being clever

Database Security

Using Database Security Techniques to Lock Down Your Web Applications

Several Access Control and Auditing Techniques Designed to Improve Your Overall Data Security in a Web Environment

source: https://www.toolbox.com/tech/data-management/blogs/tech-talk-tip-2-whats-in-a-title-041009/

Database Security for Web Developers

Wanting to be Descriptive

"Following through with animation"

Trying to be clever

Trying to be clever

"Following through with animation"

"Staying ahead of the Pack"

"Staying ahead of the Pack"

"PackWars: Webpack vs Browserify vs SystemJS vs Require.js"

"PackWars: Webpack vs Browserify vs SystemJS vs Require.js"

"Web animations & state: The secrets for a successful relationship"

"Web animations & state: The secrets for a successful relationship"

Talk Abstract

What's in it for me?

source: https://medium.com/@dormaindrewitz/how-to-write-an-abstract-for-your-conference-talk-or-webinar-66ae959be2e6

1. Hook

2. Relevant Information

3. Takeaways and call to action

My formula for not thinking about it too much:

Pack Wars: JavaScript distribution in a galaxy far, far away

Front end development is becoming increasingly complex. In the past you could just serve your CSS, JS and image files and you were good to go. Nowadays you have Single Page Apps and modules and assets and images and libraries and frameworks and oh god what now.. Let me help you with your Analysis Paralysis. I went through all the options for modularizing, bundling and serving your code so you don’t have to. I’ll explain the problem and present current solutions like Webpack, Browserify and System.js, their use cases, their merits and their faults so you could stop worrying and start coding

Hook

Pack Wars: JavaScript distribution in a galaxy far, far away

Front end development is becoming increasingly complex. In the past you could just serve your CSS, JS and image files and you were good to go. Nowadays you have Single Page Apps and modules and assets and images and libraries and frameworks and oh god what now.. Let me help you with your Analysis Paralysis. I went through all the options for modularizing, bundling and serving your code so you don’t have to. I’ll explain the problem and present current solutions like Webpack, Browserify and System.js, their use cases, their merits and their faults so you could stop worrying and start coding

Relevant Information

Pack Wars: JavaScript distribution in a galaxy far, far away

Front end development is becoming increasingly complex. In the past you could just serve your CSS, JS and image files and you were good to go. Nowadays you have Single Page Apps and modules and assets and images and libraries and frameworks and oh god what now.. Let me help you with your Analysis Paralysis. I went through all the options for modularizing, bundling and serving your code so you don’t have to. I’ll explain the problem and present current solutions like Webpack, Browserify and System.js, their use cases, their merits and their faults so you could stop worrying and start coding

CTA

Wait, you can do that with JavaScript…!?

In 98’ I made my first webpage, which leveraged JavaScript to annoy visitors with blinking text animations. 20 years later I developed a film entirely in JS, which debuted in the Tribeca Film Festival. You can do so much with the browser today: Procedural art, interactive VR, physical simulation, real-time multiplayer games - and that’s just the tip of the iceberg. In this talk I want to take you a step further beyond sites and Web Apps. Perhaps your next project could push the envelope of the web as we know it?

Wait, you can do that with JavaScript…!?

In 98’ I made my first webpage, which leveraged JavaScript to annoy visitors with blinking text animations. 20 years later I developed a film entirely in JS, which debuted in the Tribeca Film Festival. You can do so much with the browser today: Procedural art, interactive VR, physical simulation, real-time multiplayer games - and that’s just the tip of the iceberg. In this talk I want to take you a step further beyond sites and Web Apps. Perhaps your next project could push the envelope of the web as we know it?

Wait, you can do that with JavaScript…!?

In 98’ I made my first webpage, which leveraged JavaScript to annoy visitors with blinking text animations. 20 years later I developed a film entirely in JS, which debuted in the Tribeca Film Festival. You can do so much with the browser today: Procedural art, interactive VR, physical simulation, real-time multiplayer games - and that’s just the tip of the iceberg. In this talk I want to take you a step further beyond sites and Web Apps. Perhaps your next project could push the envelope of the web as we know it?

Wait, you can do that with JavaScript…!?

In 98’ I made my first webpage, which leveraged JavaScript to annoy visitors with blinking text animations. 20 years later I developed a film entirely in JS, which debuted in the Tribeca Film Festival. You can do so much with the browser today: Procedural art, interactive VR, physical simulation, real-time multiplayer games - and that’s just the tip of the iceberg. In this talk I want to take you a step further beyond sites and Web Apps. Perhaps your next project could push the envelope of the web as we know it?

Spoiler: Reviewers probably

don't read your abstracts

Which talks gets picked?

a delicate balance between

wanting to be descriptive and trying to being clever

interesting and relevant abstract

luck

You also need to convince people to come and see it

Not just the event organizers

5. Crossing the Threshold

6. Tests, allies and Enemies

5. Crossing the Threshold

6. Tests, allies and Enemies

or - now you have to actually research & write the thing

Ask yourself:

Why is this a talk

and not a blog post?

the narrative

It's all about

Different types of stories

personal story

following a metaphore

"stand up routine"

and more!

vs

Theme

Content

source: https://www.michaelbromley.co.uk/blog/what-makes-a-good-tech-talk/

"Wait, you can do that with JavaScript...!"

My personal journey with Javascript

"Pack Wars: JavaScript distribution in a galaxy far, far away"

Building the Death Star with Web Technology

"Web sites are basically video games waiting to happen"

Comparing video games and websites

How do I come up with this stuff?

Get inspired

Steps to create a talk

Ideation

Research

Focus and narrow down

Composing takeways

Creating the talk skeleton

Slide content / design

Practice

Delivery

Create your own

Sourdough starter

Steps to create a talk

Ideation

Research

Focus and narrow down

Composing takeways

Creating the talk skeleton

Slide content / design

Practice

Delivery

Happens in the 

starter doc

Subset of a talk skeleton

The talk doesn't happen here

<--- It happens there

You will get stuck.

Focus on moving forward (productively)

Pick a tiny thing that makes you happy and do it

7. The Approach

6. Tests, allies and Enemies

7. The Approach

6. Tests, allies and Enemies

You have the slides. Now what?

Presenting the talk

The hardware

Computer + Charger

HDMI Dongle

Podium

Clicker

Water Bottle

https://pantmonger.artstation.com/projects/L624K

Computer

Computer

Computer

Presentation

Computer

Clicker

Computer

Monitor

Podium

Computer

Mic & Pack

Lightning round!

Bits and pieces about writing and giving talks

Demos

If they can, they should be in the presentation

Otherwise, practice the switch

Close ANYTHING that has notifications

WhatsApp, Skype, Gmail etc

  • Mostly they are incomprehensible
  • A well of text that's displayed at once
  • Nobody is going to read all that text
  • And yet oftentimes a speaker will read them out from the screen
  • Remember this is a talk not a PDF
  • (Unless it's an actual list, a summary or something else that's succinct)
  • Even there you're probably better off breaking those into different slides

Don't treat bullet lists as a default

Presenting code

if (!EkoPlayer.isSupported()) {
    alert('Eko is not supported on current environment');
}
let ekoPlayer = new EkoPlayer('#myContainer', '1.0');
ekoPlayer.load('AWLLK1', {
    params: {
        autoplay: false,
        clearcheckpoints: true,
        debug: true
    },
    events: ['nodestart', 'nodeend', 'playing', 'pause'],
    cover: '#myCoverId',
    iframeAttributes: { title: 'My Eko Player' }
});
ekoPlayer.invoke('seek', 'myNodeId', 10); 

 

// a useful comment
if (!EkoPlayer.isSupported()) {
    alert('Eko is not supported on current environment');
}


let ekoPlayer = new EkoPlayer('#myContainer', '1.0');

// maybe another useful comment
ekoPlayer.load('AWLLK1', {
    params: {
        autoplay: false,
        clearcheckpoints: true,
        debug: true
    },
    events: ['nodestart', 'nodeend', 'playing', 'pause'],
    cover: '#myCoverId',
    iframeAttributes: { title: 'My Eko Player' }
});

// ok it's hard to write useful comments just pretend they are
ekoPlayer.invoke('seek', 'myNodeId', 10);
// a useful comment
if (!EkoPlayer.isSupported()) {
    alert('Eko is not supported on current environment');
}


let ekoPlayer = new EkoPlayer('#myContainer', '1.0');

// maybe another useful comment
ekoPlayer.load('AWLLK1', {
    params: {
        autoplay: false,
        clearcheckpoints: true,
        debug: true
    },
    events: ['nodestart', 'nodeend', 'playing', 'pause'],
    cover: '#myCoverId',
    iframeAttributes: { title: 'My Eko Player' }
});

// ok it's hard to write useful comments just pretend they are
ekoPlayer.invoke('seek', 'myNodeId', 10);

Live coding

Don't.

All assets that can be offline

should be offline

Practice!

With yourself

With someone non-technical

(even though they're not going to like it)

Stuff will go wrong. It's fine.

Remember - everyone's rooting for you

7. The Approach

8. The Ordeal

7. The Approach

8. The Ordeal

It's showtime

Honestly, the hard part's behind you

Some general do's and dont's

If for some reason there's a lot of text in the slide. Don't read verbatim from the screen. It feels like it's either you assume people can't read, which is insulting, or they can, and then for some reason you want them to read with you like kind of a weird sing-along. It's not a sing-along. It's a talk. Who should the audience be paying attention to, you, or your presentation? That's quite disorienting. You see where I'm going with this...

Don't try to picture the audience naked

Don’t worry about slide design

Be careful with using AI

Don’t point your finger at the screen

We need to talk about

the elephant in the room.

It's okay to pause

9. The Reward

8. The Ordeal

9. The Reward

8. The Ordeal

Phew! You're done

9. The Reward

10. The Ressurection

9. The Reward

10. The Ressurection

Why not - revisited

I don't have anything new or interesting to say

You could and should have said more

I'm not experienced enough

You are now

I'm scared of public speaking

And yet you've pulled through

It seems like a lot of work

It was - but now you have a presentation ready for next time!

It's okay to repeat talks

a band doesn't write songs for just one concert

11. The Road back Home

10. The Ressurection

11. The Road back Home

10. The Ressurection

Hey this was actually fun

Where to find CFPs

Developer Avocados 🥑 Weekly
Tech Daily CFP (Twitter)
https://confs.tech/
https://www.cfpland.com/

How to get better

https://www.michaelbromley.co.uk/blog/what-makes-a-good-tech-talk/
https://x-team.com/blog/write-a-great-tech-talk/

https://codeburst.io/giving-a-tech-talk-how-to-have-fun-and-not-die-9c909dcd0b16
https://www.helenanderson.co.nz/rock-first-tech-talk/

11. The Road back Home

12. Return with the Elixir

11. The Road back Home

12. Return with the Elixir

You've made it - now let's that all over again

Thanks and good luck!

@opherv

Questions?

Copy of How to make a tech talk (and why that's an awful title)

By Opher Vishnia

Copy of How to make a tech talk (and why that's an awful title)

  • 23