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.