Facilitating the Spread of Knowledge and Innovation in Professional Software Development

Write for InfoQ


Choose your language

InfoQ Homepage News Embracing Complexity by Asking Questions, Listening, and Building a Shared Understanding

Embracing Complexity by Asking Questions, Listening, and Building a Shared Understanding

When dealing with an environment that feels complex, people commonly look for ways to reduce variability and increase control for dealing with complex systems. An alternative approach is to embrace complexity by acknowledging that it exists, asking questions and listening, and constructing a shared understanding based on different perspectives. This lets us improve how we adapt on an ongoing basis.

Fred Hebert will give a talk about embracing complexity at QCon New York 2023. This conference will be held from June 13-15.

According to Hebert, initiatives for reducing variability and increasing control tend to come from the top of the organisation, and by their nature, they tend to communicate a need to make plans successful by increasing predictability. This can work fine so long as this variability is accidental and non-essential, but can backfire in other situations:

Whenever that variability is there for a good reason, as an adaptation to a complex landscape or dynamic conditions, then trying to rein it in is just likely to make you less successful regardless of the desired outcome behind trying to increase control.

According to Hebert, we have to get a better understanding of what is going on first. And that understanding must be done with the intent of knowing what our limitations might be as a centralised decision-maker, not as a way to just control things better:

Find out where in the organisation people might be better located to act on inputs—usually they’ll be people in direct contact with customers, code, and able to act on events as they happen—and who else might need that information.

The first step in embracing complexity is to acknowledge it exists, and that it requires different tools. Some of the things that Hebert suggests doing are:

Rather than using metrics and indicators as self-contained signals, see them as pointers towards where to make deep dives.

Rather than trying to nudge people on what to do by adding carrots and sticks, figure out what drives their decision-making and see if anything can be made easier for them.

According to Hebert, we should ask questions and listen, and don’t try to simplify too much, and don’t put too much importance on finding an objective explanation for everything that went on, but construct an understanding based on the varied perspectives of people we work with.

InfoQ interviewed Fred Hebert about dealing with complexity.

InfoQ: As trying to control complexity doesn’t work, what’s the alternative?

Fred Hebert: Become a facilitator and aligner for decentralised control, rather than a decider who ultimately is a bottleneck people will learn to bypass.

A common pattern I’ve noticed where the same mechanism can be used for control or empowerment (but rarely both at once) is around Request For Comments (RFCs) or Architecture Decision Records (ADRs). Organisations often ask for people to design new components upfront, and the committee doing the review acts as a gatekeeper that aims to prevent mistakes. In almost all cases I’ve seen this put in place, people who perceive the process as a blocker end up doing the work regardless and then just half-ass writing a document to cover their tracks after everything has been put in motion. The process isn’t helpful. But it could be oriented toward empowerment and trust: making expertise from other departments available, and using it as an information propagation mechanism more than a way to prevent mistakes.

InfoQ: How can we embrace complexity, can you give an example?

Hebert: A classic example here is one of counting incidents and tying a team’s bonuses (or reprimands) to the absence of incidents (or their presence). Incidents are already difficult to deal with, often tied to long-standing decisions within the organisation, and just adding more variables to the equation is likely to change little aside from driving people to mess with the data they report to meet the new objectives without making the existing ones worse.

InfoQ: What’s your advice for fostering a richer view of systems?

Hebert: Trying to build a clean, truthful, axiomatic view of events tends to discard a lot of the messy details about what is going on. Sometimes it’s because these messy details are hard to measure, they’re opinions, or out of the realm of things you control, but they still influence how people navigate their part of the system.

Embracing that mess will likely lead to views that are far richer in terms of the insights it generates.

About the Author

Rate this Article