At Atomic, we do a lot of pair programming. When pairing, there is usually a “driver.” The driver “steers the car,” meaning t

“I Call Shotgun” – Contributing as the Navigator When Pair Programming

submited by
Style Pass
2022-01-14 15:30:03

At Atomic, we do a lot of pair programming. When pairing, there is usually a “driver.” The driver “steers the car,” meaning they actively write code and “drive” through the codebase. There is also the “navigator.” The navigator isn’t actively writing code.

On the surface, being the navigator might sound a bit boring. After all, the navigator isn’t zooming through the code base or writing up the next test case. But there are a lot of meaningful contributions to make as an involved navigator. Below, I’ll go over some ways to contribute to great code as a navigator.

One of my pairs would call me a “human linter.” Though, hopefully, the driver has a linter installed and is writing tests, a human can still decipher syntax errors better than a compiler and catch small logic errors faster than a test.

Sometimes, when programming by oneself at the end of a long day, a programmer might spend 10 minutes tracing an error down to realize they, for example, accidentally typed an OR instead of an AND. A navigator can help with this by saying, “Hey, did you mean to make that an AND?” as soon as the driver types the culprit code. Or, the navigator might point out: “Hmm, the syntax of that type looks a little off. I think you meant to use a | instead of a ,.”

Leave a Comment