Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

Pair Programming

Agenda

  • Introduction to Pair Programming.
  • Describing the project.
  • Pair programming a project.
  • Switching pairs to explain the solution to each other.

Goals

  • Improve our way of software development.
  • Experiment with TDD.
  • Experiment with Pair Programming.

TDD - Test Driven Development

  • Write test first. It fails.
  • Implement code.
  • Test passes.
  • Git commit

Why in pairs?

  • Learn from each other.
  • Learn how to express our ideas.
  • Continuous peer review.
  • Better solutions.
  • Less bugs.
  • You already know how to program alone. Let's try something else now.

Pair Programming

  • There is no single right way to do it. Experiment!
  • Verbalize everything
  • Driver - Observer
  • Driver - Navigator
  • Driver - Navigator - Observer

Llewellyn's Strong Style Pairing

For an idea to go from your head into the computer it MUST go through someone else's hands. Llewellyn's strong-style pairing

Llewellyn's Strong Style Pairing: Driver

  • Trust your navigator
  • Become comfortable working with incomplete understanding
  • What if I have an idea I want to implement? - Switch!

Llewellyn's Strong Style Pairing: Navigator

  • Give the next instruction to the driver the instant they are ready to implement it.
  • Talk in the highest level of abstraction the driver can understand.

The Project

Mastermind

Retrospective