There are many ways to collaborate, and pair programming is the first many people consider.
It's a useful practice, though it can be emotionally intense compared to other ways of work like mob programming AKA teaming AKA ensemble, or swarming. It's easier for people like me to work with three partners than only one.
The fact that other ways exist in no way diminishes the value of pair programming, and if you aren't able or aren't allowed to go to a more inclusive collaborative technique, pair programming is a great way to work.
That is, if you're doing it correctly and don't fall into the key dysfunctions...
Here are the resources:
BASICS
- Jeff and I wrote The ABCs of Pair Programming to help you get started.
- Vitaly Sharovetov's Guide to Pair Programming might be more your style; it's pretty good!
- Dragan takes us from Async Code Reviews to Co-Creation Patterns with Ben Linders.
- All I Need To Know About Pair Programming, I Learned In Kindergarten by Williams and Kessler. This is often listed as a highly influential paper by experienced pair-programmers.
- Ron Jeffries' Pair Programming article, written in 1998 describing his actual experiences using this practice in a real corporate project with deadlines.
- Williams and Kessler's Pair Programming Illuminated, based on significant, reviewed research
- The description from eXtreme Programming.org
- The Agile Alliance's article on Pair Programming
- A very old YouTube video I made
TIPS FOR PRACTITIONERS
- Duckly's 7 Tips For Successful Pair Programming
- Martin Fowler's Writings On Pair Programming with Birgitta Böckeler and Nina Siessegger
- Jeff and I wrote Two Heads are Better Than One for Pragmatic Programmers, describing the benefits that people can expect.
- Note that apparently James Coplein wrote one with the same name (Two Heads are Better Than One) earlier than ours, and it's not available to me. If you have a link to his, please send it on.
DYSFUNCTIONS
- Pair Programming Smells (from AgileInAFlash) by Jeff and myself, again.
- The antipatterns of Programming Under Surveillance instead of pair-programming.
- A video about pair programming dysfunctions
BENEFITS
- Dave Farley's Pros and Cons of Pair Programming
- Dr. Williams on the economics of software development "indicates that pair programming is highly productive."
- Williams, Kessler, Cunningham, and Jeffries: Strengthening the Casee For Pair Programming
- Other of Dr Williams research papers and writings.
- Alistair Cockburn's paper with Dr Williams on The Costs And Benefits of Pair Programming
- David Bernstein's video on Why Pair Programming is the Future
This is just a start. Sometimes we ship and then refactor.
Feel free to suggest other links that you have found helpful, funny, or illuminating.
Also, remember that we teach these skills at Industrial Logic along with many other technical, management, and UX skills. We're here to help you be successful. Give us a call.
No comments:
Post a Comment