The Protege Effect and Teachable Agent
It’s said that people learn in different ways, I certainly believe this statement.
I was awful when it came to sitting in lectures, nothing screams higher learning like listening to an unenthused, underpaid lecturer trying to explain Fast Fourier Transform to a bunch of apathetic hungover nineteen year olds. I found I gravitated towards more practical methods of learning, it benefited me more to sit on my own time, work through the session slides, and mull things over.
Since University finished, I’ve tried experimenting with new ways of learning, especially during my time at Codeweavers. The technical aspect of my job hasn’t always come easy to me, I’ve tried online guided tutorials, youtube sessions, big thick books on C#, even occasionally getting on the floor of the office, stroking the carpet and whispering “tell me your secrets”.
I wanted to conduct some research on learning methods, in particular around the idea of teaching/mentoring others. This is due to a recent shift in my job role which includes the training of new members of staff into the client support team. I began looking up articles based on the search term “teaching others to teach yourself” and this is what led me to find many articles on a term I’d never come across before, known as - “The Protege Effect”.
But, what is the protege effect? Well, It’s the idea that by studying a subject in order to then teach others, you begin to build a deeper understanding and speedier recall of the subject matter. When focusing on how best to explain a piece of information to the next person, we often pay better attention to the key facts and tend to organise our thoughts so that the information being passed on is conveyed in a concise and easy to understand manner. In teaching practice, this is known as “Teachable Agent”. Cornell University has an excellent short article on this, that you can see here.
Our development team, use this agent all the time. A big part of our day to day development work is Pairing, the idea that two heads are better than one. Walking round our office you’ll often see a fairly senior developer pairing with a more junior developer- not always, but fairly often. This is a way of developers reaffirming their knowledge by sounding it off a colleague as well as aiding the more junior developers growth. Overall it helps in gaining domain knowledge, learning how we, as a company, work and develop our software, at the same time hopefully developing good coding habits.
Client Support, which is the team I’m a part of, are now trying to adapt some of these techniques. With new members of staff we’re working on shadowing sessions, not only in hopes of the shadower picking up a few things, but the shadowee gets to explain how they work and field questions. In doing so they cement their understanding of the way we work and why we do it.
Overall, we can learn a lot from teaching others. It builds communication skills as it’s necessary to ensure the person you’re tutoring gains a good working understanding of what you’re explaining. Before explaining anything, however, you yourself need to understand what’s going on. Not only is this invaluable to an organisation striving to be a learning organisation, imagine the customer service benefits. If all staff are easily and clearly able to explain a situation to a client, not only does this put their mind at ease, it creates confidence in the client that who they’re speaking too has a deep understanding of their needs.
This is something our Client Support team are always trying to do and we are very successful at this. Whilst nobody's perfect, we can always improve and I think taking advantage of techniques such as Teaching Agent will help us achieve this.
Watch this space.