Coleman McCormick

Archive of posts with tag 'Mental Models'

August 24, 2024 • #

“Pace layers”

✦

The Cynefin Framework

November 30, 2023 • #

I recently discovered the Cynefin framework, a mental model for situational decision making created by IBM’s Dave Snowden over 20 years ago. Now I’m a big “Business Process System” skeptic these days. I’ve seen way too many of them wildly overfit, seen them become bibles for teams where it seems like we’re working for the process, and not the other way around. Cynefin seems useful because it’s a course mental model more than some sort of Agile-like totalizing system for how to get work done. It intends to help you classify problems and orient yourself versus telling you what to do.

In the framework, there are 4 domains, each with their own definition and suggested order of operations to how to react to a given situation in each domain.

Domain Description Response
Clear Tightly constrained, no degrees of freedom Sense, categorize, respond
Complicated Governing constraints, tightly coupled Sense, analyze, respond
Complex Enabling constraints, loosely coupled Probe, sense, respond
Chaotic Lacking constraints, de-coupled Act, sense, respond

So what it demonstrates is things like the difference between something being complicated vs. complex. Sounds like a subtle difference, but there are important distinctions which prompt conflicting reactions in how to proceed. A complicated problem has lots of moving parts, but we know what all the parts are and what they do, just need to put ‘em together. A complex problem involves many interrelationships between factors, along with Rumsfelds famous “unknown unknowns” — we don’t even know what all the involved pieces look like yet. Discovery is required.

Cynefin framework

Here are a few simplified examples to conceptualize the distinctions between domains:

Clear

Restocking office supplies. This is a straightforward task where the need and the solution are clear, and best practices like inventory management can be directly applied. Just go do it.

Complicated

Building a simple todo-list app. There are countless examples to follow, pre-existing primitives and libraries to use, and a known set of basic functions. The developer just needs some programming know-how, and a list of functions we want the app to perform.

Complex

Addressing a city’s traffic congestion problem. This involves tons of variables and unpredictable human behaviors. Solutions might emerge from trialing different traffic management approaches, analyzing impacts, and iteratively refining strategies. The problem in truly complex spaces is like squeezing a balloon — you squeeze one end and the air just moves elsewhere. “Nailing jell-o to a wall” comes to mind.

Chaotic

Natural disasters. No clear cause and you’re taken by surprise. And because of the public safety danger, you have no time for conference room analysis and whiteboarding sessions. Immediate, decisive action is required to establish stability, followed by strategies to move the situation into a more manageable domain. “You go to war with the army you have.”

✦
✦

Weekend Reading: Mental Models, Git History, and Notion

March 16, 2019 • #

🧠 A Latticework of Mental Models

This is an excellent archive on Farnam Street with background on 109 different mental models — first principles, Occam’s Razor, probabalistic thinking, and many more. So much great reading material here to study different modes of thinking. Like writer Shane Parrish puts it, this latticework helps you “think better”:

The quality of our thinking is proportional to the models in our head and their usefulness in the situation at hand. The more models you have—the bigger your toolbox—the more likely you are to have the right models to see reality. It turns out that when it comes to improving your ability to make decisions. Variety matters.

Most of us, however, are specialists. Instead of a latticework of mental models, we have a few from our discipline. Each specialist sees something different. By default, a typical Engineer will think in systems. A psychologist will think in terms of incentives. A biologist will think in terms of evolution. By putting these disciplines together in our head, we can walk around a problem in a three dimensional way. If we’re only looking at the problem one way, we’ve got a blind spot. And blind spots can kill you.

💾 Git History

A neat tool for visually browsing git commit history. Scrolling through commits does a nice animation to show you graphically what’s changing from step to step. Here’s an example with browserify.

✏️ Notion Pages

Over the last week I’ve been messing around with Notion, a productivity app that seemingly can do everything — a combination personal database, word processor, spreadsheet, notes app, and todo list. I’m trying it out for note taking and writing (mostly), but it’s got some potential to be a personal wiki, an idea which has always intrigued me but never felt worthwhile to try to set up and maintain. This site has a bunch of templates for Notion to help get started for different use cases. Just browsing it shows the diversity of things you can use it for.

✦
✦