By Supakorn Laohasongkram and Francis John


What is Pair Programming?

According to Wikipedia, ..

"Pair programming is an agile software development technique in which two programmers work together at one workstation. One, the driver, writes code while the other, the observer, pointer or navigator,[1] reviews each line of code as it is typed in. The two programmers switch roles frequently ."

In our opinion, Pair Programming is a method of development by which two or more persons work together on a coding project simultaneously. Typically one person will be driving while the other people will be navigating.

Driver and Navigator

Simply put, driver is the person who is currently editing the project while the navigator help steer the driver as well as the work into the right direction.

Benefits of Pair Programming

Fewer Mistakes

If we work alone we can easily miss and overlook simple things. However, when we have someone working together he or she can point out the mistakes that we might overlooked.

Efficiency

While writing code in pair programming, you have two people who actively understand the thought process and logic behind the code. This reduced the time for bringing on someone to QA your code, as it is happening simultaneously. The quality of code after a pair programming project will be higher and there are two people who can bounce ideas off of each other to alleviate any gaps in knowledge.

Better Learning

When pairng with people who are of different experience levels, it can be a great opportunity to quickly even the experience playing field. If first learning coding it is highly beneficial to have a navigator alongside to answer questions and point out any mistakes that you may have encountered.

Another benefit that comes with Pair Programming is that you get to learn all the little tricks and technique which your pair has been using.


Reflection

While pairing we were able to get a basic wireframe, content, structure, and design for this website in a relatively short amount of time. Having a second person to fill in any gaps in knowledge, point out any mistakes, or provide any advices is beneficial to quickly creating a web page.