Archive for April, 2010

Favorite Bugs


I was watching the movie “Raiders of the Lost Ark” the other day and it reminded me of one of the first (and favorite) software bugs I ever found. “Raiders” features John Rhys-Davies in one of my favorite roles, the character Sallah.

One of the first projects I worked on as a green tester was a customer-facing inventory kiosk for a major book chain. I wouldn’t say I knew what I was doing at the time as I hadn’t yet honed my skills but I knew enough to try a few things to see how it would react.

One of the functions of this particular piece of software was the ability to look up in-store inventory based on various search criteria such as Author, Title, ISBN, etc. I chose to run a simple search for “John Rhys-Davies”.

So I entered the name and clicked “Search”. Lo and behold I killed the system. Not just this kiosk but the whole system went offline. If this had been production I would have brought down every kiosk in every store nationwide.

Now being green to testing I didn’t know why this particular search killed the system but I quickly learned the reason. The system had a real hard time dealing with special characters. The hyphenated name “John Rhys-Davies” brought this to our attention.

Shortly after finding the issue I printed out a photo of “John Rhys-Davies” and captioned him “The Patron Saint of Software Testing”. That photo remained on my desk for 10 years as a reminder (and a great topic of discussion).

My second favorite bug was found on the very same system. The company had decided to add a printing feature so customers could print out title information and shelf locations within the store.

I wasn’t technically on the project but the kiosk was in our QA lab and I had some time. So I went up to it and ran a search (probably John Rhys-Davies!). Once the search was returned I clicked the “print” icon.

The kiosk had been outfitted with a small thermal printer the kind you might find on a cash register. My expectation of the printer was it would print the information on a small 3×5 sheet. But when I clicked “print” that’s not quite what happened.

What happened was a 2 foot long sheet of paper shot passed my neck at about 100mph and landed 6 feet behind me! Surprisingly it contained the correct information, but it could have resulted in a nasty paper cut to my neck. Since it didn’t cause injury I just busted out laughing. One problem though, no one else witnessed it.

I made sure I could recreate the issue a few more times before calling my boss in to see the cool new bug. I didn’t tell him what it was I just said “You have to see this!” And when he did, he too about fell out of his chair laughing. He actually called the CIO down to the lab to witness it. After the CIO stopped laughing he calmly stated, “This is not going into my stores.” The issue, it turns out, was an incorrect driver for the printer.

I’m sure everybody has a favorite bug or two. What’s yours?

Insatiable Curiosity


A long time ago, in house in the middle of nowhere, Michigan my parents finally relented to the pressure I was putting on them to buy an Atari 2600 for me. All my friends had one and you can’t get good at the games by playing against them for an hour at their house. So I kept bugging them and it finally paid off, sort of.

What I got was the Sears equivalent of the 2600. But hey, it looked similar and played all the games so I was happy. It came with the game Space Invaders, one of my favorites, and played for hours. But like all things the novelty wore off in time.

Then something happened. I got bored with the game. I mean, it doesn’t really change that much and once you figure out the patterns it gets pretty easy. Sure the aliens keep coming at you faster and faster while you still move at the same pace and can only shoot one missile at a time, but it’s the same thing over and over. It was at this time my attention turned to the console itself.

Not really sure what I was doing I just started playing with the on/off and reset buttons. What happens if I switch the console on and off repeatedly? Let’s find out!

What happened was a wondrous thing! After a few attempts goofing around with the on/off switch I noticed that now, instead of one missile, I could fire two at a time! SCORE! The game all of a sudden became interesting again and I could reach high scores I had only dreamed about.

So what next? Let’s try it with the Pac-Man game. Same procedure, different game cartridge. What will happen? I have no idea, let us find out. Well guess what? I found you could make yourself immune to the ghosts that were your enemies. In fact you became a ghost-of-a-Pac-Man yourself. Slightly transparent, immune to attack and able to rack up points. Just don’t enter the tunnel, it had turned into a black hole that would throw you out of the tunnel on the opposite end that you went into and right back in. Forever. Game over.

So I guess that insatiable curiosity that manifested in me at a young age has guided my life and career. I taught myself to play the guitar at age 16 just to see if I could do it. Now when I play guitar I might hear a piece of music in a style I’ve never played before and instead of trying to learn the piece, I try to write an original composition in the same style. Just to see if I can do it. I’ve learned I get a lot more out of this than just copying what someone else has already written.

Somewhere along my lifeline I fell into Software Testing. I jumped in with no real knowledge of the craft but I had that insatiable curiosity within me. Give me an application. Give an idea of what it’s supposed to do and I’ll jump on it. Not only will I prove it does what it’s supposed to do but I’ll click the on/off switch repeatedly to see if I can make it do something unintended.