TDD Ping-Pong in Ruby
Several years ago, I recorded an in-person pairing session with thoughtbot CTO Joe Ferris.
In it, we use the ping-pong pairing technique to code a feature in Ruby, tested with the RSpec library.
Highlights:
- We have two keyboards! This is generally a good idea, but essential for this style of pairing.
- At 1:42, and 5:10 Joe catches an error I’m about to make, but phrases his suggested fix as a question. This is a great technique to adopt.
- At 9:08, we discuss the pros and cons of pairing using someone else’s editor.
- At 11:00, we cover the importance of fast tests to a TDD workflow.
- At 18:26, Joe shows off a clever way of testing that an object delegates to another.
- At 23:41, I discuss why pointing out typos right away as the navigator is an antipattern.
- At 30:54, we get stuck! This is a great opportunity to see two devs explore their way out of a surprising problem.