With GitHub, developers have the opportunity to share and collaborate with other developers on their projects. But not all collaboration happens on GitHub. Let’s take a look at why pair programming is an essential skill for developers to learn.
Pair programming is a collaborative effort between two programmers that share a single workstation – one monitor, keyboard, and project. Each programmer has a defined role: the driver or the navigator.
Think of pair programming as an analogy of driving in a car. The driver has their hands on the steering wheel, while the navigator controls the map. However, they both work together on what the best route to take is.
Let’s step out of the car and sit in front of the computer. The driver works the computer, entering the code – the syntax, semantics, and algorithms. The navigator helps guide the driver. They make suggestions, point out typos, question the sequence of actions, and consult with them about what to do next. Teams swap roles on a regular basis to give each developer a chance to contribute equally to the project and sharpen their skills.
Pairing results in better designs, fewer bugs, and much better spread of knowledge across a development team, not to mention an increase in productivity and time management.
Fitting in the Full Stack
Pair programming is an important skill for Galvanize Web Development students to learn. It teaches each partner to be patient, have a voice, and listen actively – all while reinforcing how important teamwork is. It also makes developers more open to new ideas and constructive criticism, which allows them to produce better work.
Code is written more efficiently when two students work on it simultaneously. Both developers are fully aware of the code, how it works, and the process in which it was created.
Developers have different talents, perspectives, and backgrounds, and pair programming is a good way to highlight them and also improve their technical skills.
Stay tuned, we wrap up the journey by piecing together the components that make up a Full Stack Developer.
Contributions made by Wes Reid, Galvanize Web Development Instructor.