Skip to content

And Sometimes You Just Get Lucky

August 29, 2013
20130829-002026.jpg

(Photo credit: Northstargallery.com)

Rodney, I know you’re here to work on a problem for the IMF, but would you mind stopping by Marriott headquarters first and taking a look at an issue they have?

Ah. . .Okay. . .I guess. But, James, I really don’t have any of the background on Marriott. I’ve been working on the IMF issue for 2 months. I don’t even know where to start with Marriott. What’s their issue?

I’m not totally sure, but the head of their IT department can explain it to you. He’s held his staff late in the hopes you’d be able to stop by. We’re almost to their headquarters now.

I felt my stomach tighten up. Like there wasn’t already enough pressure having one customer with a nasty problem, now I’m being hit with a second one before we’ve barely left the airport. What do you do when you are presented with a problem that you didn’t create and that other people are expecting you to fix?

You pray like mad that you get lucky.

The year was 1993. And I was on site in Washington DC. as a member of WordPerfect’s SWAT team. We were the top of the vaunted WordPerfect support structure. We were the ones that got on a plane in the middle of the night to fly across the country because a company had an issue that needed to be handled in person.

SWAT was formed after my experience in “How I Saved the EPA (Don’t Tell Pete).” You’d think that guys who were considered the very best at what they do wouldn’t suffer from performance anxiety. You’d be wrong. My palms started to sweat every time I got on a plane.

We only got called out on issues that couldn’t be solved over the phone. That meant all the easy stuff had already been tried. Plus, the customer was paying $1500/day plus expenses. For that kind of money they expected results, and fast. And we were nearly ALWAYS under pressure to fix it right away. Often production was shut down until we could resolve the issue. That’s a lot of pressure. And if you already knew how to fix it, you wouldn’t need to go.

It was bad enough when we were headed to a site where we had already worked the issue and were familiar with what had been tried and what hadn’t worked. Now I was being asked to look at an issue cold. Not only that, but the head of IT for a major hotel chain was WAITING for me to show up.

Thanks James. James was the field engineer. He was technical, but mostly he got to work with presales issues. Lots of demos. Once the system went into production it got turned over to us. I had worked with James in the past and he was convinced that there was nothing I couldn’t fix. No pressure.
20130829-002136.jpg
As I walked into the headquarters for Marriott corporation, fortunately it was just a couple of IT guys waiting for us.

We’ve got WordPerfect Shell program and when we try to open it we get a divide by zero error. Nothing seems to work. Happens on every workstation. Doesn’t matter who’s logged in. No other error.

Ever feel like you’re taking a test that you didn’t study for? Yeah, it was kind of like that. I sat down at the keyboard and stared at the H:\ prompt. This was before the days of Windows and the graphical user interface. You know that command prompt that you can open in Windows by typing CMD? It shows you a black screen and C:\? Well, that’s what these computer looked like. WordPerfect sold a program called Shell that put a simple DOS based menu on the screen. The network was divided up into letters. Typically H:\ was a user’s home directory. M:\ was the mail directory, etc. Directories were kind of like folders.

I typed

H:\ shell.exe

Error: Divide by Zero

H:\

That didn’t help.

I was trying to decide how long I had to sit here before I could reasonably announce I had failed. Clearly I had to be here longer than the 2 minutes I’d put in so far. To stall for time, I decided to look around the network. At least it would look like I was doing something. Honestly, I had no idea even where to start on this problem. The WordPerfect Rep and the IT Director were looking at me with expectant looks on their faces. Boy where THEY in for a surprise.

To see what’s in a folder or directory you type the dir command.

H:\dir

.
. .

0 files found
2445004600 Space Available

The directory was empty, which wasn’t surprising. But the amount of free space looked odd. Back in 1993, a 20MB hard drive was considered big. Counting zeros I realized this was 2.4GB of free space. An ENORMOUS amount. My earlier anxiety started to ease replaced by the hint of an idea.

Ah. . .there’s a lot of free space on the server. Did you guys recently add a bunch of new hard drives?

No, but we’re getting ready to upgrade the servers. We’ve been going through and purging a lot of files on the network. Is that important?

Can I use your phone?

