Pair Programming vs Solo Programming

I’m in the middle of taking a Engineering SaaS course offered by two great Berkeley professors (Armando Fox and Dave Patterson), and one of the core concepts they are advocating is the benefit of pair programming.

Unfortunately, I’m finding it very difficult to find someone to pair with remotely, even though the technology using Google Hangouts seems to be a great tool for enabling remote pair programming.  In my case, I can only free up pockets of 15 minutes here and there to work on the class exercises, which does not lend itself well to finding a stranger on the web to pair up with and work in those tiny chunks.  Interestingly enough, I am finding that using test driven development while working in 15 minute chunks is working really well, as TDD allows me to easily pick up where I left off with confidence in the quality of code that I’m creating.  Now I will say that I’ve participated in and even facilitated several coding dojos over the past 12 months, and during those sessions we have used pair programming in person, and I’ve found that the technique of switching roles between one writing tests and one coding to pass the tests has been great for pushing the thinking in real time towards developing quality solutions.  Also, the benefits of a second pair of eyes and a second set of experiences while coding also helps sharpen ones skills.  Coding exercises done as a pair definitely has value as a learning experience.

About Chris VanHoose

Principal Software Architect at CT Lien Solutions
This entry was posted in Software Architecture and tagged , . Bookmark the permalink.

Leave a Reply

Please log in using one of these methods to post your comment:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

This site uses Akismet to reduce spam. Learn how your comment data is processed.