I bought a belt recently. Unexpectedly, it came with a tool for making holes and the notice above. My initial reaction was to chuckle and think "yeah, we could probably all learn something from that."
But, honestly, that's just lazy. That's the cheap laugh. That's this misguided thinking:
DO NOT OPEN THE EDITOR BEFORE YOU FINALISE THE REQUIREMENT
And I am so over that.
When asked what advice I would give to the early-career me I've often answered: get comfortable with uncertainty. In the spirit of today's post, I might rephrase that as
DO NOT HALT THE WORK BEFORE YOU ENCOUNTER THE BLOCKAGE
Of course, this is what iterative development is predicated on. By the time we've coded what we can, and shown it to our customers for feedback, we might find that we understand the problem space well enough to not need answers, or that we were asking the wrong questions.
What I like these days is to understand the known constraints and to work towards a solution that satisfies them, step by step, focussing on the things we understand least well where that's possible and refining the constraints as we go. Or perhaps something like
DO NOT LENGTHEN THE STRIDE BEFORE YOU NEAR THE FINISH
With this kind of approach we might never need to measure the belt; we can repeatedly offer it up to the waist to see whether we're getting to the right length. (Naturally, if we have or can get the measurement we shouldn't ignore it.)
The wonderful irony here is that on the reverse of the notice are more specific instructions that include measuring the waist ... but then do not explain what to do with the value.
I feel like I have seen this somewhere before ...DO NOT ENTER THE MANAGEMENT BEFORE YOU DISCARD THE LOGIC

