zoemusing

[Horses] [Engineering] A reply to we Learn Software through Esoteric Transmission

I got a lot of joy and interest reading the Blog Post by Iris from deadSimpleTech about esoteric transmission.

https://deadsimpletech.com/blog/esoteric_transmission

I really agree that developing true mastery of any discipline requires working with an established master of the discipline in a direct, personal way.

I agree with this both through my engineering career, but also through my Horsemanship. Horsemanship has a lot of similarities with martial arts, engineering and meditation - it requires a lot of discipline and self reflection, you aim towards mastery over a lifetime and learning from a teacher is indispensable.

I wanted to reply with some of my own thoughts.

I think finding a teacher goes beyond finding someone whom you like and respect.

I think it’s really important to understand what your teacher is actually good at.

The person who taught me the most about SQL Server was rubbish at terraform and intimidated by a lot of cloud engineering.

The person who taught me the most about terraform and AWS fundamentally misunderstood a lot of database problems.

The people who I consider mentors in cybersecurity aren’t the best programmers

Both the people who taught me heaps about database performance analysis struggled with communicating their ideas and getting nontechnical buy-in for projects (I’ll leave whether technical experts should need non-technical buy-in for fixing critical performance problems as a separate conversation :D)

The person who taught me how to methodically structure, test and perform high pressure changes like cloud migrations, upgrades, regional failovers etc was slow picking up new technologies and was kind of resistant to a lot of automation

I've worked with people who are geniuses with databases and rubbish with Chef, brilliant with Ansible and crap at documentation, fantastic with Linux and misguided about Finops.

I think half the skill of learning from others is understanding what your mentors are actually good at and then going to them for advice on primarily that subset of skills.

In my horsemanship, I have four different experts who I consider mentors each in their own specialist field - someone who I go to for advice on horse training, someone else for equine physical health, someone else for hoof care, and someone else for rider biomechanics.

They aren't ignorant of each other's fields - My rider biomechanics mentor has opinions on horse training, my equine physical health mentor has knowledge of hoof care. My hoof care mentor has understanding of equine physical health and my horse training mentor has thoughts about rider biomechanics. But it seems to me that the deeper someones expertise is in a particular topic the narrower their focus becomes.

I listen to all of them, and when they disagree I weigh their conflicting views against my own context and against what I know of their relative expertises. I ask clarifying questions, and try to understand the different situations each mentor has found themselves in and how that has influenced their perspective. (Then I usually just take the advice of whoever is actually the expert on that particular subject.)

When a learner picks one mentor as a ‘guru’ and looks at them as a source of truth on everything, then that’s when I think learners get really dogmatic and stupid.

I think another trap learners can fall into is choosing a teacher who wants to have exclusive dominion over the learner. Teachers who think it is my way or the highway, who discourage learning from outside sources, who believe they already know all the answers and the learner should shut up and follow the path the teacher has laid out. I don’t think I need to go into depth about how much this stifles learners.

I do think a great way to learn early about whether a teacher will act domineering is for a learner to let a prospect teacher know that the learner is also receiving mentorship from a third party - the best teachers love collaboration and will encourage the learner, and may even suggest other potential teachers who have expertises outside of their own. The worst teachers will give you an ultimatum “its me or her!”.

I’ve had a situation at work in the past where there were two people each with insanely deep expertise on databases, who worked in different teams and had a knee jerk opposition to anything suggested by the other one. I learnt a lot from listening to their rigorous debates but I was reluctant to seek closer mentorship from either one because it would disrupt my working relationship with the other.

I really resonate with what Iris says about learners requiring confirmation. I’ve had a lot of conversations with a particular mentor recently which essentially boil down to me saying (over and over and over) ’I had an idea where I drew upon my existing expertise to extend the basic practice you taught me, applied it in a nuanced way to suit the context and it worked. Is that ok?’ to which he replies ’Yes.’

I think if direction setting is providing a lifeboat to someone who is drowning, permission is pointing out the water is only shoulder deep and confirmation is agreeing that the learner knows how to swim anyway. I suppose to continue the metaphor then providing a clear example that what the learner seeks is possible would be the teacher doing backflips under the water?

I’ve often found the most important examples from teachers of what is possible have started by really pissing me off. Regardless of whether it is a mentor telling me about how they do zero-downtime major version Postgres upgrades for 50TB+ database clusters or that they managed to train high-level horseback movements without controversial tools - my knee-jerk reaction often starts off as ‘Ugh. Wtf. No way. Surely that’s not possible. Fuck off.’ followed by ‘and surely you don’t expect me to do that?’ and then only after some time seeping the idea in do I start getting really excited and starting looping back around to try to figure out how they did it. I’ve been told that moment of confusion which turns into curiosity and then to seeking is the sign that means I am actually learning something…

I also totally agree that the experience of bringing unconscious knowledge consciously into the forefront of one's mind by having it pointed out to you by a teacher whom you trust is absolutely a thing that happens as well - some of the most powerful learning I’ve ever done in a short amount of time fit this description. I was once in a situation where I was finding repeated tension between the overarching theory I knew intellectually of a thing, and my lived experience of that same thing. I intuitively happened upon a lot of great ideas in small flashes of inspiration at different times, or watched others do the same. But because what I was noticing didn’t fit the dogma - I kind of hid my understanding or didn’t know how to apply what I noticed outside of the specific context in which I noticed it etc etc.

Then I started learning from a new mentor who was suggesting different underpinning theories. And rather than flipping everything I knew on its head and making me re-learn from the basics, this actually validated and connected and uplifted so many of the things I had noticed - massively restoring my confidence in my own abilities. Knowing a new theory behind why the things worked plus a bit of reflection meant then I could go back to my own disjointed intuitive inspirations from across the years, add them to some new stuff, understand how they connect and be able to apply that understanding in new contexts. So I came home to my own abilities simply by having a mentor point out things I already knew to be true.

I think something else which Iris touched on that I really agree with is interpersonal teaching can help apply knowledge to the learners particular context, because of its flexibility. I do think a very large amount of the silly arguments engineers (and horse people :D) get into about things like ‘’is A more important, or B?” “which tool is better, C or D?” “is E dead?” just come from people not understanding their own context and not understanding the context of other people. We can see great examples of this when managers come to engineers and say things like “We should migrate our databases from VMs to DBaaS offerings!” (Or vice versa) without understanding things like how big those databases are, what their HA/DR requirements are like and what are the long term plans for the connected applications. Institutional learning is full of silly, black and white checklists of things which are ‘best practice’. Interpersonal learning I think is where nuance, context, judgement calls and shades of grey are best learnt and taught.

Anyhow thank you to the original author Iris, I do enjoy her writing. This subject was particularly close to my heart and it was delightful to read about, and ponder on then write about