DEV Community 👩‍💻👨‍💻

Cover image for Delivering a great demo
Dan Silcox
Dan Silcox

Posted on

Delivering a great demo

I've been delivering demos and presentations for about 10 years in various forms, to different types of audiences and over that time I've made a lot of mistakes, had a lot of things go wrong and also had a lot of positive experiences. I thought it might be useful to some who have maybe never done demos or only done a handful, for me to share some of my learning over that time to save you the pain of learning those things "the hard way"!

In my experience there are two main things that lead to a great demo:

1 - Know your audience

If you are delivering to a bunch of developers, that will need to be a very different type of demo than if it's aimed at, say, the marketing department or other less-techy stakeholders and it's absolutely vital that you target your audience in terms of the presentation, even if the underlying content is (mostly) the same.

For example, if you've built some tool, for developers you can mention the tech stack, the methodologies/design patterns/tooling, etc etc - but for marketing you can just talk about the functionality and not really go too much into the "magic" that makes it all work.

2 - Prepare before-hand!

It sounds obvious and we've all heard of the "5 Ps", etc! However I still see people doing demos with little to no prep wondering why it was not well received or why they felt stressed delivering it! Some top tips learned the hard way from my experiences in the past:

  • Consider pre-recording the demo, at the very least as a backup, especially if you're reliant on external factors or shared environments - I've been caught out by changes made by someone else causing my demo to fail in the past and it's frustrating and embarrassing.

  • Whether pre-recorded or live, run through the demo out loud at least twice (or as many times as it takes to feel confident and comfortable delivering it) before-hand. You might think you can just "wing it" - and you can - but it will be obvious to the audience who was "winging it" and who prepared before-hand, trust me! Note that by default I'm a "winger" and it's taken me a long time to learn that you end up with a better result out if you put more effort in.

  • If you make notes, keep them as brief bullet points / prompts, rather than reading something word-for-word - also, if you miss a section during the presentation, just move on - don't panic about going back and covering all the different parts. Again, I tend to start rambling when I'm writing notes, but I've found that by having shorter notes, I actually remember more and deliver a better presentation. I still try and make sure to write a few prompts though, so that I don't miss key information.

3 - Stay calm!

During the presentation itself, your heart might be racing and you might be rushing and panicking, but make a point of taking a deep breath and enjoying the process! By taking a breath, you buy yourself a little bit of time to think ahead.

Even if something goes wrong, most of the time people have either been there, or are patient/kind enough to accept that sometimes things happen! A product owner in one of my previous roles used to say "uh oh, someone forgot to sacrifice to the demo gods!" which helps lighten the mood and remove some of the stress and also divert the focus temporarily while you get the app working (or not!). Whatever happens, most of the time it really is not going to be the end of the world - just talk through what should have happened or show a screenshot/recording of it happening previously, if you have that option! I think that about sums up the key points, though there are no doubt countless other things to consider.

If you've got some thoughts on things I've missed, some funny horror stories or successes, or even some recorded demos you'd like to share, why not post them in the comments?

Top comments (0)

Take a look at this:

Settings

Go to your customization settings to nudge your home feed to show content more relevant to your developer experience level. 🛠