Pre-record your demos

Meta was in the news recently for two failed live demos:

While there were a lot of people who said they'd rather see a live demo than pre-recorded content such as Apple events nowadays, I disagree: I think most demos should be pre-recorded.

Here's one of the reasons the Meta demos failed:

There are many reasons why live demos can fail, such as:

  • Network issues (WiFi/server/proxy/certificate/etc. issues)
  • Computer setup issues if presenting from someone else's computer
  • External services going down when you need to do the demo

When Steve Jobs demoed the iPhone 4 at WWDC2010 (I was lucky enough to be in the room!), there were network issues caused by all the MiFi routers in the audience:

And if you're demoing something locally, you need to have your environment set up for the demo. Since most of the time you're demoing something you previously worked on, this prevents you from working on current stuff right up to the demo, because you're worried you might break your local setup for the demo by installing different node modules, switching to different Git branches, etc.

This is why I don't ever do live demos now at work. I use Apple's Screenshot app to do a recording beforehand, sometimes with audio if relevant, and then play this movie during my presentation. You can also choose to show mouse clicks in the recording, which helps the audience see what's going on. And when presenting from a recording, you can scrub through it, so the audience doesn't suffer through slow loading screens.

Take screenshots or screen recordings on Mac
On your Mac, take pictures or recordings of the screen using Screenshot or keyboard shortcuts.

Sure, live demos serve a purpose when showing off final, polished products at keynotes—it was cool to see Steve Jobs video call live with Jonny Ive once everyone disabled their MiFi routers. For most demos, though, I think we all save ourselves and our audience some frustration and just present a recording.