An Introduction to Pair Programming

Throughout CSE 30 you will be working closely with a partner. This is something you will be asked to do repeatedly in other courses at UCSD, as well as in your career. At first this might be uncomfortable. You might feel like your partner is holding you back, or like you are holding your partner back. This is natural–different people work at different speeds, and someone who works a little faster is not “better” or “smarter” than someone who works a little slower. Even in the face of these differences, we want you to work together. In particular, it is not OK to abandon your partner and simply work on your own. If you and your partner both agree, you can do small pieces of the project individually, but you must synch up again regularly, and we discourage this style of work.

If you find that you and your partner work at vastly different speeds or have styles that simply cannot work together, we will reassign you to work with someone else. However, this should be a last resort. Remember, in your post-school life you will necessarily have to work with others, and you will not always get to choose who these people are. Learning to work productively with others (in particular with anyone else, not just people you choose to work with) is difficult, but it is also an essential skill that you cannot be successful without.

You cannot change partners during the same assignment. If you decide not to work with your partner you have to give them a written notice at least three days prior to an assignment deadline. Failure to comply with these guidelines may cost both you and your partner the grade on the PA.

To “learn the do’s and don’ts” of pair programming and to see pairs in action, view this entertaining (if a bit corny/cheesey) video about pair programming from North Carolina State University: An Introduction to Pair Programming for Students.

Authors: Phill Conrad and Diba Mirza