Pair Programming improves your communication skills

Many developers in our industry prefer a dark corner to the presentation podium. This is often explained away with references to introverted personalities and geekish tendencies. While this may be true for certain individuals, there are definitely many benefits to breaking away from this stereotype. One of the best ways to progress in the business world is to develop strong communication skills – customerswant to be understood and the combination with technical ability provides a powerful skillset when understanding problems and providing solutions. As with so many things in life,excellence in communication can be achieved through lots of practice.

Pair Programmingis the process where two developers work together on the same code with one person typing and both constantly discussing the requirements, design and code. Pair Programming alsoprovides an excellent opportunity to hone your communication skills. To be “in the zone” when pair programming requires that you continually verbalize your ideas in a way that your pair partner can follow your thinking and stay engaged.

This sounds easy, but to do it effectively requires:

  • Verbalizing raw ideas as they come into your head in a way that your pair can follow
  • Asking questions when you don’t understand
  • Focusing on someone elses way of thinking to stay engaged in their thought process
  • Moving in a methodical way so that your pair can keep up
  • Compromising on an approach to a solution and agreeing together on the next steps to take

Any periods of silence when pairing can often indicate a problem:

  • The pair is stuck and doesn’t know how to proceed
  • One or both members of the pair are distracted and are no longer engaged
  • One member of the pair is driving while the other has lost interest
  • One member of the pair is proceeding without explaining their actions to their partner (and that partner has given up asking questions)

As you can see it requires a lot of effort and mostly soft skills to bring out the best in your own technical thinking and that of your pair partner.

We value communication so highly that we practice Pair Programming wherever possible on our development team. We also encourage our team members topresent at development team meetings, user groups and code camps to further improve their communication skills. This is good for our team in that our productivity is enhanced through all the apprenticeship/cross-training and our verbal/soft-skills are enhanced daily through all the practice.

Come along to the upcoming Code Camps in the Mid-Atlantic area to see several of the Thycotic team members present and many other great speakers too.

Jonathan Cogley is the CEO and founder of Thycotic Software, a .NET consulting company and ISV in Washington DC. Our product,Secret Server, is a secure web-based solution for teams to secure their passwords. Where do you keep your passwords or do you use the samepassword everywhere?

  1. mxmissile
    March 20, 2007 at 3:22 pm

    You forgot one requirement.

    *Brush teeth daily and mouth rinse.

    😉

  2. thycotic
    March 21, 2007 at 11:40 am

    Yes – personal hygiene and sickness definitely comes into pairing. Just yesterday we had to disinfect a keyboard when one of the team had called in sick.

  3. http://
    March 21, 2007 at 10:19 pm

    nice blog on pair programming.

  4. http://
    September 19, 2007 at 7:30 am

    It is effcient work process. The way of development method is very good. Important point the pair of two members are good at work and responsible.

  1. No trackbacks yet.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com 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 )

Google+ photo

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

Connecting to %s

%d bloggers like this: