sometimes nothin' can be a real cool hand

« New routine. New blog. | Main | Angry Fruit Salad »

Unconsciously Competent Pair Programming

Listen to this article Listen to this article

On a recent trip to London, I spent some time chatting to Dan North about Neuro-Linguistic Programming. As context for the discussion, Dan described the four states of the conscious competence learning model. Those states were:

  • Unconscious Incompetence
  • Conscious Incompetence
  • Conscious Competence
  • Unconscious Competence

The idea behind this is that to learn and master a new skill you will go through these stages until you achieve Unconsious Competence and therefore perform it instinctively.

In another unrelated (or at least I thought so at first) discussion whilst working on my current project, I had a chat with some colleagues about how we could improve the pairing programming skills of our team. We spent some time coming up with some patterns that we would like to see occur during pairing sessions on our project. Some come from the pair programming book by Laurie Williams, and others are things that we have come up with from our experience.

Here's a summarised list (I'm probably not doing this justice, as I'm not going to explaing what they all mean - thats fodder for another blog) of the things we came up with:

  • Keyboard shuffle
  • Take a break
  • What's yours is mine
  • Humble pie
  • Partner swap
  • Confident idea <--> Hear someone out
  • Talk <--> Listen
  • Compromise <--> Stand firm
  • IDE Standard

So now that we had a bunch of stuff we wanted to teach the team, we had to figure out how we were going to do it. This was the point where I linked in the stuff that Dan had talked about, and we decided we needed to go through the conscious phases described above. In other words, a couple of us will try to coach the team by example, and we will verbalise (and therefore bring into people conscious thought) the patterns as we do them.

"I've been typing for a while now, so lets do a Keyboard shuflle so you can have a go"

Will it work? Dunno yet. We're giving it a go. Stay tuned...

Comments

Nice post, but kind of a letdown. I thought you were going to describe some NLP mind-tricks for getting people to want to pair-program. :-)

Neat tricks but I think they still miss the problem.

To throw it to an extreme: "I don't like pair programming because it makes me change my development style away from one which I have spent many years optimising to my likening"

Anything that shows new ways to do pairing will by definition exhibit that problem.

Post a comment