Random Tip

Experiment with different techniques for grouping students into pairs to find out what works best in your classroom because pair programming is a great tool that can improve student’s coding skills and syntax proficiency.

Share Experiment with different techniques for grouping students into pairs to find out what works best in your classroom because pair programming is a great tool that can improve student’s coding skills and syntax proficiency. with FacebookShare Experiment with different techniques for grouping students into pairs to find out what works best in your classroom because pair programming is a great tool that can improve student’s coding skills and syntax proficiency. with Twitter
  • Pair programming is a multifaceted tool that can be a great addition to your classroom.
    • When pair programming, always restrict paired students to using one computer.
    • One student is typing, the Driver, while the other student is watching, the Navigator.
  • Below are a few examples of different ways to group students into pairs:
    • Like Abilities: Pairing students with like abilities prevents a power dynamic where the weaker student only watches the advanced student code.
      • Disparate Abilities: Conversely, pair A-level students with C-level students (or B with D) to create opportunities for the succeeding students to learn by helping their struggling partners and for the struggling students to learn by receiving personal help from their pair.
    • Rotary Programming - In this style students don’t switch roles; however, the navigator switches to a new driver after a set amount of time over and over again. This gives navigators a chance to experience a lot of different code.
      • Divide the class in half.
        • One half will be Drivers and the other half will be Navigators.
        • It doesn’t matter how students match up into pairs since they’ll be switching partners frequently.
      • After a certain time limit (e.g., 10 minutes) have all the Navigators rotate to the next station (for example, "to the next PC on the left").
      • You can have the whole class rotate as one large group, or set up smaller groups that rotate internally.
        • With smaller groups, Navigators get the chance to see the same code multiple times.
          • This gives the Navigators a valuable opportunity to watch the program evolve; to see the various ways different people changed, fixed, and furthered the code.
      • Note: It’s important that Drivers and Navigators switch after a specified period of time (a class period, an hour, etc.).
        • When this happens the old Navigators are now sitting down with the code.
        • The old Drivers are now navigating and rotating around the class.
    • There are also different ways you can organize the ways students switch roles between Driver and Navigator. Here are two variations:
      • Variation 1: Students are given a set amount of time (X minutes) before they have to switch who is typing on the machine.
      • Variation 2: Each student has a particular portion of the code, like a method, they are responsible typing. Once they are done the other student takes over.
  • If pair programming with both students sharing on one programming assignment isn't appropriate, you can still create pairs.
    • In this scenario both students use their own computers, but they are required pairs to check-in with their partner to make sure each other’s code is accurate in both logic and syntax.