Pair programming

Uit De Vliegende Brigade
Naar navigatie springen Naar zoeken springen

Pair programming means that two programmers work together on an issue or task. Additionally, the idea is that the pairs often change partners, so that everybody on the team works with everybody else (so far as feasible concerning expertise).

How?

  • In the days of working with a team at a physical office, it meant that e.g., one uses the keyboard and mouse and the other only does the talking
  • This easily translates to distributed teams working over Slack, Zoom, or whatever.

Advantages

There are surely more reasons why pair programming could be a good idea than only these:

  • Knowledge diffusion: Maybe the most important reason: By frequently switching partners, all developers get in contact with all information - Folks don't become islands
  • Quality control: Working together may work as quality control.

Criticism

Pair programming is one of the pillars of Extreme Programming and it's a main reason why I prefer Scrum over Extreme Programming:

  • Inhumane: I don't believe that pair programming is suitable for every programmer: It's a rather extrovert approach to programming, and that's not for everybody
  • Effective: I doubt if it really makes programmers more effective. Maybe code reviews are better.

Sources