We Can't See the Trees for the Forest

There's an expression in English that says, "You can't see the forest for the trees." It means you are too focused on the details and not seeing the big picture. In software engineering, my experience tells me that we actually have the opposite problem.
Undated archive photo of lumberjacks with a 12 foot long saw, gathering around and atop a log as tall as the lumberjacks.
Photo by The Oregon State University Collections and Archives / Unsplash

There's an expression in English that says, "You can't see the forest for the trees." It means you are too focused on the details and not seeing the big picture.

In software engineering, my experience tells me that we actually have the opposite problem. We see the big picture abstraction while overlooking the details. We can't see the trees for the forest!

Here's what I mean. My teams host office hours several times a week. Engineers from other teams bring code to office hours for feedback and advice. Quite frequently, folks bring us solutions to problems they don't have. Or rather, they bring general purpose code that has exactly one use case in the application.

In other words, we (and I use that word intentionally) have a tendency in our industry to jump to generalized solutions even when the requirements in front of us only include one use case. I've done this personally. And, I've seen many other engineers do this. We're so driven to provide an elegant solution to ALL the problems that we often overlook the quick, dumb solution to the problem at hand.

And, the temptation gets worse and worse the more instances of the problem at hand we can identify up front. Adding a second instance increases our likelihood of generating a generalized solution by 100%. A third, 300%.

It's like someone asked us to cut down a tree, and we go design and build a contraption that can cut down an entire forest at once. It's like we cannot see the trees for the forest.

Stop that.

Just cut down the damn tree.

Subscribe to our occasional newsletter

No spam, no sharing to third party. Only you and me.

Member discussion