Thanks to Paul Yao for uploading photos from TechEd to Facebook (images below).
You've probably sat through a ton of conference sessions, and have seen the speaker (or demo monkey) do his thing, and amazingly (most of the time) everything works! - Here's a peek behind the scenes of my Architect panel session demo at TechEd 2008 Developers.
Step 1 - Make sure your demos actually work (typically spending time in the speaker room running through the demos the morning of your session) - the alternative is to spend all night in your hotel room with other speakers (who are working on getting their demos working), ordering room service (double espresso typically works - although getting sleep afterwards isn't so easy) - this always seems to happen at TechEd!
Step 2 - Show the hardware and the software you are using for the demo, explain how the demo is going to work, and the problem you are solving.
Step 3 - Hit "Deploy" (or run, or debug, or whatever), now wave your hands in typical magic show fashion, to distract the audience from what's really happening!
Step 4 - Hope that the demo gods are with you today! - Look at the screen, mumble something appropriate while code is (hopefully) deployed.
Step 5 - The distributed services are deployed to each of the nodes on the network - some UI is up on the screen... looking good.
Step 6 - And.... it works! - Now its time to bask in the glory of a running demo!
Its as easy as that! - or is it?
Oh, and to give you a feel for the amount of time needed to get the TechEd distributed services demo up and running, I needed to write three Robotics Studio Services (a Phidgets service, UI Dashboard service, and an XML Web Services 'service'), and the Visual Programming Language application diagram - I also needed to build a demo laptop (o/s + tools), and create a Windows XP Embedded operating system image to run on the distributed nodes.
Total demo prep time was roughly four days from start to finish - total demo time, about 10 minutes. Note that the purpose of the demo wasn't to show how to build an XPE image, or how to write MSRS services, but to show how a services based programming model (CCR/DSS) can be used to easily build distributed systems based on Windows CE or Windows XP Embedded.
I've received a number of comments over the years about demos I've delivered, the comments go something like "you make it look too easy", or "its never that easy when you try it for yourself" - Its worth thinking about the purpose of a demo, here's a random stream of thoughts about demos.
Do you have any examples of demos you thought worked really well, or examples of demos that either failed to work or seemed pointless?