Discover more from 100 Days of Product
#74 Be Patient Early
Inspired by Kent Beck
Beginnings are exciting - a world in technicolor. Just as our eyes are tuned to movement, our brain is lit up by novelty and nothing dulls like repetition. If you’ve ever sprung from bed early to capture a great idea or started working on a new project, you know what I mean.
Yet we must temper our enthusiasm. New is as fragile as it is invigorating; within these early wobbled first steps are the scaffold of our future. Today’s choices matter more than tomorrow’s - early decisions have an outsized influence on where you end up. Consider a vacation. You and a few close friends decide to hit the open road. The big decision is the destination; if you pick Barcelona or Berlin, everything changes. The route, the clothes you bring, the nightlife - everything. Later decisions, like where you eat on day 6? Not as important to the overall experience.
Here is where software seems to have an advantage. Bits and bytes are easier to change than our aforementioned road trip. Don’t like the destination once you arrive? No big deal. No need to hop on a flight, or buy new clothes since you packed for the wrong climate. All we need is a mind receptive to change and an appetite for rework. Right?
“Directions set in advance of experience have an especially short half-life.” - Kent Beck
Well, enter theory and practice - while change should be easy, inside organizations, incentive structures rule the day and risk aversion tends to scale with revenue. Businesses are a business after all and resourced projects are expected to provide a return. Exploration and certainly make for strange bedfellows and there are very few pure research organizations around anymore.
But is certainly such an unfair expectation? After all, as professionals, shouldn’t we know if something will work? Isn’t that what it means to be good at your job? Well, yes and no.
Software is usually being written for the first time, and the first time you do anything, you learn a lot. It is creative work, exploratory - a walk into darkness with an underpowered flashlight, illuminating only the next few timid steps.
Software is not like building a fence. A fence is the same most every time with just a few variables around length, height, type of wood, stain, and soil. Each known clearly before you begin. Repeatable, low dynamic range work - in a word, predictable.
To continue the analogy, as we start our software project, we can’t see where the lot line terminates, or if we’ll have to dig through granite. And once we get going, with the first few boards in place, we might learn people don’t want a wood fence at all! The ever-present shadow of the new is uncertainty, it just so happens that there is more uncertainly in certain types of work - like software.
The upper limit to certainty is dynamic, with both the domain and the craftsperson defining the high watermark. We can be both expert and uncertain at the same time. Don’t believe me, just ask the losing quarterback in the Super Bowl.
This paradox causes consternation. Inside a corporate structure, often the obvious fact that ‘this might not work’ is an unwelcome opinion. Folks working on the making process, but not within it, are perplexed by the meandering nature of progress. Their mental model is one of a paved road, stick straight from point a to b; the only decision is how fast you drive.
However, the reality is more like crossing a partially frozen lake. Stick poles in hand, we extend our reach in the desired direction; prodding, testing. Satisfied that we’re on stable footing, we take another step. Moving ahead, eroding uncertainty as we go. Rushing towards a pre-determined distant shore is a poor strategy to cross an icy lake. If you want certainly, make a sandwich.
As you explore, keep your early creations light in both form and importance. Don’t build them up too much in code or in your mind. They are meant to be intermediaries - transient - not the thing itself. This confusion can lead to much hand wringing among the team - if dead ends are not expected, any twist and turn will be seen as an inconvenience, or worse, a lack of planning or skill. It's neither - detours a part of the creative journey. Do you want to hit a date or make something meaningful? Figuring is hard to figure.
"You can't put a deadline on insight”. - Conor White-Sullivan
Deadlines are great once you know where you’re headed when confidence is high, but early product work has high optionality; requiring freedom of time and space - the same as painting or music.You can put in the time, but you can’t prescribe the result. As Jerry Seinfeld said of creative work, “it’s a game of tonnage”.
Do the work, don’t rush what can’t be rushed, and be patient early.