Measure Twice

“Measure twice, cut once.”

I love this. Such a simple expression of an idea. The idea is (ir)reversibility.

In a lot of situations, you can make a call and if it turns out to be a bad one, you can change it without a lot of negative consequences.

When you make a decision that’s irreversible, you need to be super careful. You should weigh your options carefully before you take action.

Reversibility exists on a sort of spectrum, though. Some things are flat-out impossible to reverse. Some things are pretty hard to reverse. Some things are just kinda hard. And some things are trivially easy.

How does this thinking apply to software development? You can make a reversibility forecast along with every software design decision you make. “If I design the code this way and then change my mind, will it be hard to update the design later?”

How does this thinking apply to business? Similar: You can make reversibility forecasts along with decisions about hiring, resource allocation, business development, product development, etc.

Reversibility is a factor to consider in decisions you make in just about any domain, really. It’s something to pay attention to. Where you only get to cut once, be sure to measure twice.