Susan Cain’s recent TED talk, The Power of Introverts, has a sparked a lot of discussion amongst Agile practitioners. Susan argues that forcing naturally introverted people to work together in groups is less effective than giving them privacy to work alone.
Keith Sawyer followed up with a well written Critique of Susan Cain’s Attack on Collaboration, as did Jon Evans, with Pair Programming Considered Harmful (where Jon concludes that no, it’s not at all harmful).
The development team here at Pluralsight has been pairing almost 100% of the time this year, and after watching Susan’s talk, I got the group together (yikes!) to talk about it. Most of us tend to be introverted to some degree, some more than others. I know that for me personally, pairing has certainly helped me be more effective as a developer. The intense focus we reach when we pair and the mix of ideas that each brings to the table, as well as the second pair of eyes that helps catch mistakes before they get into the code base, has all been incredibly eye opening for me. And it’s really quite fun. It’s helped the team members bond with each other and enhanced the feeling of trust among us.
It was interesting to hear one of our most introverted members adamantly defend pair programming during our discussion. He’s done a lot of pairing in the past, and he also finds it to be fun, rewarding, and more effective than programming on his own. I started getting the feeling that he was a bit worried that I was going to encourage the team to stop pairing.
I think there may be a difference between a group brainstorming session, and a pair of people working together to solve a problem. Once there’s three or more in the room, it’s easy for an introvert to feel in the minority and let the group steamroll over his or her ideas. But in one-on-one situations, each partner has equal say, and it’s less likely that “group think” will take over. It’s a lot safer in a pairing environment for an introvert to take an opposing view, or offer criticism. Indeed, that’s exactly what pairing is all about.
So while I think Susan has some interesting points, she’s not convinced me to abandon or in any way slow down our pairing effort here at Pluralsight. I’m going to let my team tell me how they want to work, and they’ve made it clear that they highly value pair programming.
Are you an introvert who has experience pair programming? I’m curious to hear what you think of all this. Comment here to share your views!