Pair Programming

I’m doing much better this week with the pairing. Part of it is having a partner that is pretty laid back with regard to the speed I am moving at. It also helps to explain not just my reasoning for something but where my brain is at. I’ve found myself often saying stuff like: did you get this? or “do you under stand what this paragraph is saying…” I suspect my partners have been having similar difficulty in communicating where they are at and what their thinking is.

Also, apparently part of the role of the navigator in the ‘pair’ is to try and predict where the code should be going. We have done very little of that, partially because in the groups I have been in we tend to talk through most of the projects a step at a time.

Pairing is very different from group study, but it seems to be an effective way of tackling complex programs/problems. I’ve noticed when I work on my own at home that I have started to miss having someone nearby to look over my code and catch small errors, or tell me where I might be confusing myself.

Confusing yourself is very easy in programming, even when logic is one of your strengths.

Finally, sometimes the key to understanding where other people are at is just stopping your own thought process for long enough to listen. It’s very hard when you are in ‘learning mode.’ When I am learning, I get so focused on the logic of what is going on, and the implications that open up with new concepts.

It’s a great frame of mind to be in if both you and your pair understand what’s going on. Not-so-much if you are in different places… Stop… listen… explain… listen… listen some more… repeat what you heard… ask questions… listen. It can feel very slow, but it helps a lot.

That’s the trouble, we are trying not just to “pair” but to function as a mini-learning team at the same time. So we aren’t doing true pair programming, at least not yet. It’s almost like trying to do a three-legged-race (a race where pairs of contestants tie one of their legs together) while simultaneously learning to walk.

I guess the better analogy would be the pilot co-pilot scenario.

Pilot: “Hey navigator, how come you didn’t tell me we were 1000 miles off course?”

Co-Pilot: “Well I don’t know what any of these instruments do.”

Leave a comment