Skip to content

Latest commit

 

History

History
72 lines (48 loc) · 3.41 KB

pair-programming.md

File metadata and controls

72 lines (48 loc) · 3.41 KB

How to Pair Program

Week 1 Keywords and Questions

  • Driver
  • Navigator
  • What is something you need to keep in mind when pair programming?

Prerequisites

Motivation

Pair programming is a very common way to write code and solve software engineering problems. Pair programming generally produces higher-quality code, meaning fewer bugs and better readability.

"If you don’t like pairing, don’t pair. But be prepared for the folks who have developed the pairing skill to fly past you."

  • "Uncle" Bob Martin

Which companies use pair programming?

Objectives

Participants will be able to:

  • Explain why pair programming is useful
  • Show how to drive and navigate
  • Demonstrate how to be a good pair partner
  • Outline potential challenges

Specific Things to Learn

  • What pair programming is
  • Why pair programming is useful
  • How to drive and how to navigate
  • How to be a good pair partner

Lesson

Common Mistakes / Misconceptions

  • "I could be doing this so much faster on my own." Sometimes, this is true. But a big drawback to coding on your own is that you're far less likely to catch bugs early on. And, since no one is checking your code, the readability of code you write alone may not be as good as the readability of code you write with someone else. So while you may be able to write code more quickly by yourself, the time it takes to work through bugs on your own usually negates this advantage.
  • "Real programmers do not program in pairs." Some companies exclusively use pair programming (Pivotal Labs is one such example). Many companies use pair programming only at certain times or in certain situations. Some companies don't practice pair programming at all.
  • "I don't know what's going on or what my pair is doing, so I'm just going to sit back and watch them." Pair programming is not pair programming when only one person is doing the work. Speak up and advocate for yourself. Ask questions and stay involved! If you need a break to reset your mind, ask for one.

Additional Resources

Check for Understanding

  • What is pair programming?
  • What are the benefits of pair programming?
  • What does each person in a pair do while pair programming?
  • What should you do if your partner's pace is very different?