Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Apart in a Pair Tree

Apart in a Pair Tree

Pair programming is important because it fosters communication about code and improves code quality early in the lifecycle sometimes even faster than TDD. Remote pair programming is harder to accomplish, but is necessary as workplaces become composed of more distance workers. Learn why you should pair remotely and how to do it successfully through this fun story of my journey from cubicle land to productive remote pair guru.

Not so long ago, I worked in a shop where the evil cubicle overlords sought domination by dividing the developer minions into single person teams. The land was divided into cubicle egg crates that removed any communication other than that which happened in hours long meetings. The developers were isolated and cut off from the world. They used headphones to block out any attempts at communication. Terms like "Advancement of craft" and "Pursuit of exciting new languages" were never spoken.

As a lone developer, seated in a corner cubicle, I broke free and commenced a journey seeking out Ruby knowledge. Alas, I was the sole Ruby developer in a very small town. Armed with a laptop and microphone, my quest took led me on a journey through the interwebs of pair programming and google plus hangouts. Come along as our my story unfolds. Along the way, we'll go over the dark secrets of navigating the windows and panes of the mystical TMUX and Vim. We'll discuss the anti patterns to avoid and the patterns to follow that can ensure success. We'll discuss tricks and techniques both novices and intermediate pair programming teams will benefit from.

Jim Nanney

July 11, 2013
Tweet

More Decks by Jim Nanney

Other Decks in Programming

Transcript

  1. Apart in a Pair Tree A Remote Pair Programming Story

    Image from: http://www.flickr.com/photos/boris/407687/ Jim Nanney @jnanney Thursday, July 11, 13
  2. Why Pair Program? Fun Problem Solving Works Best in Groups

    Fast Feedback Catches Mistakes Knowledge Transfer and Aggregation Thursday, July 11, 13
  3. Feedback Times Pairing TDD CI QA Code Review Customer Time

    to Defect being found < 5 seconds < 60 seconds < 3 Hours Days To Weeks Release until Months Later Thursday, July 11, 13
  4. Pairing Economy Waste of Money? 15% Slower than independent devs

    15% less defects Average 10 Hours per defect = Huge Savings! Source: Cockburn & Williams XP2000 http://collaboration.csc.ncsu.edu/laurie/Papers/XPSardinia.PDF Image From: http://www.flickr.com/photos/publicresourceorg/493848468/ Thursday, July 11, 13
  5. Pair Always? • No! • Pairing is exhausting • Pair

    on problems & learning • Like hiring for TDD, pairing is a practiced skillset. Image from: http://www.flickr.com/photos/hisgett/422399097/ Thursday, July 11, 13
  6. Tools Non-GUI SSH Vim, Emacs, Joe Tmux, Screen GUI Screen

    Hero Join.Me Google+ Hangouts Voice & Video Skype Google+ Hangouts iChat, etc Thursday, July 11, 13