Last month, we had to move everything out of our house to have the hardwood floors refinished. It was a big job. My husband's friend Joe came over with his 4-year-old son, Jack. It was great to have help, and, as a bonus, Jack reminded me of an important lesson about decisions and routines.
Jack was helping me sweep my office as the guys got ready to move my desk out. They slid the desk onto the dolly and maneuvered it to the door.
"It's going to be a tight fit," declared Jeff, my husband.
"Oh, we'll make it," Joe said with confidence.
The desk wouldn't quite fit through the door, so Jeff took the door off its hinges to provide more clearance. It still wouldn't fit! Now the door was blocked, and there wasn't enough room to move under or climb over the desk. Jack and I were trapped in my office.
Just then, Jack announced, "I gotta go potty!"
Joe and Jeff tried to wiggle the desk around so Jack could squeeze through and make it to the bathroom.
"Can you fit through now?" Joe asked. But there was barely enough room for a kitten, let alone a 4-year-old.
"I have an idea," said Jack. "I could go through the door behind the shelf."
The door behind the shelf? I'd forgotten about the other door in my office, because I don't use it as a door anymore. Two years ago, I closed the door and put a shelf in front of it. I don't even see a door there anymore—just see the shelf.
To Jack, the door was obvious. He didn't have the history and context of turning the door into an invisible door. To him, it just looked like a door behind a shelf.
On software teams, we make decisions, develop practices, and adopt processes to solve problems within a certain context. It doesn't make sense to go back and revisit all those choices every time there's a small change; the major features of the context are still the same.
But, with an accumulation of changes, the context can shift significantly. Unfortunately, all those long-ago choices have become invisible—they've become part of the normal daily flow.
We only become aware of those choices again when there's a sudden change (and things stop working) or when someone new comes along and asks, "Why do you do it that way?"
Some companies have a process audit that checks to make sure that their processes are still achieving the results they want. Most don't. Unless teams and organizations take time to reflect on how the context has changed, they'll accumulate many invisible doors.