Talks
Speakers
Events
Topics
Sign in
Home
Talks
Speakers
Events
Topics
Leaderboard
Use
Analytics
Sign in
Suggest modification to this talk
Title
Description
By Joe Moore I've pair programmed almost every work day for 13 1/2 years. You've got questions. I've got answers. Presentations I give, regardless of topic, grind to a halt once I mention pairing. Do we pair all day? Who owns the code? How do I convince my boss to let us pair? When do you take bathroom breaks? What about remote pairing? Pairing is a scam! I'll answer all questions, from the poignant to the silly, and want you to share your own pair programming experiences. Ask me anything! Joe began writing software in the late '90s, soon joining eXtreme Programming pioneer Evant in 2000. He joined Pivotal Labs in 2005 as a founding member of their Rails consulting practice. Joe remote pairs full time for Pivotal and blogs at http://remotepairprogramming.com. His Ward Number is 1. Help us caption & translate this video! http://amara.org/v/FG03/
Date
Summarized using AI?
If this talk's summary was generated by AI, please check this box. A "Summarized using AI" badge will be displayed in the summary tab to indicate that the summary was generated using AI.
Show "Summarized using AI" badge on summary page
Summary
Markdown supported
In this video, Joe Moore shares his extensive experience with pair programming, having practiced it for nearly 13.5 years, including remote pair programming for the last four years. He addresses common questions and misconceptions surrounding pair programming, making the case for its benefits amidst its challenges. **Key Points Discussed:** - **Definition of Pair Programming:** Joe defines pair programming as a technique where two programmers collaboratively solve the same problem on one machine. This can also be applied in a remote setting using collaboration tools. - **Benefits of Pair Programming:** - Continuous code review. - Cross-training among team members of varying levels. - Reduction of bugs due to shared oversight. - Enhanced problem-solving through collaboration, often referred to as 'two heads are better than one.' - **Challenges in Pair Programming:** - It can be exhausting. - There may be personality conflicts among partners. - The technique might be hard to implement due to reluctance from team members or management. - **Time Efficiency:** Joe discusses concerns about velocity, noting that while tasks may initially take longer with pair programming, the long-term benefits include fewer bugs and better code quality. He advises teams to investigate specific issues that may be slowing down their process. - **Handling Breaks:** Joe emphasizes that breaks should be taken whenever necessary, stressing the need for individuals to listen to their own physical and mental cues. - **Experimenting with Pairing Strategies:** Joe mentions different pairing configurations, like senior-junior and junior-junior, and emphasizes the need for diversity in pairing styles and roles to enhance learning and collective knowledge. - **Tools & Technology:** Joe addresses the potential of tool conflicts in pairing, sharing that teams must find common ground while staying flexible. - **Including Other Roles:** He advocates for integrating QA testers and design personnel into the pair programming process, as it fosters collaboration and improves overall product quality. - **Techniques for Effective Pairing:** He suggests using structures like ping pong pairing, where the roles of driver and navigator rotate, promoting balanced involvement from both programmers. **Conclusions and Takeaways:** Joe concludes that the key to successful pair programming lies in fostering trust, patience, and good communication skills between team members. Though pair programming can come with challenges, the long-term gains often outweigh the initial drawbacks, making it a valuable practice in software development.
Suggest modifications
Cancel