New wheels

“There’s no need to reinvent the wheel."

We engineers hear this criticism all the time. This is usually advice offered up by an outside party, a code reviewer, a manager, or a late collaborator. This is not typically expressed by the author themselves; it is not an initial “design decision”, but almost always applied to a solution post facto.

It is dangerously seductive advice. It is a statement that almost anyone can make about anything, and unless you are prepared to argue on behalf of your own brilliance and originality, there is no defense. It forces the author to “argue a negative”, that no, this is not reinventing the wheel because I can guarantee this has never been done before. This is an impossible task.

What is especially insidious is that this criticism appears at first glance to be technical, engineering advice. It implies that the engineer will not be able to implement a technology as well on zher first try as someone else who has done it before, in the past, and that the superior technical design decision is to use previously validated technology.

But the truth is that this is actually business advice. It concerns the allocation of engineering resources. It says, “Don’t waste time rewriting something that has already been written.”

What the advice giver overlooks is that we want to reinvent the wheel. I mean, think about it: how awesome would it be to invent the wheel? From scratch? We’re engineers. That’s an engineer’s wet dream. Who cares if someone else did it first. More than one person has climbed every mountain.

From a purely creative perspective, all of us want to make what we want to make. Whether or not anyone has ever made something that maybe-kind-of looks like it before is immaterial. And when you bring us up short and force us to consider things like “waste” and “duplication of effort” and “relative value”, the purity of our creative process is impinged.

It is only by suppressing our creative engineering instincts and allowing “impurities” like maturity and business savvy to peek through do we acquiesce that, yes, we understand why reinventing a wheel would not be in the best interests of the business.

But the fact that maybe someone else has done something similar out on the Internet does not in any way mitigate the value of doing it ourselves. And now we’re into the “build or buy” discussion, because in addition to this visceral “received” value in recreation, there is often objective, empirical value in re-solving a problem ourselves: we can customize a solution to our particular needs, we can derive value from all of the ancillary lessons learned along the way, and maybe we can even improve upon what appears to be the accepted “wheel”; just because the wheel exists doesn’t mean that that’s the last wheel that need ever be invented.

It is a difficult pill to swallow for organizations who are dependent on engineering talent, that our job satisfaction is probably not going to come from building what you tell us to build, because that act is so diluted with pragmatic allowances and considerations, that nothing is left of the creative juice. Sometimes what business folk perceive as wheel-invention is in fact an engineer expressing themselves.

Huh. Imagine that. Engineers have internal lives as well.

Up in the trees

The Internet is making us patient, and I hate it