I was now in that mode that engineers and programmers enter when the rest of the world becomes an annoying distraction. The anxious feeling was gone. Presented with a technical problem, I was now intrigued. I knew two important things that the customer didn’t. First, I knew that the Shell.exe program counted up the free space available when it loaded. And, secondly I knew the phone number of the Shell programmer back in Utah.

Hey, Larry, this is Rodney Bliss from the SWAT team. I’m at a customer site and they’re getting a divide by zero error when they load Shell.

I didn’t write that error. That’s typically a stack overflow error.

Yeah, I know. I noticed that they have 2.4GB of free space. Does Shell have a maximum size it can count up to?

Hmm. . .let me check. I’ll be right back.

. . .

You’re right. Looks like we’re using an integer and that means we can hold numbers up to about 2GB.

If they had more free space than that, what would Shell do?

It would throw a divide by zero error.

Can you build a special version of Shell.exe that uses a bigger variable? It would be just for Marriott.

Yeah, that should take about 15 minutes.

Great, I’ll give you an address to FTP it to.

I finished up with Larry to see James, the WP rep and the IT guy staring at me. But this time the expectant looks had turned to amazement.

Okay, we should have a version that will work for you guys in about half an hour.

How did you know how to fix that?

Well. . .sometimes you just get lucky.

It’s been 20 years and I’m still not sure how I knew how to fix this. It’s not exactly luck. It’s that ability to look for anything out of the ordinary and then think about what you already know about the program. But, to an anxious customer it might as well be black magic, or luck.

And never underestimate how much abject terror influences your ability to find solutions.

We walked out of the Marriott offices about 25 minutes after we walked in. I was still riding that euphoric high of success. I didn’t even mind when James asked if we could make one more stop before we headed for the IMF.

Rodney M Bliss is an author, blogger and IT Consultant. He lives in Pleasant Grove, UT with his lovely wife and thirteen children.

Follow him on
Twitter (@rodneymbliss)
Facebook (www.facebook.com/rbliss)
LinkedIn (www.LinkedIn.com/in/rbliss)
or contact him at (rbliss at msn dot com)

Advertisements
8 Comments
  1. George permalink

    Hah.

    On September 30, 1990, I installed a software package on a new PC. When I attempted to start the package, it failed with the good old “divide by zero” error. It had started properly on PCs running the same version of MS-DOS, and I had no idea what was happening. Neither, as I recall, did the package’s help line.

    September 30 was the last day of the U.S. Government’s fiscal year; presently I had the COTR looking over my shoulder asking whether she should cancel the PO for this package and cut one for another. That was not the major source of stress, though. The major source was a babysitter about to leave the country for a vacation, and in need of prompt (< 5 pm) payment. I'm not sure what my boss thought, but in my view, the babysitter could not be trifled with.

    After considering what had changed between the working and non-working machines, it struck me that the new machine had a size of disk not then supported by vanilla MS-DOS, and that perhaps something in the package objected to the shim. We repartitioned the hard drive as C: and D:, reinstalled MS-DOS, installed the package, and to my intense relief it started and ran. The babysitter got her money on time.

    • Great story, George. Thanks for sharing. This is really the Y2K problem on a smaller scale. In the early days of computers no one imagined you’d have that much space.

      I remember the first hard drive my parents bought. It was 5MB and cost $5,000. It’s crazy to think that my phone has almost 1000x the storage.

      I think most programs written today have left plenty of room for expanding hard drives. (But, I’ll bet that’s what the programmers thought 20 years ago, too!)

  2. Reblogged this on Rodney M Bliss and commented:

    The best of 2013. This blog entry was the most popular piece I wrote last year. It spawned an interesting discussion with a good friend who writes (www.heartmindcode.com). Dave objected to the idea that it was luck. Maybe not, but in the moment, I sure remember feeling lucky!

    Thanks for a wonderful year, and I hope you still around through 2014 as I continue bringing you daily doses of thoughts on building effective teams and individuals.

    Happy New Year to you all.

Trackbacks & Pingbacks

  1. Luck Is Not A Factor | Heart, Mind and Code
  2. Do You Believe In Luck? | Rodney M Bliss
  3. Running Away From The Writer | Rodney M Bliss
  4. Lessons To Be Learned And Future Best Practices | Rodney M Bliss
  5. So You Want To Be A Writer | Rodney M Bliss

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: