Wednesday, October 08, 2008

Debugging With A Yardstick

I was contracted with a company to implement a system (written by one of the smartest guys in the business - just ask him - he'll tell you!) for printing store signage, e.g. "Socks $2.99".

The idea was that, instead of the old system in which the main office printed signs and overnighted them to its 40+ stores, a clerk in the main office would format the signs, and then each store manager would fire up the printer every morning to automagically print them on light card stock kept in the printer's 2nd paper tray. (The enthusiasm of store managers for having yet another task piled on them, for no additional compensation, can easily be imagined.)

The system worked great at the home office, but none of the stores could get the signs to print. I spent hours on the phone talking through the procedure. We were not allowed to physically visit any of the stores since the client decided it'd be a waste of time.
ME: "You have the 2nd paper tray."
CLIENT: "Yes."
ME: "It's filled with light card stock."
CLIENT: "Yes."
ME: "The signs aren't printing."
CLIENT: "Correct."
Finally, I got a yardstick.
ME: "My printer unit is 17 inches tall. How tall is yours?"
CLIENT: "13 inches."
ME: "That means your 2nd paper tray is not attached to the bottom of your printer."
CLIENT: "It has to be attached to the bottom of the printer?"
ME: "..."
Repeat 40+ times. Eventually the system "worked".

No comments: