Advent(ure) in Systems Seeing — Day 6 and 7 — Donella Meadows on Causal Loops
Ask those who are interested in systems to recommend a book, and chances are good that they’ll recommend Donella Meadows’ Thinking in Systems: A Primer. It’s wonderful! She was a great teacher, and a couple of her lectures survived the decades and are online. So, let’s go to Meadows herself to learn about Causal Loop Diagrams.
The whole lecture is great, but to keep to 15 minutes, start at minute 18:59. Take sketchnotes as you watch. (And stop after 15 to 20 minutes.)
I’ve been running behind and catching up but haven’t been looking ahead to see what the next few days challenges are about. I read Donella Meadows book a decade or so ago and hadn’t seen this video before, and didn’t know that we were going to talk about feedback loops next. I watched the entire video, it was worth it.
https://www.youtube.com/watch?v=XL_lOoomRTA
Some notes I made while watching.
There is a lot of detailed diagram syntax that she uses that I haven’t seen used except by her. Another book on Systems Thinking by Jamshid Gharajedaghi is one I studied more closely and I think had some different notation. It’s more focused on purposeful business and technology systems, and was written a few decades later than Donella’s book.
The feedback loop examples are good. The positive feedback of annual interest on bank balances is small and slow acting, so it doesn’t have time to become unstable. The stock market positive feedback of people buying into a stock that is going up (greed), and selling a stock that is going down (scared) is much more chaotic, and has additional external systems loops that have negative feedback that limit upside when people get scared that its gone too far, and limit downside by stopping trading entirely.
Sadly Donella passed away in 2001, but I was lucky enough to meet Jamshid about a decade ago. I sent him a copy of a presentation I had made about Systems for Innovation that referred to his work, and he invited me to give an in-person talk to his students at Villanova.
Day 7: Give Causal Loop Diagrams a Spin
On Day 6 we learned about Causal Loop Diagrams from Donella Meadows. Today we’ll get a little practice using causal loop diagrams to understand interacting effects in a system. Deciding what to explore can be the hard part, so here are some options (pick one, or explore a tricky/sticky challenge you face):
the effect of adding lanes to a highway (induced traffic)
bringing wolves back to Yellowstone (watch 4 minute video)
the “flywheel effect” (eg etsy flywheel) to explore growth strategy (where value increases when other people also consume the same brand or participate on the same platform)
technical debt (in the colloquial sense): how does it arise, how is it sustained, what can we do to avoid it or to get out of vicious cycles?
explore impact of genai or agentic ai on understanding and skills
I’ve been using Agentic AI to supply developer skills, so decided to explore that topic. My first attempt was really about defining the purpose of understanding and skills: doing things successfully, by understanding them and being able to manipulate them to a satisfactory outcome. To do that humans have have an understanding (a model) of what they are trying to do, and remember their education, training and experience as they work on a task. Agentic AI tends to have a much broader training set than any one human can remember, but use simpler models than humans. The result of the skill is fed back as human experience and agentic context, and some iteration may be needed to get the successful outcome.
Given my own experience, I felt that this didn’t capture the systemic difference I’ve seen, so I started again with a different approach.
A skill is needed to perform a task, so I decided to try a task flow model. The task may be something the human is not skilled in (for me, github commands, programming languages I don’t know), which the human would have to research and study and then execute and iterate until it worked. I estimate that humans code at about 1000 tokens/hr of finished output when working on tasks, and personally, I often run out of time before I’ve even finished the research and study phases needed to get something done.
A skilled human would skip the research and study, and be more likely to execute correctly first try than an unskilled human, so would read/write a lot fewer tokens to get the work done.
Agentic AI knows how to do just about any well documented developer task, but also I recently tried to use a brand new open source software package and it read the blog post and repo documentation and used it successfully first time. Agents code at about a million tokens/hr, and the number of tokens they need to get work done is dropping rapidly.
I represent an unskilled human, who doesn’t have enough time to become skilled in git commands, Python libraries I’ve never seen before, coding in Swift etc. I have enough developer management skill to direct an agent to get things done in far less time than even a skilled human would take, and can iterate a few times if needed to get the results I need.
The negative feedback loops in the case of skills are primarily the evaluation of whether the result is good enough yet, and what went wrong that needs to be fixed. There’s an outer feedback loop I haven’t shown which evaluates whether Agentic AI works well on a particular task (is it sufficiently skilful) assigns work to skilled humans or agents as needed, and builds a skills model that increases the success rate of agents by giving them smaller tasks that align with stronger skills. For example I currently expect code to work first time for agents coding in Python, and to have syntax and compile time errors to work through for agents coding in Swift.
Only a day or so behind Ruth Malan now…
