What are you going to do about it?

About three years ago my boss asked me a question that changed the way I approach problems today. In a sense it’s super obvious, but somehow we don’t ask it often enough.

It was about three years ago. I just moved up to the VP of Engineering position at Cloud9 IDE, and we were having a rough time with keeping the site running. Sometimes a few nights a week I would get a 2 a.m. call because the system was down and needed to be fixed. I spent many sleepless nights under high pressure, and I found it immensely frustrating. I felt victimized, and often felt others in the company didn’t feel the same responsibility I did to stick around and fix problems until completion.

At some point I sent an elaborate complaining email to everybody in the company. This was wrong, and that, and that, and I hadn’t slept in weeks, why did nobody else care?

A few hours after sending the email I got a call from the CEO. He told me he was surprised about my email. He understood that I didn’t feel too happy, but he was wondering what I hoped to accomplish with the email. Did I think this would magically make the system more stable, or make people feel more responsible about keeping the system up? Obviously, that wasn’t a likely outcome. “If anybody can do anything about it, it’s you — you’re the VP of Engineering.” and there it was: “So, what are you going to do about it?”

He was so right. Both my complaints (stability problems and the attitude of people) were 100% my responsibility. If I couldn’t fix them, I was in the wrong position. What really happened here is that I faced a problem and chose to complain about it, rather than figure out a way to fix it.

Of course, not every problem is created equal. Some problems simply aren’t worth fixing. When I say “worth” I don’t mean they don’t matter, but potentially that the investment in fixing them may not be proportional to the improvement fixing them will bring. For instance, if it annoys you that some user interface element doesn’t span the full height of the screen, that’s potentially worth adjusting. However, if it turns out that doing so will require rewriting loads of code and implementing the fix make take a week — is it still worth it? The trick is to estimate the effortrequired and balancing that against the value it brings before making a decision.

After crossing all non-worthy problems from the list, what’s left are problems that are worth fixing. You can categorize these into two groups:

  1. Ones you cannot do much about, realistically. World hunger. Politics. The weather. Bugs in Windows. You could argue that sure, you can make some difference. You can travel the world handing out food. You can become a politician and fix democracy. You can become a weather man. You can go work at Microsoft. But realistically — you won’t.
  2. Ones within your “sphere of influence”, that is: those you have the power to fix directly yourself, or indirectly by influencing others.

Do not underestimate your own influence — chances are you can fix more problems than you think.

While many problems fall into the second category, in practice we tend to dismiss or ignore that fact and complain about them instead. Sometimes it’s because we don’t realize we can actually solve them, or even we’re the ones responsible for solving them. Sometimes it’s because complaining is just so much easier.

As I’ve grown aware of this, I see this pattern pop all over the place. For instance, have you ever heard developers complain about performance, or quality of their code base? Or QA people who complain about the volatility or lack of tests? When you think of it — it’s rather hilarious, but it happens a lot. It’s like a cook complaining about the taste of his own food. Dude, you made it.

Often, the source of the problem is a lack of responsibility. This is especially strong when people take over other people’s work, like inheriting a code base. Everything is blamed on the predecessor. That’s defensible for a little while, but it’s an argument with an expiry date. Face it: you own this stuff now, if you don’t fix it, nobody will.

What are you going to do about it?

So… you’re figured out you’re going to do something about it. That’s great. Congratulations. Now, how do you do that?

Pretty simple, really:

  1. Understand the problem. Sometimes you sense something is wrong, but you don’t really know what. Get to the root of the problem. Use techniques like the 5 whys as required.
  2. “Vision” the outcome. In an ideal world, how would things be? Be more specific than “stuff wouldn’t be shit.”
  3. Create a step-by-step plan of how to get from today’s situation to the world where things are as they should be. Don’t say it’s not possible. Everything is possible. When you believe.
  4. Execute the plan.

Sounds obvious? It is.

Why do so many complain rather than actively working towards making things better? Why do we always hope or assume somebody else is going to fix it for us? Or worse: why do we believe that the problem simply isn’t fixable?

Complaining is easy, and perhaps even fun — doing something about it is actually valuable.

So next time, when you’re about to complain about something, ask yourself: Can I do something about this myself, is this problem within my sphere of influence? (Most likely answer: yes.) And if so: shouldn’t I actually act on the problem rather than complain about it? (Most likely answer: yes.)