Today I read through the InfoQ eMag on Chaos Engineering, and was struck by John Allspaw’s ( @allspaw) contribution because it reminded me of something I jotted down on a sticky at my desk a few days ago:
Intuition is valid because it is learned like jazz changes.
I’m pretty stubborn and refuse to accept that music is merely a hobby of mine. When people ask me if electronic music or singing is my “hobby”, I am wincing inside. So a question often on my mind is: how does the intuition I have when performing and composing music connect with the work I do as a technologist?
Some musicological background might help. One concept in learning how to improvise (jazz or otherwise) is that you have developed an intuition built around internalizing the materials and form of the piece (or genre) – like scales, chord changes, or rhythm structures. This is different from the more lizard-brainy concept of instinct. Think about a blues progression, the foundation of music you hear every day, everywhere. You know intuitively the chord progression and timing is “right”, even so much that anomalies and departures come across as emotionally significant. The rest is pop history.
But you, homo sapiens, do not have this chord sequence
It is not a stretch, then, to recognize that intuition in improvised music can be directly compared to how Allspaw writes about the “mental map” that engineers develop. They each have their own subjective view on relevant (but overlapping) parts of the system and are challenged when relating each substrate to theirs. For instance, a phenomenon known as “fundamental common-ground breakdown” ( Woods & Klein: Common Ground and Coordination in Joint Activity) happens when what I describe as intuitions (accumulated individual learnings about the system) are assumed knowledge among participants, good or bad. Part of the game is learning how to harmonize these separate threads of experience, avoiding costly coordination surprise and re-synchronization… and trust me, I have been in plenty of rehearsals and narrowly saved performances that fit this description!
The important point here is that a system becomes more complex as it grows dimensions, shrinking the capacity of any one person to comprehend the whole thing. Therefore we rely on shared and discovered knowledge to fully grok these fascinating systems. Take any ensemble of musicians: as it grows in membership, individuals gradually lose the ability to contain its myriad relationships in their mental map, so coordination and integration become a matter of listening and rehearsal experience (both modes of communication). Oh and it characterizes the music, too. Building intuition about how to play a part in an opera is much different than in a free improv vocal trio. Orchestrating ten thousand
Technologists grapple with the task of building and sharing intuitions about a system because understanding an entire system contributes to what we know about making it more resilient. Communication is key in either musical or engineering teams, collaboration on understanding the whole is no exception. Our mental maps should be adaptable to constant updates, and practices like Chaos Engineering that make discoveries in complex system behavior are supported by this kind of cross-pollination and proliferation of our combined understanding.
A quote from Allspaw’s article highlights it well:
Maybe the process of designing a chaos experiment is just as valuable as the actual performance of the experiment.
– John Allspaw, Recalibrating Mental Models through Design of Chaos Experiments
The use of the term “performance” is apt. We’re familiar with this concept: practice makes perfect. Taken further, the experience of practice is necessary such that the result is merely an extension of practice. It takes meticulous work to understand a piece of music to the level of having an intuition about how it operates, and the same goes for building experimentation that challenges what you think you know about complex software. The results of the “performance” can be enhanced by a focus on understanding the system’s design and steady state (i.e. nominal condition), what we would call the language of the musical work. It is as if the performance of the event naturally evolves from learnings gained preparing for it.
Imagine you are a jazz musician, you have gone through years of studying scales and changes and charts and recordings of a particular artist, and have built a capability for understanding how the language of their music works. One evening at a local club, your dreams are fulfilled, you’re in the audience and invited up for a set with them. You intuitively know how this person plays their music, as it has been a guide for your own. But when you’re jamming together, they do something indeterminately that informs your intuition in a way you would have never discovered yourself. Not only has the process of designing your inevitable collaboration been valuable to understand what you thought you needed to know to play like your biggest influence, but it also served as the basis for learning something new and unexpected.
Whether it is free improvisation or interpreting a through-composed piece of music (and everything in between), there is a certain amount of experience and training informing the performance. Eventually, when we’ve practiced enough, the music itself steps out of the way and intuition takes over. I think this is where my musical performance connection with technology starts: once you understand the fundamentals of the system, let the presentation of the system get out of the way, and you’re in a better place to evolve your mental map and gain further intuition through disciplines like Chaos Engineering.