Demo Roulette

Will it work? Will it not? Design your chips, put 'em down, and spin the wheel!

Sometimes I have a story to tell that turns out quite long, and needs to be edited down aggressively to avoid being too cumbersome a post to inflict on people. This one is a simpler affair, a short telling of a very close call we had while introducing a new product in front of a large crowd at a trade show.

I am interested in writing this one though because I am interested in what you all have to tell from your own experiences. I am hoping to get some great stories of demo disasters, or maybe, like in this case, a miraculous save.

Leave a comment

In 2001, I was working for a company that made specialized hardware for verifying integrated circuits. This company built massively-parallel computer systems with thousands of small, dedicated processors, each capable only of evaluating simple, boolean expressions. The simulation of a large chip design could be partitioned into these processors, such that it could run hundreds or thousands of times faster than it would if running on an ordinary computer. It was an exotic product with an exotic price tag, typically in the millions. But big-name customers who built chips would gladly pay it, because of the incredible speedup and productivity boost it offered.

The big annual technical conference where companies preferred to make new product announcements was to be held in June in Las Vegas, and we were just squeaking out the hardware for our next-generation system in time for the show. These systems could run in one of two ways: physically connected to a customers hardware system where the product functioned as an emulator that took the place of a yet-to-be-built-chip, or as a simulation accelerator that allowed a software simulation of a chip to be executed much faster than normal.

Our product group was charged with building the simulation acceleration software for this machine, and this mode was at the time was relatively new, and not the main use model for the system. We were originally a tiny simulator company that had been bought out by this bigger hardware emulation company, because our technology was a good match for this new generation of hardware they had built.

And we had a simple and fairly new code base compared to the giant emulation software system that ran on previous generations of hardware, and so it turned out we could get our little accelerator mode running on the new hardware first. In time in fact for the conference where the new hardware would be announced, which was good since the more complex emulation software was not ready. The VP of engineering was going to reveal the new system at the show, and wanted to have a functioning demo to show the audience to prove it was not hardware ‘vaporware’.

My job at the time was to be in charge of development of the simulation accelerator runtime system for this new machine, and I was therefore chosen to go out to Las Vegas and get the product up and running for the show, and to install the very latest version of our software since it was still being written and debugged, right up to the time of the show (which is quite a typical game plan for demoing at a show, as many know)

So instead of sending a proper contingent of R&D software engineers from our headquarters in California, I was sent out alone, from our east coast outpost, to install and otherwise babysit this product for the show. We figured it would be useful to have someone from R&D there to pull the strings behind the scenes in case things went bad, the envisioned version of which my coworkers would jokingly refer to as “Ned in a Box.”

This is where I learned a lot about how trade show setup works, in Vegas at least. I had been to the show the year prior in New Orleans, and was familiar with foot-ache-inducing days of standing to present stuff and got used to the miles of distance you would routinely traverse indoors every day in these huge convention halls. I’d encountered the weird union rules about moving equipment, that prevented us from even rearranging the demo suite without calling a union worker to move things. Put up with demanding sales guys, and rude customers. But Vegas added a new twist: heat.

It is typically over 110F/43C in June in Las Vegas according to my research for this article, I needed to check because it was pretty much hotter than anything I’d ever been in, and I wanted to confirm I hadn’t exaggerated things in my memory of it. Just brief daytime periods of walking outdoors in Vegas this time of year will wilt you like a daisy in a pizza oven.

Indoor Vegas doesn’t care though, because the whole city is one big air-conditioned denial of the desert it is in. A perfectly comfortable experience, with a notable exception: Convention halls, when there is no convention going on. To save what must be an enormous amount of money keeping heat out of an empty building, convention centers don’t run the AC until just before a show starts. And when I arrived at the Las Vegas Convention Center the day before the show, they had in fact been running it, and the temp had dropped from whatever high it was at down to a cool 95F/35C.

Field service hardware engineers from our headquarters were there, unboxing our new system for the show. They greeted me sweatily, we connected up the workstation controller for the system, and I installed the latest copy of our software I had brought with me on a CD.

The software install went fine, and I could run our demo without the accelerator box. The problem though was that when we did power on the new hardware, it almost immediately flaked out and shut itself down. Because this machine was a massive, power-hungry beast. It had been scaled down a bit from its mainframe-sized predecessor, but was still Roughly the size of an apartment refrigerator, full of hot chips that really needed to be in a controlled, computer room environment.

