Tuesday, December 05, 2006

Bothered and Bewildered

Straight from the "I Just Don't Get It" file.

I've spent a good chunk of time over the last couple of days trying to figure out a bug in the new scripts for the JakesWrestling.com site. One of the new features that Jake wanted this year was an area where he could upload files for his users that would be protected by the same subscription model which protects the rest of the site. This I managed to do.

He has the ability to upload files and give them a tag which will determine where his users find the files. In this case he either tags it as a "Bracket" file (such as a single-elimination competition bracket -- think about the NCAA Basketball play-off brackets and you'll get the idea) or a "Normal" file, which could be anything else -- a schedule of events, a map to a location, or even his world-famous recipe for barbecue ribs.

The problem is, those tags weren't assigning themselves correctly when he used the system.

I checked and double-checked my code. I verified that he was following the correct procedure. I even followed the exact same steps as he did, including using the same files in the same order. It always worked for me. It continued to fail for him. I finally came up with a work-around which avoids the situation entirely. It solves the immediate issue, but, as a programmer, it is vastly unsatisfying.

Here's the rub: Unless I can actually get my hands on his particular machine, I may never solve the problem. Computers have become so complex and the individual software components can interact in such odd and occasionally unexpected ways, that to exactly duplicate his situation is an exercise in futility. Unfortunately, without that exact duplication, I can only approximate the interacting systems involved. Most of the time this is sufficient, but sometimes you just have to go to the source.

So, when was the last time you said "Huh, that should have worked" at your job?

27 days.

No comments: