What You Ignore Can Hurt Your Project

[article]
Summary:
What you don't know may hurt you, but so can what you ignore. Peter Harris explains how to find and prevent big problems on any kind of project as well as showing how you can fix many of your worst problems before they materialize.

What are you ignoring right now, this minute, while you read this? I know that it's bugging you. Other things seem more important, and it’s more comfortable just to ignore it.

What you don't know may hurt you, but so can what you ignore.

I’m going to explain how to find and prevent big problems on any kind of project. Additionally, I'm going to show how you can fix many of your worst problems before they materialize just by figuring out what you're ignoring and then doing something about it.

Even in the agile world, with our emphasis on teamwork, collaboration and good communication, human nature leads us to ignore things. Attending to what you’re ignoring isn’t quite as simple as it sounds, since there are two mutually reinforcing mechanisms at work. First, urgent tasks and interruptions keep appearing, piling up on top of each other until there are too many of them to keep track of. Tasks such as responding to support issues, fixing bugs in the current iteration, or answering your boss’ emailed questions. Second, most of us have things we don’t like to do or that make us uncomfortable, and we’ve become experts at putting them off. Things such as calling a difficult stake-holder or writing necessary documentation.

We use the barrage of incoming, urgent tasks to conveniently bury those we don’t want to face, and the fact that some of the work we’re ignoring is unpleasant tends to keep us from addressing any of it.

I’ve seen or been a part of teams where ignorance led to the following:

    • “The production environment isn't set up yet,” became “The product launch is next week, and we've never done a full install in production.”
    • “The help and FAQ pages are empty,” became “The support lines are flooded with calls and emails.”
    • “The build produces no errors and only seventy-eight warnings” became “The product crashes when the best customer uses her very favorite feature for the first time.”
    • “John created a new entity framework file because he didn't want to bother everyone with all the changes he was making to the database,” became “John left for another job, and Joan discovered 10,000 lines of spaghetti that need to be rewritten before release.”
    • “Linda’s been saying her code ‘will be ready in just a few days’ since last month,” became “Linda’s feature missed the release because she was in over her head and was afraid to ask for help.”
    • “Sam's been coming in a bit later each week for two months, but he's one of the best programmers,” became “Sam was bored and left to open a tattoo parlor.”
    • “The super-whiz-bang service hangs every once in a while,” became “Under real-world stresses, the timing bug proved that the whole super-whiz-bang approach won't work at all. It's too late to fix, so senior management pulls the plug.”

So, what can you do about problems you are ignoring?

1. Recognize that you're ignoring something.
Here are a few ways that I recognize something I've been ignoring:

One way that I recognize something I've been ignoring is when it bites me. If all else fails, trouble is a terrific way to get one’s attention. Once that something gets my attention, I can put it on my list of things to pay attention to in the future.

Another way I’ve used is to think about things that I've ignored in the past. I'm pretty consistent. If I've ignored it before, and I haven't done anything special, I'll most likely ignore it again.

Here’s a third way I’ve discovered I’m ignoring a problem: When someone

Tags: 

About the author

Peter Harris's picture Peter Harris

Peter Harris is an independent software architect specializing in the design and implementation of solutions to complicated problems. He is a working architect, helping teams build software. Peter has helped many teams improve their software creation and maintenance, whether they are agile or more traditional. He is a strong believer in using the power of thinking of at least three ways to solve a problem. Contact him at pharris@peteroharris.com.

AgileConnection is one of the growing communities of the TechWell network.

Featuring fresh, insightful stories, TechWell.com is the place to go for what is happening in software development and delivery.  Join the conversation now!