Before assigning blame, get a mirror

Invariably, things don’t go well. You can’t help it, really. If you got everything right the first time, the world would be a very different place and everything would be a whole lot easier (and probably more boring).

But, it’s not.

I was reminded of this last week by Jeff Atwood’s The First Rule of Programming: It’s Always Your Fault where he painted a very familiar picture for anybody who has ever written code and found a problem:

You know the feeling. It’s happened to all of us at some point: you’ve pored over the code a dozen times and still can’t find a problem with it. But there’s some bug or error you can’t seem to get rid of. There just has to be something wrong with the machine you’re coding on, with the operating system you’re running under, with the tools and libraries you’re using. There just has to be!

Jeff goes on to talk about taking responsibility with your code, but really his thoughts apply spreadsheets, presentations, or any other kind of work you might be doing. He culminates his analysis with:

Whatever the problem with your software is, take ownership. Start with your code, and investigate further and further outward until you have definitive evidence of where the problem lies. If the problem lies in some other bit of code that you don’t control, you’ll not only have learned essential troubleshooting and diagnostic skills, you’ll also have an audit trail of evidence to back up your claims, too.

I love that last part. If you dig deep enough, you end up learning a lot and you have an audit trail to back you up when you go to someone else whose fault it might be.

If you try to place blame elsewhere without nit picking yourself first, you run the risk of outing yourself as an idiot who points fingers at others unjustifiably. That kind of reputation doesn’t exactly get you ahead. Do yourself a favor and get out your mirror the next time something goes wrong. You’ll learn something and have justification for looking elsewhere when you do.


Leave a Reply

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

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

Google+ photo

You are commenting using your Google+ 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 )


Connecting to %s

%d bloggers like this: