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.
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!
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.
(This story isn't quite of a demo, but more as an operator for a slide show. It doesn't have any great payoff, but I suppose is more of a case of dealing with old, crummy hardware.)
So there I was, on a Military base as "the tech guy". I was called away from my normal job of helping to maintain a Sharepoint server and handle a few basic SQL scripts, to do the ever-important task of clicking a button on a laptop to navigate through slide shows on an ancient laptop once a week. Now, to be fair, this job was actually kind of cool in a way. It wasn't JUST clicking a button. It also involved setting up a VOIP Teleconference with a base in a different timezone, so their important people could talk to our important people about important things. Since I had to click the button and had the proper authorizations, I got to hear them discuss these important things and hear their opinions about those things. Neat!
Now, when I say this laptop was ancient, I guess it would be fairer to say that it was "stunningly low performance". I had seen a few laptops older than this one - for example, I once ran across a laptop running Windows ME in a time where we had all of our systems upgraded to Windows 7 - the Military seems to have this weird habit of never getting rid of anything, doubly so for stuff that "looks expensive". This slideshow laptop I was required to operate wasn't quite that old, but I was positive that the hard drive was a few months away from failing. It was a hand-me-down of a hand-me-down. The lid had material stickers, asset tags, and hardware tracking information from all over the place with various commands (organizations, not computer commands) marked, struck out, and remarked. Far be it for a low-ranking enlisted person to decide what sort of hardware is being used in the presence of officers who had been in the military for 30+ years, but one would think someone, somewhere could have gotten these guys something a bit less...horrible. Maybe no one bothered because they weren't the ones who had to log in to it. Maybe they were just afraid of messing up the fancy carpet in the conference room. Who knows. Whatever the case, that thing wasn't due for an upgrade anytime soon and I had no authority to make that happen.
Anyway, back to the slide show. My routine went something like this: Turn the power on, wait about 25 minutes for the login screen, begin typing login information while compensating for the typing lag, login, wait 15 to 20 minutes or so for it to load XP (setup VOIP in the meantime and chitchat with the other low ranking person to assess their hardware situation), launch Windows Explorer and wait a few minutes for it to open, find the presentation and open it waiting another 8 to 10 minutes. All told, I tried to get there at least 1 to 1.5 hours early to get everything prepped in time. 99% of the time, this was completely fine.
One time, it was not.
This poor officer. He was early in his career, probably just got promoted, and was clearly excited for this meeting. He had walked in about 20 minutes before the meeting was set to start. It was extremely abnormal for anyone else to be there that early because these guys were usually strolling in about 30 seconds beforehand because the schedules of these guys were so tight they didn't have a lot of time to sit around and prep, at least not in that room they didn't. This usually also gave me enough time to get everything ready to go. Well, this particular officer wanted to do a dry run before he had to present. I was fairly close to ready by the time he had gotten there, but the thing is, he didn't just want to prep, he wanted everything TIMED. He wanted synchronization. He informed me that he would give a hand signal and I would go to the next slide immediately without delay. I tried to tell him what the situation was, but he was a bit too nervous to really accept what I was telling him. He would wave his hand, I would hit the button, and we would wait. And wait. And wait. I counted it out in my head, it was easily a 15, 20, 30-second delay. The first time he didn't comment. The next time he grew annoyed. The third time he waved his hand, then watched me hit the button, looked back at the screen, and waited. And waited. By the last slide - right as he gave up - everyone filed in. Again, the delay loading back to the beginning of the slideshow meant his "big finale" was the first thing everyone saw as they started to file in and sat down. They looked at me confused, then at him, then at me, and shrugged. The officer sighed and made some comment about why the computer in here was so bad. No one paid him any mind. Towards the end he went through his routine, would say something like, "NE-EXT SLIDE...PLEASE!" and carry on with his presentation.
After the whole thing was over, I seem to recall one of the gruffer senior enlisted giving him a pep talk after everyone had filed out. I carried on with my 25-minute logout process (leaving a computer unattended was a big no-no) and feined deafness until they both left.