Todays word is “Pair programming”
Two persons, one keyboard, preferably with two duplicated screens.
The keyboard passed back and forth.
The pair does not have to have equal time on the keyboard. Just multiple people present and productive software engineering being performed, then it is pair programming.
Passing the keyboard gives you the off-beat repertoire of focus change, picking up long term concerns. The brain gets its timeout without you grabbing a coffee, visiting the cubicle next to you, checking the mail or opening the web browser.
- Blind zones and derailing are reduced to the least common denominator.
- Experience and resources is more than the sum of the two.
“Benefits of pair programming” is obvious to anyone who have given it a serious go. Rather, I’d rather be discussing “the risks of solo programming”.
Having to sell every story, you learn to communicate intent, to avoid tangents, to break out of your mentality in order to try the other perspective on for size.
And it’s social. Software is more and more about people, processes, communication and interaction.
Something that I think this post’s co-author, Anne, agrees with.