Consistency, cohesion, and coherence

My colleague Micah introduced me to this framing of different degrees of organization and I found it rather useful. Recently, I shared the framing with my son and he came up with a pretty neat metaphor that I will try to capture here.

Imagine a box of gears. All gears are of different sizes and kinds. There are spur gears, bevel gears, herringbone, and their tooth spacing is all different. It’s a boxful of random junk. We call this state disorganized: entities are disjointed and aren’t meant to fit together.

Now, let’s imagine a different box. It is also full of gears, but here, all gears are of the same kind, and they all fit. It’s still just a pile of gears, but at least they are consistent. This state of consistency is our next degree of organization. The entities fit together, but aren’t connected in any way.

If we took the gears out of that second box and built a working gear system out of them, we would achieve the next degree of organization, the state of cohesion. Here, the entities have been organized into something that actually does something — we turn one gear and all others start turning with it. It’s amazing.

But what does this gear system do? This is where the story’s final degree of organization comes. Running rigs of gears are cool, but when we build them to do something intentional — like changing the rotational speed or torque of a motor — we reach the state of coherence. In this state, the entities don’t just work together, they are doing so to fulfill some intention. The addition of intentionality is a focusing function. In the state of cohesion, we’d be perfectly fine with building a contraption that engages all the gears we have. When we seek coherence, we will likely discard gears that might fit really well, but don’t serve the purpose of intention.

We also noticed that the states aren’t necessarily a straight-line progression. Just picture a bunch of gears that barely fit, rigged to do something useful — thus skipping the consistency stage altogether.

Playing with this metaphor and developer surfaces (APIs, tools, docs, etc.) produces a handy set of examples. If my APIs are all over the place, each in different language, style, and set of dependencies, we can safely call my developer surface disorganized. Making them all line up and match in some common style/spirit turns them consistent. If I go one step further and make the APIs easy to combine and build stuff with, I’ve taken my developer surface to the state of cohesiveness. Given how rare this is in real life, it’s a reason to celebrate already. But there’s one more state. My developer surface is coherent when the developers who use it produce outcomes that align with my intentions for the surface. If I made a UI framework with the intent to enable buttery-smooth end-user interactions, but all the users see is a bloated, janky mess — my developer surface could be consistent and cohesive, but it’s definitely not coherent.

Limits of attachment and capacity are interlinked

It felt both liberating and somehow odd to make a distinction between the limits of capacity and attachment. I’ve been thinking about that oddness and here’s an extra twist to the story.

The limits of attachment and capacity are interrelated. They are in this circular relationship that’s reminiscent of yin and yang. When I am struggling to grasp something or feel overwhelmed and generally experiencing the limit of capacity, it is usually the limit of attachment that is holding me back from gaining this capacity. Conversely, when I lash out in fear and frustration, trapped by my limit of attachment — it is usually the limit of capacity that prevents me from reframing and shifting my perspective to loosen my attachment.

Even more interestingly, the limit of attachment sometimes rises out of experiencing the limit of capacity, and vice versa. A few years back, I was the tech lead of a large team. As the team kept growing, I distinctly felt that I was losing track of everything that was going on. I was in over my head, hitting that limit of capacity. Meetings and syncs were overflowing my calendar, with the notes from that period of time turning increasingly terse and cryptic. One of the distinct fears — limit of attachment! — I remember from that time, was “I will fail to produce a coherent direction for the team.” I was holding too firmly onto a certain way of leading the team, and as I became more overwhelmed, I instinctively tried to hold it even firmer. So what did I do? I decided that the problem was somewhere else — it was the team that wasn’t organized right! I dove into drawing up plans for organizing teams and programs and all those other doc and chart artifacts that ultimately were not helpful — and likely the opposite. Experiencing the limit of capacity fed my limit of attachment — the fear of failing my team as their leader. Which in turn fed my limit of capacity with all the teamification work I created. The vicious cycle ended up being so horrific and traumatizing, I ended up leaving the team.

This story has a happy ending. This experience was also the eye-opening moment I needed, my first glimpse into the nature of complexity, being subject to some unknown force with increasing recognition of this force’s existence — my first conscious subject-object shift. It also helped me see that when folks around me bump into their limits to seeing, they are likely facing both the limit of capacity and the limit of attachment at the same time. And when they do, they are standing at the doorstep of vertical development.

It’s a unicycle!

Thinking a bit more about correlated compounding loops, I would like to improve on my metaphor. I can’t believe I didn’t see it earlier, but it’s clearly not a tricycle — it’s a unicycle! Having never ridden one, I can only imagine a bit more balancing and finesse needed to ride than a bicycle. So it’s settled then. It’s all about unicycles and bicycles from here on. Transportation of the future.

When the motor and the rudder rely on the same or highly correlated compounding loops, we have ourselves a unicycle. Conversely, we have a bicycle when the motor and the rudder use low- or non-correlated compounding loops. Bicycles tend to be more stable and unicycles more finicky.

For example, a tenured position is a solid bicycle. With the tenure secured, I can focus on steering toward the desired change, knowing that my motor will continue to provide the necessary power. Companies establishing research centers like PARC or Bell Labs is another example of bicycles: creating distance between the source of funding and the environment of change. This distance does not have to be large. Any buffer between the cash that’s coming in (motor) and the expenses dedicated to achieving desired outcomes (rudder) is acting as the unicycle-to-bicycle conversion kit.

There’s still more to consider in this transportation metaphor. It feels like the notion of groundedness is important. Are both bicycle wheels on the ground — is the rudder experiencing the same environment as the motor? What is the impact of that motor/rudder correlation on the time horizon of the intended change? I am still chewing on these.

Complexity escape routes and listening to learn

I was teaching the workshop on complexity this week, an outgrowth of my Adventures In Complexity slides. One of the interesting ideas that I was emphasizing during the workshop was this notion that we humans tend to be rather uncomfortable in Complex space. We traced the two intuitive pathways out of this space as escaping to Complicated and escaping to Chaotic.

We escape to Complicated space through insufficient framing: converting a complex phenomenon into a “problem to be solved” as quickly as we possibly can. We escape to Chaotic space by escalating: instead of viewing a complex phenomenon as a problem to be solved, we choose to view it as a threat. This particular kind of escape is just as tempting as the first one — and perhaps even more. How many difficult conversations did we turn into stupid, ultimately losing fights? How many emergencies did we create just to avoid sitting with the discomfort of complexity?

But the most interesting insight came when I was sharing some of my favorite tools from my complexity toolkit. I learned the Listening to Learn framework from Jennifer Garvey Berger and used it many times before this workshop. However, talking about the escape routes right next to it connected them in a novel way.

It seems that Listening to Win is closely correlated with the way we escape complexity by shifting to Chaotic space. “Winning” here is very much a confrontation with a distinct intent of containing a threat. In the same vein, Listening to Fix is a shoe-in for the steps we take to escape over to Complicated space: framing-shmaming, let’s fix this thing! It is the third way of listening, the eponymous Listening to Learn is what encourages us to hold complexity and resist taking the escape routes. I was surprised and delighted to make this connection and can’t wait to incorporate it into my next workshop.