Full time vs. part time pair programming — Which one is better for you?
Ice figure skating pair with shadows on ice image via Shutterstock
Pair programming can be a nightmare for some developers; for others, it’s normality. In a previous article, we revealed the perks and pitfalls of pair programming. Now we are trying to answer the following question: Full time or part time pair programming —which one is better?
Daniel Kaplan, Software Consultant at Pivotal Labs and founder of Sleep Easy Software, shared his experience with pair programming in a Medium post published not long ago. His post is part of Pivotal’s Built to Adapt, a publication which shares stories and insights on how software is changing the way businesses are built.
Pair programming has two main actors: the driver, who writes code, and the observer, who reviews each line of code as it is typed in. Kaplan wrote that even though he always feels productive when he does everything by himself, it doesn’t always feel like he is as productive as possible. Hence the saying “two heads are better than one.”
Although not communicating your idea can be helpful in certain circumstances, sometimes presenting it to your colleague can help enhance the outcome. Furthermore, you may only realize how much pair programming helps you once you are on your own again, he opined.
If you want to make pair programming work, you need to know when to work together and when to hit the brakes.
SEE ALSO: Perks and pitfalls of pair programming
Full time or part time?
Kaplan pointed out that when you program alone, interruptions can affect your work because you have to stop what you are doing each time someone needs your help or input. This problem can be easily fixed if you work in a team: one person can work while the other joins a meeting.
If you want to make pair programming work, you also need to know when to say stop. There are tasks that can be easily done by one person, so the ideal solution is to work separately and get together at a later time to make sure you are on the same wavelength. Although you may be working in a pair on a daily basis, one could argue that there is no such thing as full-time pair programming, since doing some things separately is part of a successful strategy.
Sometimes it’s better to work separately
There are situations when part time pair programming is the only solution: for example, when the team consists of a senior developer and an inexperienced developer. According to an article by Sandro Mancuso, managing director at Codurance, even though pair programming can help experienced developers mentor inexperienced developers, this arrangement may not work for the latter because he may not spend enough time researching and (why not) making mistakes.
Although the information the junior developer receives from the experienced developer will indubitably help, sometimes it’s better to make your own mistakes. Therefore, the best case scenario is to start as a pair, establish some directions and then allow the inexperienced developer to carry out the tasks on his own, Mancuso concluded.
If you want to read more about the productivity of pair programming, this paper may help you understand when and why it’s better to pair two novices or two experts.
What would you choose? Full time or part time pair programming? Tell us your story in the comments section below.