Making sense of systems

If you want to understand something complex, really truly understand it, you’ve got to figure it out for yourself. You can become familiar with, and even comfortable with complexity learning from others, but you can’t let someone else do the heavy lifting and expect that your understanding is going to be profound or deep

But to do this you’re going to need a system. This system can be used like jig for your learning. It can guide your process and make it fruitful. The good news is the system is not complex, though it is hard work. 

You can use this process to understand something like organizational dynamics or the complexities of healthcare. You can also use it on systems which aren’t so complex, but that have fuzzy edges or which are so familiar to you that you can’t quite see them objectively or clearly. 

1. Explore

Make it personal

Stay wide

2. Name

3. Group

4. Make lateral relationships

Types of relationships

5. Make hierarchical relationships

6. Models

Iterative & recursive

Linking to existing models

1. Explore

Start with learning about it not as an abstract concept, but as something concrete.  It’s tempting to try to create an abstract model and adjust it; don’t. Go get concrete experience. Go participate. Embed yourself in experience. Notice things. Get curious about how the system works in its particulars. Strive to get stories you can tell about the system.

Take notes.

Make it personal

Before you do research on what others have discovered, do your own investigation. Don’t worry that someone else may have already figured it out. Try your own shot at things first. Go until you can’t think of anything else to add. Then research what other people say. 

Once you start looking at what others have proposed, use their material more as inspiration than an answer. See how it fits into what you’ve already figured out, add it your model and keep on building it. The primary drive should be to build your model, not take someone else’s answer as truth.

Stay wide

It’s tempting to rathole into something that’s novel, or interesting. Don’t get sucked into one aspect, but try to get exposure to everything that is part of the system. Try to understand the edges and boundaries of the system. Where does it end? What does it cover? What isn’t part of the system?

Now is the time to start looking at how other people think about the system. Do research on how other people understand it. Look for diversity in the perspectives you gather. Try to find people that have a different view than your own. Use the internet, talk to people, get outside your head.

Take notes. Save links. Don’t try to make sense of it yet. Your goal is to get broad exposure and to lay easy roads back to sources.

2. Name

As you learn things about the system name them. Don’t worry about perfecting the naming. Name it if you notice or identify it. Adjust names if they stop working as you get to know more things.

3. Group

Put like things into buckets. Accept that the bucketing will start out arbitrary, but will improve over time. Feel free to refine or rethink buckets as you go. One useful way to not overwhelm yourself is to keep a single bucket for stuff that doesn’t seem to easily fit into other buckets. This allows you to keep sorting things, without needing to solve every mystery. In the end you may have a few neat buckets and one off miscellaneous bucket. You can try to make sense of the items if they lend themselves to it, or just keep them together as a conundrum for the future.

You might end up making buckets of buckets and that’s ok too.

4. Make lateral relationships

Put named things, or buckets into lateral relationships.

Spectrums help to define what is relations to what and how they are related horizontally. Create as many as you need. Don’t force it. Look for things that have sibling relationships, put them in relationship to one another.

Types of relationships

Binary gradient (identifying only the polar ends of a spectrum)

Conservative ← →  Liberal

Binary opposition (polar values, no overlap/transition)

On || Off

Multi-value gradient (identifying ends and some of the middle of the spectrum)

Frozen ← Cold – Warm – Hot →  Boiling

Multi-value, exhaustive set (full set of siblings, no sequence)

[ North | South | East | West ] 

Multi-value sample set (some siblings, no sequence)

wheat | barley | rice

Multi-value ordered sequence (siblings, ordered)

Red – Orange – Yellow – Green – Blue 

Multi-value directional sequence   (arguably a hierarchy, but for this purpose a sequence)

Infant > Toddler > Child > Teenager

5. Make hierarchical relationships

Put things in hierarchies. This shows relationships vertically. It helps you see how things relate in importance, their sequencing in time, their dependencies, or parent/child relationships.

Essentially this means putting into an ordered list:

  1. Get out of bed
  2. Take shower
  3. Eat breakfast
  4. Go to work

Ordered lists are good for forcing you to think through priority or sequence.

Or an outline:

  1. Animals
    1. Reptiles
      1. Lizards
      2. Turtles
      3. Snakes
    2. Mammals
    3. Birds

Outlines allow for thinking through general-to-specific classifications or size relationships. They are particularly useful because they allow you to repeat a shared detailed characteristic within larger differentiated categories.

6. Intersections

As you build lists, look for and consider the intersections of information.  Where intersections exist, tables are an effective way to capture the matrix of connections. Tables give a horizontal and vertical interface to splay information across.

StudentStudy timeGrade
Bob284
Carlos491
Cindy592
Florence389
Kim488
Lori493
Wendy178

Columns and rows force you to fill in data or consider relationships which had been hidden before. As you fill in data you will see patterns which are useful in grasping how the system works across very specific axis. You can color code  values to show distinctions or similarities such as being in a certain range or having the same value. Color coding helps reveal additional patterns and relationships. Conditional formatting allows you to do this over a vast amount of data, but you can do this manually for small sets.

7. Models

You will at some point in this process feel like you’ve arrived at a model that has meaning. Maybe it’s the buckets you put things into. Maybe it’s the lateral relationships. Maybe it’s the hierarchy. Once you think you’ve developed a model, seek ways to break it. Think of other examples, outliers are really good to push on a model. Does it still hold up?

Iterative & recursive

Recognize that this process of meaning making is often iterative and recursive. You may end up starting over part way through. You might get through and be inspired to see things entirely differently and to start all over again. You might take part of your output and throw it away. This process is messy. It’s approximate. It’s tentative. It gets better with investment of effort.

Linking to existing models

While doing this process you may see a parallel or link to an existing model or framework. Perhaps the buckets you make end up being similar to categories of a model you know from somewhere else. Maybe it becomes clear that you’re essentially describing a Maslow hierarchy when ranking items. 

If you think you’ve arrived at an existing model. Try it out. Try to map the rest of the items to the model. Go fast. Don’t get caught up in the details. Focus on looking for what doesn’t fit, instead of confirmation that it does fit. Imagine examples where the model and your data don’t sync up. Explore to see if they are legitimate. 

Potential exercises to practice

Sorting

  1. Sort the following screw heads into five different category types. 
  1. Follow on exercise, resort them into three categories.
  2. Put the screw heads on a spectrum.

Articulating hierarchies

  1. Put the following set of items into a hierarchical outline.
ButtonFormDate fieldText fieldRadio buttonPageTableLinkText stringHeaderTabsFooterImageViewList
  1. Redo as a list ordered by most to least actionable for a user