The 90+ degree convention center was certainly not that, and the field service guys just shrugged. They said the flaky behavior was to be expected, given the heat, and it would probably be better tomorrow when the convention center reached a normal indoor temp. And also its probably not a good idea to be running this machine in this kind of heat, anyway, they cautioned. I managed to get in a successful test of our software during the brief minutes of uptime I could get before the machine went down again. I also decided to add in a startup script entry to automatically boot the demo on power-up, which later turned out to be very fortunate.

I went to bed satisfied, or as satisfied as I could be, given the new hardware we were about to announce to the world randomly shut itself down at an alarmingly frequent rate. The next day, the bigwig VP showed up, crowds filed in for the event, and all the signage and trimmings had been added to our stage. The convention hall had reached a reasonable temperature, and when I started up the accelerator hardware, it was running fine.

About an hour before showtime, I asked one of our hardware service guys if it was possible for me to be behind the machine, and unplug it and plug it back in to restart it if it crashed. This would avoid a conspicuous visit from random engineer to the front stage to cycle the power switch, which I am sure would have made for a really bad product launch demo vibe.

The hardware guys told me no, that wouldn’t work. The circuit breaker that tripped was inside the box, and you would have to take off the outer panel “skins” as we’d call them, to reset it. My heart sunk, because I just had remembered that all through our efforts of the previous day, the skins were off the machine, making it easy to access the breaker. And the field guys were handling that, while I worked on the software, so I had not even noticed.

They showed me where the circuit breaker was anyway, and also removed several screws from the outer skins, so it would be easier to slide off a panel and reset it if needed, sometime during the day.

It was showtime. We booted the machine, and the output from it was to be projected onto a huge screen, in front of a crowd of maybe a couple hundred attendees. The VP stepped on stage and began a presentation of how great this thing was. It did turn out to be a very successful product for us, but at that moment I wasn’t thinking about how great it was, I just wanted it to stay alive another half hour.

But you know what comes next. In the middle of the VPs presentation and about 5 minutes before the live demo, saw the little green light go out on the front console, and could swear I even from my spot in the crowd 50 feet away, I could hear the click of the breaker tripping. A set of company sales and marketing guys standing next to the machine on stage also noticed. They had been clued in to our hardware difficulties, and shot me a nervous look. I would like to say I couldn’t believe what was happening, but I really could. Because it had seemed almost like a certainty that the timing here would work out this way.

I skulked around in back of the stage, trying to be as inconspicuous as anyone could be climbing up onstage during a big presentation. But those sales and marketing guys had my back, because they kind of shuffled in next to each other, and stood shoulder-to-shoulder, forming a human privacy fence. I crawled behind them and slid back the side panel without removing it, just enough to blindly stuck my hand in (which was probably a super-bad idea considering there was live 220 volt power going on in there) and I reset the breaker.

The machine came back up and automatically booted the demo, thanks to my earlier addition of the auto-start script. The VP finished the presentation and switched to the live demo display, went through it without any mishaps, and received a big round of applause. I’m sure some people may have noticed the shenanigans going on in back during the presentation, but for the most part it was a pretty seamless product launch, with none the wiser about the incident. I don’t think that machine crashed again all week, and there were later changes made to improve the power system to avoid having to take it apart to reboot it.

It had come as damn close to Ned-in-a-box as you could get, but we got through that demo; the show must go on. After that, I did not have a lot to do during the show since I was not presenting anything or giving demos, so I did a bit of wandering around the casino, and won $80 playing a “Betty Boop’s Roaring ‘20s” slot machine. Which being the consummate nerd I am, spent on the “Star Trek Experience” show/ride at the Hilton. Might have been on company time even, but I felt I deserved a break, even if it was in the form of continued gambling.

Anyway that’s my tale of the Roadie life in Vegas. I’ve given countless (mostly pure software) demos since, and more than a few have been bad ones. Crashes in the very feature or fix you are showing off. Some big flaw you haven’t considered being pointed out to you by someone in front of an audience of your peers. We call it “The Law of the Demo” at work, kind of a specialized form of Murphy’s Law, because demo problems are so frequent they seem like a certainty. The Vegas one stuck out in my head though as the weirdest, and therefore best one to tell.

Let’s hear your demo story - hardware, software, or maybe not even computer-related. I’m banking on there being some better ones out there, be it weird situations, crazier last-minute antics, or spectacular fails. It’s always a gamble when playing demo roulette!

Leave a comment

Explore Further

Next Time: A little break from all these work-related stories. In the next installment of my retro-gaming series, we’ll talk about the early days of software piracy and copy protection in: Pirates of the 7 CDs!

Enjoyed this post? Why not subscribe? Get strange and nerdy tales and discussion of computer technology - past, present and future - delivered to your inbox regularly. It’s cost-free and ad-free, and you can unsubscribe any time.