CS 70

Thinking About Pair Programming

In addition to reviewing the Pair Programming Policy, choose one of the following to read:

Which reading did you choose?

Reflecting on Pair Programming

Reflect on the following questions and make notes. Bring them with you to lab on Wednesday, where we'll discuss them in small groups.

  • When you and your partner are in the middle of working on a homework, what searches would be smart uses of Google or Stack Overflow, and what on the web would cross the line into cheating or plagiarism?
  • What are some of the benefits and costs of doing pair programming in CS 70?
  • What are some ways to be a jerk to your partner? (That is, what are some specific behaviors to avoid?)
  • What qualities will you be looking for in your pair-programming partners?
  • What are the advantages of pair programming (in CS 70, or generally)? What are the disadvantages?
  • How can “Pair Programming” skills improve with practice?

Pick just one of your answers to the questions above and share it here. All answers will be displayed anonymously below.

You can submit multiple times if you have multiple answers you'd like to share, or if you'd like to respond to someone else's answer.

Pair Programming: Our Expectations

  • LHS Cow speaking

    We recognize that as students, you're navigating the expectations, requirements, and norms of multiple disciplines all at once!

  • RHS Cow speaking

    To help make sure we're all on the same page regarding how pair programming and academic integrity expectations overlap in CS70, let's consider some scenarios.

  • LHS Cow speaking

    If you have any questions about these expectations, we're happy to discuss them!

  • RHS Cow speaking

    And in general, if you're not sure if something (a resource, a behavior, etc.) is acceptable, it's always best to come ask us first! We're happy to help you navigate the expectations of computer science as a field (and of CS70 as a class), and that's always easier to do if you're open and proactive in your communication with us!

Scenario One

Students A and B are paired. They try to compile their code, and get the error

corroborate.cpp:213:1: error: C++ requires a type specifier for all
 declarations

Seeing no obvious problems at line 213, column 1 of corroborate.cpp, the students enter

“C++ requires a type specifier for all declarations”

(the generic part of the error message) into Google. The first hit leads them to a Stack Overflow post explaining how someone else encountered and fixed that error. A and B realize their code has the same problem; they fix it, and the error disappears.

Is this behavior

Scenario Two

Students A and B are paired. They start up a Live Share session (so they can talk to each other), then decide to double their coding speed by editing two different files at the same time.

Is this behavior

Scenario Three

A CS 70 homework assignment asks for an implementation of Red–Black Trees. This data structure seemed to make sense in class, but afterwards Student A realized that some parts still weren’t clear. Before starting the homework, A browses the web and reads some other high-level explanations of Red–Black Trees, being careful not to look at detailed implementation discussions or source code.

Is this behavior

Scenario Four

Students A and B are paired. They grab a spot in the lab where they can both view and edit their code on one computer. A starts working on the CS 70 assignment. B has a history paper due at midnight, and wants to make progress on CS70 and the history paper, so B opens the history paper on their laptop and starts making small edits, while occasionally glancing up and making comments on A’s code.

Is this behavior

Scenario Five

Students A and B are paired. Before they get very far, B falls ill. Several days later, just before the assignment is due, the professors are asked for an extension (because B was too sick all week to work).

Is this behavior

Scenario Six

Students A and B are paired. They have a bug in their code they just can’t figure out. In a public Piazza post, they paste the lines of C++ code that they think are responsible and ask for help.

Is this behavior

(When logged in, completion status appears here.)