I am a really passionate programmer. I know that sometimes I let this get the better of me and I end up with glazed eyes staring back at me. The problem is that I’ve tasted the Kool-Aid and I want to share it with other people. I’m equally happy sharing what I have learned or what I am currently learning about languages, practices, patterns and methodology. Despite my eagerness to share, I know that some people aren’t necessarily ready to be shared with – so I apologise if I have been over-zealous and upset any of you.
Usually, though, given a one-on-one conversation I can adjust my style to suit the level of the conversation. I’m happy to invent metaphors on the fly that I think will help people relate to the subject and I love to draw ideas out to help illustrate the point.
I am not the best programmer on the planet and I am not always right, but it is through discussion that I learn. I am always ready to change my opinion and have very few absolutely fixed view – maybe just pie charts! I only usually get annoyed when confronted with logical fallacies as they prevent real debate. I learn because I am just as ready to listen as I am to speak.
So here is where things can come unstuck.
I more often than not find that I’m talking to more than one person. This is a fact of life really, I rarely find myself in an exclusive two-way conversation. On the whole, I am dealing with people who can be expected to have a certain amount of background on the topic of discussion. A room full of enthusiastic programmers, architects and development mangers is no problem at all.
It only really goes wrong when there is a great imbalance. A knowledge-thermocline. These bands are wide, but if you are having a conversation within one band, and someone is in a different band – how do you explain something in a way that doesn’t patronise some people while confusing others? If you pitch it to the majority, it bounces on the thermocline and never reaches the others.
In some cases, the subject just can’t be dumbed-down. You are talking about something that builds on a minimum level of knowledge in which case you just leave people behind.
Perhaps the only answer is to give those people some one-on-one time later to help move them upwards and hopefully eventually even into the warmer waters – but I’m really stuck for a good way of managing a group with such a large gap and I hate to leave people behind (even though they sometimes seem to want to be left behind).