Recently I’ve come to value experiments. I value them so much, it seems all I’m doing is experimenting.
That’s no coincidence: In an agile environment, a start-up company, or new research, we’re up to our armpits in uncertainty. We try to control it in different ways, but the fact is, unless things are clear cut, we have no idea how our decisions will play out. You can take this in different ways. One way is to ride the flow, see what comes. Or you can create check points.
An experiment is something you’re starting. You decide on what you want to check, set some initial conditions (those that you can control) and off you go. You can’t guarantee any result, but you can decide when the experiment ends.
If you take this view point, almost everything can look like an experiment.
The new feature you want everyone to love. Will it work? Will everybody love it? What do you do? Experiment.
You’re introducing TDD. Will the team work with you or against you? Don’t know? Experiment.
Simple, isn’t it?
Read the small print
Not all experiments succeed. Remember that “no guarantee”? Things can really blow up. Let’s face it, they mostly do.
When things blow up, it usually means the experiment is over. This is where you declare defeat.
And start a new experiment.
This is the difference between being swept by the river of uncertainty and making course corrections.
As a change agent, what you’re doing is trying things out. Sometimes they work, and you move on to the next thing.
Sometimes they don’t.
Then you move on to the next thing.