I’ve been doing pair programming for two years now. During this period I gained a lot of experience, so it is time to do a little retrospective and organize these experiences. I hope that you find something useful here, or even better, you may start to do pair programming.
Basics
Pair programming is one of the 12 core practices of eXtreme Programming in which two participants sit together and do programming using one computer. One of them owns the keyboard, while the other one assists. They are continuously discussing how and what to do.
What Worked for Me
After trying out several different pair programming styles, I’ve come up with a list of things which worked out quite well for me:
- Use the same development environment as the others
- Close all applications except the development environment
- Pick a pair for the whole day and do not switch pairs during the day
- Do pair programming only the agreed amount of time
- Work with different people during the week if possible
- Change roles (keyboard owner and associate) frequently, at least once in every 30 minutes, but never in the middle of the TDD cycle
- Be honest, communicate a lot and be cooperative and patient


