I want to show off TDD on some more "realistic" projects.
Andrew Edstrom and I have just released a video course on Gumroad, Intro to Pairing.
It's hard in the way I imagine being a tiny plant sprouting in the desert is hard, or a succulent clinging to a seaside cliff. It is growing hard.
A really good day of pairing looks like this.
There’s something about struggling with a problem that really fixes it in the brain.
So you’re stuck watching your pair do things. You don’t understand what’s going on, and you can’t seem to get enough of a handle on the problem to be able to contribute. How do you get out of this situation?
Pairing gives engineers a way to show off to each other without shipping really complicated stuff.
This is great if you're dealing with someone who's trying to kill you. You can use it to overcome some major disadvantages in raw power with enough speed. It's a lot less great if the mental model that you’re invalidating is your pair’s mental model of the codebase you’re both working on.
This article describes the key skills required to be a good pair, a pair who is productive and rewarding to pair with for most people.
I had to confront a lot of my fears about myself, sometimes every day. I had to learn to show someone else all the things I didn’t know, my limitations as a human and a software engineer.