Friday, January 28, 2005

My Problem, Like It Or Not

Have you ever been assigned a task that you just hate?

What if, however, this task is actually your job?

For instance, you are given a problem that is so hard to solve that you honestly believe you'll never solve it.

This happened to me recently. I'm a software developer, and I was assigned to fix a bug in code I didn't write, which was using (or mis-using) a third-party library which I was not expert in. Our code was somehow making the third-party code misbehave. My thoughts were "I'll never solve this. I can't be methodical because I don't even have a method. I'd rather work on stuff I know I can do, rather than be set up to fail like this. My career is going nowhere fast, because I get tasks like this to work on."

I had several choices:

  1. Whine to my manager.
  2. Keep wishing this wasn't my problem.
  3. Take time learning more about the third-party library just to find out how it might be misused.
  4. Start stepping through our code in a debugger, with no clue as to where it might be doing something wrong.
  5. Ask for help.

I eventually chose 5. It wasn't easy. But the result was I got some fine suggestions from my coworkers, and my manager thanked me for not wasting more time banging my head against the wall.

It was hard to ask for help. But what made it so hard? Just what is this self-defeating macho attitude made of?

  1. Fear of exposing my lack of knowledge.
  2. Fear of exposing how much time I'd spent frustrated already.
  3. The never-ending hope that I'd just find the solution and not have to admit failure at all.
  4. The desire to carry my own weight, and not burden my coworkers.

While #4 is often a good thing, the first three things can really get you into trouble. #4 is what I would call a form of pride.

The first three are what I think most people would label as pride, and they certainly do cometh before a fall.

How do we avoid such falls? By caring more about finding the solution than about looking like you found it all by yourself.

By caring more about the problem than about your image.

By caring more about the content of the solution than about the form in which it comes.