Part 3 of 3 in the series
We’ve covered the MMMSS idea a couple of times now. This time we want to consider the key element of the case in favor: the remarkable intrinsic value we receive from Many More Much Smaller Steps. It’s not immediately obvious, so let’s take our time.
Many More Much Smaller Steps – First Sketch | GeePawHill.org
The first plank of my take on fixing the trade is MMMSS: If you want more value faster, take Many More Much Smaller Steps. Today I want to start laying this out for folks. This isn’t gonna happen in o…
I remind us as always, these muses are a kind of geeky comfort food, a respite from the work of changing our world. But just a respite. Taking a break is good, but remember to get back to work on change.
Stay safe. Stay strong. Stay angry. Stay kind. Black Lives Matter.
First, make sure we understand the strangeness of the proposition.
Imagine we’re at some point on our way to a horizon goal. There’s a fork in the road and we have three paths in front of us, all of which, we believe, will take us to that goal.
In path A, we have one ready-to-ready step of size 10 stride-lengths. Path B has five steps of size 2. The third path, C, has 15 steps of size 1.
Which of these three choices will we prefer?
We all know that old-school theory will choose A, a single step of size 10. Rework avoidance theory is indifferent to stride-length altogether, and believes the relationship between step-size and effort is linear.
Someone who might have been exposed to MMMSS, but not quite trust it, will likely choose B. They’re still caught up in the notion of linearity, but even with linearity, 1 x 10 = 10, and 5×2 = 10, so why not path B?
But here’s the MMMSS line, and we give this example precisely to rattle the frame of understanding.
The experienced MMMSS practitioner will nearly always prefer 15 steps of size 1. The reason: it will most likely get us there faster. Understanding this is today’s mission.
Ready-to-ready steps sometimes have extrinsic benefit. When we get to the end of the step, our value stream will be improved in some way. That is true of the last step in all 3 paths, and possibly of some of the intermediate ones in paths B and C, as well.
But ready-to-ready steps also bring intrinsic benefit. That is, they improve our performance just because they are ready-to-ready steps, and they do it every time. The MMMSS practitioner chooses Plan C: 15 ready-to-ready steps of size 1, and it’s not an accident, it’s a plan.
We’re going to look at eight intrinsic benefits from taking more smaller steps.
They break into two rough groups: benefits that focus on the responsiveness or handling of the producing system. And benefits that focus on the human makers doing the producing.
The responsiveness benefits are interruptability, steerability, reversability, and target parallelism. These derive from the frequency with which our system returns to readiness. Being "ready" has so much value, the more often we do it, the more effective we can be.
Your phone. Your email. Your slack. Your pet. Your child. Your parent. Your partner. Your neighbor. Your bestie. Your colleague. Your PO. Your SM. Your boss. Your grandboss.
All of these wonderful things can create interruptions, yes?
When we’re at either end of a step, we’re ready, and interruptions are cheap. When we’re in the middle of a step, we’re unready, and interruptions are expensive. The more frequently our system touches readiness, the easier and cheaper interruptions become.
This is closely related to interruptability, and has the same logic. The cheapest point at which we can steer our system? Clearly, it’s when the system is ready, which happens more often when we take more smaller steps.
In real-world environments, we’re working with a marketplace, and that marketplace is volatile, changing dramatically on very short notice. The ability to "turn on a dime" is a huge value. Again, it’s easier and cheaper to turn when you’re at ready.
Very closely related again, but subtly different. Smaller steps are easier to "take back". We can do this by simple reversion, but it’s also common to do it by forwarding the system to a state that is close to but not exactly where the previous step started.
Reversability matters because, in spite of the reams and reams of lore and practice suggesting an attitude of get-it-right-the-first-time, that is virtually impossible in systems of sufficient complexity, which are everywhere in our trade.
4: Target Parallelism.
A risible trade-myth: that a single voice & vision controls our effort. I’m not speaking here of a customer or persona, but of what we call a "stakeholder", polite language for "400-lb gorilla". Multiple visions & voices means multiple targets.
Many more much smaller steps creates a smaller granularity of parallelism. We can take a step from Gorilla A and follow it immediately with two steps from Gorilla B. It’s the frequency of readiness that lets this granular multi-targeting approach work.
These four intrinsic benefits of smaller steps, I think of them as "responsiveness" benefits, are in and of themselves quite valuable. But wait! Act before midnight tonight, and you also get four others, what we call the "human" benefits.
The human benefits of many more much smaller steps are scope, rhythm, autonomy, and safety. Here, the benefit derives from the impact those steps have on the individual human makers that are the actual centerpiece of our value production.
Any step from ready-to-ready may involve multiple entities and actions. The smaller the step, of necessity, the fewer of these entities and actions are in play. We call this scope, and it is a huge determinant of our success.
We’ve discussed both the math (combinatorics) and the science (human mental bandwidth) around this several times in the past, and there’s no space to lay it all out again today. But the gist of the scope benefit can be stated pretty simply.
Adding entities to a step seems linear, but it’s combinatoric, because it isn’t the entities, per se, that make things harder, it’s the relationships and interactions. Those go up very fast, quickly flooding the stark limits on human mental bandwidth.
Problems get bigger than human brains, and they do so much faster than simply counting the entities in play would indicate. A step of size 2 is more than twice as hard as a step of size 1. A step of size 10 is astronomically harder. Bigger steps cost "biggerer" than they should.
Humans are not Platonic abstract thinking machines, they are living creatures with myriad complex chemical interactions proceeding through every minute of life.
They are also junkies, for endorphins and other brain chemicals.
Alternating periods of tension and release produce those chemicals. And here’s the great secret of taking more steps: starting a step creates tension, and finishing it creates release.
Completing any step gives us more of the drugs our brains crave. But the effect of release is short-lived, so the optimal size of a step is one that completes on a semi-regular and fairly high frequency.
Smaller steps means more releases, more releasaes means more nearly continuous drug delivery, more continuous drug delivery means more energy & productivity. High, as it were, on life. 🙂
We have a sizable amount of data, not to mention strong intuition, that people are more creative, thoughtful, and thorough when they feel less at risk. Smaller steps, with fewer entities, are less risky on two counts: greater ease and lower stakes.
As we’ve discussed already, smaller is easier, and easier is calmer. But there’s no eliminating the possibility of error, even in small steps. The trick, tho, is that small steps only create small failures with small costs to undo or re-direct.
When we’ve taken two weeks to complete a step, the cost of discovering we were in error is very high. When we’ve taken twenty minutes, the cost of discovering our error is quite low.
Old-school orgs handle large-step failure in two ways: 1) the sunken cost angle, continuing on a bad path cuz we put so much into it, and 2) the paralyzed angle, where every step-choice must be analyzed weeks in advance of taking it.
Dan Pink included Autonomy in his account of motivation, Drive. My own RAMPS, an amplification and extension, says the key motivators for most folks include Rhythm, Autonomy, Mastery, Purpose, and Safety.
Smaller steps going from ready to ready on a live system — the programming version of this is trunk-based development — allow both individuals and teams a much greater degree of autonomy. The payback for that autonomy is enormous.
In addition to the motivational power, there’s another benefit to autonomy: we can sidestep and mitigate the extraordinary costs we pay for directed parallelism, because our need for meticulous command and control is reduced or even eliminated.
Eight benefits: Interruptability, Steerability, Reversability, Target Parallelism, Scope, Rhythm, Safety, and Autonomy.
That’s a lot. And they all derive from taking many more much smaller steps.
(A bit telegraphic, feel free to ask questions.)
Not all of these benefits are in operation at every step, tho the human ones usually are. But even if every step only delivers a subset, you can sense the actual impact of making change in this way, in yourself, your code, your team, your process, your org, your world.
The point we’re making: this all sounds like it’s about geekery, and I use a lot of examples and illustrations from the trade. But this is actually about change, not specific to programming, but generalized to all change towards horizon goals.
There’s more to come on MMMSS.
Though today we focused on the positive, we need to consider the arguments from the counter-case. The old-school rework avoidance approach has a huge body of theory and practice. We need to understand why and how it’s mistaken.
Does the GeePaw Blogcast add value?
If so, consider a monthly donation to help keep the content flowing. You can also subscribe for free to get weekly posts sent straight to your inbox. And to get more involved in the conversation, jump into the Camerata and start talking to other like-minded Change-Harvesters today.