<< Back

Pair Programming for Homework Assignments

On This Page


Rather than working alone on a homework assignment, you may work with one other person provided that you follow the instructions on this page.

In pair programming, you and your partner are both present and work collaboratively at one computer. One person is the "driver" and types the code into the computer. The other person is called the "navigator" and actively checks the work entered by the driver. Each partner spends about one-half of the time for each project as the driver and the other half as the navigator. Together, you and your partner design, produce and test the code. Each solution must be a true joint effort equally owned, created and understood by both students.

Splitting up the assignment into parts and working on them separately is not permitted and violates both the letter and the spirit of the academic honesty code for this course.

Rules of Pair Programming

  1. Work with one other student of your class, no more and no less, for an assignment.
  2. Because of the COVID-19 outbreak, you may pair program using video conferencing
    1. Both students must share screens and work on the same computer (possibly remotely) at the same time
    2. Tools include: Discord, Skype, and Zoom
  3. Periodically, no less than every half-hour, change who uses the keyboard and mouse so that each student has a chance to drive.
  4. Both partners must turn in the same assignment code.

Do my partner and I each need to turn in the assignment?

Yes, you must both turn in assignments for record keeping purposes. However, you both need to turn in the same project code and will both receive the same evaluation on all the programming projects.

If there are multiple programming projects for an assignment, can I pair program on just one program?

Yes and no. The purpose of pair programming is that you work on the entire set of projects together and turn in the same project code. It is prohibited to work on different programs with different partners because it is too hard to track. If you do work on only one project out of a set with another person then you will get no extra credit for pair programming. If you do work on a project with another student, make sure you include both your names in the assignment file and list which ones you worked on together in the README.TXT file or you will need to answer questions regarding academic integrity.

If my partner did not help with most of the assignment, should I still put his or her name on the assignment?

No. If you completed the assignment on your own, then you should turn in your assignment with just your name on it. If you started working with another person and then completed the assignment on your own, then state who you worked with and the reason why you did not finish the assignment together.

If I start working on an assignment with a partner, and then change my mind, what can I do?

Once you decide to pair program, you may not change your mind and complete the jointly written code alone. Instead, you must erase all your code and start over. If your assignment is similar to another student's, and the other student is not a declared pair-programming partner, then you will need to answer questions regarding academic integrity.

If I start working on an assignment by myself, and then change my mind and want to work with a partner, what can I do?

If you have worked individually and have completed more than 25% of the assignment, then you must complete the assignment on your own. Alternatively, you may scrap any solution that either of you generated and redo the assignment together.

Further Reading on Pair Programming

If you would like to learn more about pair programming, try these links:

Pair Programming: The "rules" from www.extremeprogramming.org.

All I Really Need to Know about Pair Programming I Learned in Kindergarten: Good suggestions on how to program in pairs.

<< Back