In this episode, Dr. Mark Burgess, creator of CFEngine, explains how he uses concepts from physics to explain how complex systems work. He uses his Promise Theory to not only develop better computer systems, but also to give us a better framework for individual and team interactions.
After listening to this episode, you will understand:
- How we can use concepts from different disciplines and apply it to our work
- How an orchestra is like a highly distributed, cooperative system
- The two ways to successfully create scale
- How to use continuous delivery concepts to make sure they are aligned and on course
Key Takeaways
Physics is great at describing how stuff works. It shows how stable a system is (a question that computer science doesn’t answer). Mark showed us how to use other diciplines to get ideas and create new concepts as he did with Promise Theory.
Scaling has 2 aspects: Can I cope with the load (can I produce results fast enough) and can I produce the right results? That’s what we’re trying to get at with Promise Theory. While originally applied for complex computer systems, Promise Theory can be applied to human interaction.
Promises help us get away from commands and obligations. Obligations manifest themselves in teams, which are essentially distributed systems, by contradictions and unhealthy conflicts. With promises, the notion of contradiction goes away. It allows you to contextualize information and keep it local because that person is completely in control of what they’re promising.
Obligations are in line with a command and control approach while promises promote a cooperative approach.
There are two ways to scale teams (which are really highly distributed, cooperative systems): 1) Like an orchestra, with each independent agent working off the same sheet of music and with a light touch from a conductor to keep everyone in time, or 2) Act more like a jazz band and coordinate by listening and getting signals from one another.
In a highly coupled system (or team), things (both good and bad) get transmitted very quickly. With weakly coupled systems, you can stop some of the bad things being transmitted as efficiently. Complexity Theory helps to understand the impacts of highly coupled systems.
Links mentioned in this episode
- Mark Burgess’ website: http://markburgess.org/index.html
- Mark’s books and other publications: http://markburgess.org/writing.html
- More about Promise Theory and how it applies to complex systems and teams: http://markburgess.org/blog_devops.html
Thank you for listening to the program
To get more valuable content to enhance your skills and advance your career, you can subscribe on iTunes.
Also, reviews on iTunes are highly appreciated! I read each review and it helps keep me motivated to continue to bring you valuable content each week.