How to: Deliver Impactful demos. Part 1–machine prep

Part of my job involves creating and delivering technical demos / presentations with audiences ranging from small groups of individuals to large conferences / keynotes (both online and in person).  It’s something I’ve been doing for many MANY years working for Microsoft and previous companies over the years as a consultant, pre sales engineer and general all around IT guy. I firmly believe learning HOW to deliver a good technical presentation / demo is an essential skill for everyone working in IT.

I’ve seen (and created) great demos over the years.  I’ve also had demo bombs and seen some dogs where I wish the person delivering would have done some simple things to make the experience BETTER. Check out this demo Christian Beauclair and I created and delivered as part of an internal demo competition.

We came in second overall – I believe the judging was rigged!  Winking smile  but I digress…

I am finally putting pen to paper (or is that fingers to keyboard) to try to help out.

The following is in no particular order and I’m VERY interested to hear your thoughts on what could be done to improve upon the list I have below. Even if you consider yourself a demo-master-level-17-ninja, you can learn from others and their approaches to deliver demos.

Are you running the right version?

Stupid question – but believe it or not, it makes a big difference. I demo different builds of software in the development cycle – so this might apply more to this situation more so then others but step back and ask yourself: What version is the audience expecting to see and what version can I show them that will have the biggest impact? If you’ve been carrying that “demo kit” along with you for a while and it is out of date – keep it fresh.

Do you have all the right drivers installed?

Sometimes I run with a Server install on my laptop and it requires some extra driver love to get things working smoothly. I try to ensure I have all the drivers up to date, but pay particular attention to the proper VIDEO driver from the manufacturer. If you don’t have one and you are flying with the default video adapter – be prepared for a world of hurt. I also like to make my laptop functional with sound, wireless and storage drivers for ease of use. Personally I don’t go so far as to make my “server” completely like a workstation with full desktop experience – I try to keep it close to the spirit of what I talk about – which is mainly Windows Server.

Resolution and I don’t mean new years.

If you don’t have the right driver for your video card – give up now. You need the one from the manufacture, not necessarily the WHQL one from windows update. Why? The extra “tools” that will allow you to have better control of the output resolutions, refresh rates as well as control the Duplicate display or Extended display settings AND finally – the scaling settings. I run as high as a resolution as I can for work, but presenting I have to scale down to usually a 16:9 1280 x 720 resolution (also standard for HD web video). Really – you need to know your target audience and the projection / capture device and it’s inputs it accepts. GET THIS EARLY from whoever you are working with. As mentioned – I typically prep for a 1280×720 which requires SCALING on my laptop monitor otherwise I am looking at a small display with lots of black border around it. This scaling is only controlled by NVIDA driver control panel, not the default one presented in windows control panel.

Test your connections

Simple right? You got the details from your contact where you will be presenting. You did your homework, did your resolution test – but didn’t test it against a projector or external montitor. OOPS. Or maybe you need to try different outputs like HDMI, DVI, Mini-HDMI, Micro-HDMI or some other strange-Non-VGA connection. Do the test before you get to the location or before your record where possible. If it’s not – get there early and be prepared to fiddle around with things.

Cleaning up your host system Desktop.

Sounds simple once again right? Your host system display is a reflection of how you work, what you want to be perceived as and also is the initial sharing of your presentation style and personality. Based on what image and brand you are trying to convey – you have a lot of latitude to work here. You’d be surprised at how many people screw it up.

My suggestion – keep it simple and keep it clean.Minimal distractions of icons, documents and shortcuts. I remove all the things I don’t need / use to a folder off the desktop instead of the easier “hide all icons”, because most of the time I use icons on the desktop to kick off demos.

Don’t forget the nifty option of “presentation mode” on windows 7 and windows 8. It allows you to turn off things like screen shutoff, sounds alerts and set custom presentation backgrounds when you are in presentation mode. You can switch from your kids background for work to a clean “windows server” bitmap for demo mode if you like. Very handy and also keeps the system notifications to a minimum.

Pinning items to your taskbar

Need to launch a couple of apps, explorer windows, IE tabs or MMC consoles for your demo? Either have shortcuts on the desktop (see minimalist notes above on how much is too much) or have pinned icons on your taskbar.


I’ve got two tabs in IE open, Windows Explorer, LiveWriter, Remote Desktop Connections, Hyper-V manager, Services control panel applet, Advanced Firewall Settings and PowerShell ISE pinned to my demo system right now. No need to hunt and peck to find anything.

Cleaning up your taskbar

This is often overlooked. Pin the icons you need to do demos to the taskbar and remove the others. Likewise – change the system notification area to turn off notification icons like power levels, wifi / network connectivity, sound and most importantly TIME AND DATE. You can do all this in Windows 8 by choosing properties of the taskbar, clicking on the Notification Area Customize button,


Choosing to turn Icons ON or Off hyper link


And selecting OFF for all the options.


I can’t tell you how much you’ll inadvertently offend people if you have the wrong date and time in the corner if you work in multiple time zones. I find it disrespectful if someone hasn’t taken the time for this little personalization – it shows that you really don’t care enough about the whole picture of showing them something that is really only partially configured. Maybe I am going to far here – but just do it, ok?

Can you see this back there?

Set your command prompt / PowerShell prompt to as large as you can – people can’t see it if you have to ask them – so set it before you ask them, right?


I change my background command prompt to a dark gray and set a high contrast text colour.


I also set the font-size to a Consolas TrueType font and set it for 20 or 24 font size. Same goes for custom editors like PowerShell ISE or visual studio or other IDEs. Just make things bigger, better contrast and easier to look at if you are not 2 feet from the screen and attached to the keyboard. Cool thing you might not know – Powershell ISE has a “Presentation Theme” that sets a bunch of defaults that you can use. Go to Tools / Options to make the switch!


Use Zoomit, but use it well

First off – go get it from here. Once installed – PRACTICE with it please. I have seen so many people try to use it and fail horribly (ever supposed experts!). It takes practice and skill to use it well, so put some effort in. If you’re doing anything in the GUI environment – you NEED this tool or something like it in order to allow people to see things correctly in large environments. My recommendations on HOW to use it?

  • Start it up automatically before you start the demo – either by a startup group or a RunAlways policy or even a manual start in your pre-demo setup check. Just get it running!
  • Move he mouse to the location WHERE You want to zoom. SO many people DON’T do this first and end up zooming IN and having to correct – causing motion sickness for the audience.
  • When you are targeting the zoom are – press you zoom key. CTRL+1 for a static zoom with markup options or a CRTL+4 for a live zoom. I use CTRL 1 mostly personally.
  • Don’t move the mouse once you have zoomed in. CLICK the mouse button to lock the screen in place. Now you can move the mouse for emphasis options. Click and Drag for freeform line. CTRL+SHIFT for arrow (I use this one a lot). CTRL and drag for boxes, TAB and drag for ellipse or circles.
  • ESC key to get back to a live screen / non zoomed screen.

Go on – practice – you will become addicted to this little guy and will carry it on USB keys till you take your last breath.

Know where your demo files are

People don’t want to see you searching around for your demo files – put them in a simple to remember place that is easy to get to from Windows Explorer or from command prompts you are opening for your demo. Ensure all your files are there and you can quickly get to them as well as know WHICH files you will need to open for the demo.


I use c:usersrclausDemoFiles folder because it’s right off the command prompt starting point and I also create a shortcut in windows explorer to the location.

This is just the start. Have I missed anything? Does this list jog your memory so that you have thought of something else to add to the list? Comment below and share so that we can all benefit!

Don’t worry – there’s more to come. So far – we only have the machine basically prepped… stay tuned for Part #2

About author View all posts


7 CommentsLeave a comment

Warning: sizeof(): Parameter must be an array or an object that implements Countable in D:\home\site\wwwroot\wp-content\plugins\projectnami-blob-cache\project-nami-blob-cache.php on line 416

Fatal error: Uncaught WindowsAzure\Common\ServiceException: Fail: Code: 400 Value: The account being accessed does not support http. details (if any): <?xml version="1.0" encoding="utf-8"?><Error><Code>AccountRequiresHttps</Code><Message>The account being accessed does not support http. RequestId:ab5498d3-201e-0026-4e3f-f353fb000000 Time:2021-01-25T17:31:19.7122388Z</Message><AccountName>ritgcache</AccountName></Error>. in D:\home\site\wwwroot\wp-content\plugins\projectnami-blob-cache\library\WindowsAzure\Common\Internal\Http\HttpClient.php:382 Stack trace: #0 D:\home\site\wwwroot\wp-content\plugins\projectnami-blob-cache\library\WindowsAzure\Common\Internal\Http\HttpClient.php(275): WindowsAzure\Common\Internal\Http\HttpClient::throwIfError(400, 'The account bei...', '\xEF\xBB\xBF<?xml versio...', Array) #1 D:\home\site\wwwroot\wp-content\plugins\projectnami-blob-cache\library\WindowsAzure\Common\Internal\RestProxy.php(141): WindowsAzure\Common\Internal\Http\HttpClient->send(Array, Object(WindowsAzure\Common\Internal\ in D:\home\site\wwwroot\wp-content\plugins\projectnami-blob-cache\library\WindowsAzure\Common\Internal\Http\HttpClient.php on line 382