Step 64: Pair Program and Feel the Flow~

Birat Rai
2 min readMay 21, 2019

--

This is the 64th Step towards gaining the Programming Enlightenment series. If you didn’t learn the 63rd Step, read it.

Pair programming is not a “go faster” strategy, it is a “waste less” strategy (which often results in going faster) . ~ Kent Beck

Image Source: Reddit

What is Pair Programming?

Also, know as Pairing. It is an agile software development technique in which two programmers work together at one workstation.

Why do Pair Programming?

  • It is a team building social skill which will get the work done while building cooperation within the team.
  • It increases software quality without impacting time to deliver.
  • Even though 2 people working might mean less work done, instead it will add as much functionality with higher quality.
  • Helps new team-mate to speed up through the on-boarding process.
  • Helps Junior developer to sharpen their skill, while Senior developer can learn by sharing the knowledge.

How to do Pair Programming?

Do pair programming by following Ping-Pong programming.

  • One, the driver, writes code.
  • While the other, the observer or navigator, reviews each line of code as it is typed in.
  • The two programmers switch roles frequently.
  • In addition, each member performs the action the other is not currently doing: While one types in UnitTests the other thinks about the class that will satisfy the test.

Common Misconceptions in Pair Programming

  • You have to do pair programming if you’re doing an agile process.
  • Extreme programming forces you to do Pair-Programming.
  • I don’t need to try pairing because I know I won’t like it.
  • Pair-programming halves the productivity of developers.
  • It’s only worth pairing on complex code, rote code yields no advantage.

TL;DR Paired programmers are only 15% slower than two independent individual programmers, but produce 15% fewer bugs.

--

--

Birat Rai
Birat Rai

No responses yet