“Thinking in Systems” acted on me as a reinforcing loop. The motivation I have to explore the ability to think of Software as loops and systems show up reading those pages.
The second kind of feedback loop is amplifying, reinforcing, self-multiplying, snowballing– a vicious or virtuous circle that can cause healthy growth or runaway destruction. It is called a reinforcing feedback loop…
Thinking in systems - Donella H. Meadows
It is a great way to put words close to concepts I am exploring in practice. It is not a book written for developers, but you know, it works, and you can apply what you read everywhere.
Words are coming from Donatella Meadows, the author of this book, a scientist, author, teacher, and a system analyst.
If you enjoyed “Reactive planning and reconciliation in Go.” this book is a great way to go deeper into this topic without reading a long book; in the end, it is less than 200 pages.
Systems are everywhere: the water cycle, the ability our body has to recover, the evolution. This book helps you understand how to describe and spot them, giving you the ability to see systems, such as when writing Software or when looking for alternative solutions.
From my experience, when you can simplify a problem into a system, you get an entity capable of balancing itself, a more resilient solution, and repeatable workflow.
Self-balancing as a thermostat, for example. Resilient as a Kubernetes reconciliation loop, repeatable as the water cycle is or an idempotent server provisioning.