The case for collaborative programming
Communications of the ACM
Extreme programming explained: embrace change
Extreme programming explained: embrace change
Pair Programming Illuminated
The effects of pair-programming on performance in an introductory programming course
SIGCSE '02 Proceedings of the 33rd SIGCSE technical symposium on Computer science education
The collaborative software process(sm)
The collaborative software process(sm)
Coupling pair programming and writing: learning about students' perceptions and processes
Proceedings of the 35th SIGCSE technical symposium on Computer science education
On understanding compatibility of student pair programmers
Proceedings of the 35th SIGCSE technical symposium on Computer science education
An Empirical Study about the Feelgood Factor in Pair Programming
METRICS '04 Proceedings of the Software Metrics, 10th International Symposium
Double Trouble: Mixing Qualitative and Quantitative Methods in the Study of eXtreme Programmers
VLHCC '04 Proceedings of the 2004 IEEE Symposium on Visual Languages - Human Centric Computing
A multiple case study on the impact of pair programming on product quality
Proceedings of the 27th international conference on Software engineering
Sangam: a distributed pair programming plug-in for Eclipse
eclipse '04 Proceedings of the 2004 OOPSLA workshop on eclipse technology eXchange
XP'06 Proceedings of the 7th international conference on Extreme Programming and Agile Processes in Software Engineering
Users as contextual features of software product development and testing
Proceedings of the 2007 international ACM conference on Supporting group work
Video analysis of pair programming
Proceedings of the 2008 international workshop on Scrutinizing agile practices or shoot-out at the agile corral
Pair programming: what's in it for me?
Proceedings of the Second ACM-IEEE international symposium on Empirical software engineering and measurement
Setting the stage - Embodied and spatial dimensions in emerging programming practices
Interacting with Computers
An experimental investigation of personality types impact on pair effectiveness in pair programming
Empirical Software Engineering
The effectiveness of pair programming: A meta-analysis
Information and Software Technology
The secret life of bugs: Going past the errors and omissions in software repositories
ICSE '09 Proceedings of the 31st International Conference on Software Engineering
Personality and the nature of collaboration in pair programming
ESEM '09 Proceedings of the 2009 3rd International Symposium on Empirical Software Engineering and Measurement
Test-driven roles for pair programming
Proceedings of the 2010 ICSE Workshop on Cooperative and Human Aspects of Software Engineering
Saros: an eclipse plug-in for distributed party programming
Proceedings of the 2010 ICSE Workshop on Cooperative and Human Aspects of Software Engineering
Proceedings of the Sixth international workshop on Computing education research
Using global pairs for reducing software development time
Proceedings of the 4th India Software Engineering Conference
Designing effective notifications for collaborative development environments
The smart internet
Designing effective notifications for collaborative development environments
The smart internet
Exploratory comparison of expert and novice pair programmers
CEE-SET'08 Proceedings of the Third IFIP TC 2 Central and East European conference on Software engineering techniques
Role-based interfaces for collaborative software development
Proceedings of the 24th annual ACM symposium adjunct on User interface software and technology
Proceedings of the SIGCHI Conference on Human Factors in Computing Systems
Disengagement in pair programming: does it matter?
Proceedings of the 34th International Conference on Software Engineering
Proceedings of the 34th International Conference on Software Engineering
Social effects of pair programming mitigate impact of bounded rationality
Proceedings of the 45th ACM technical symposium on Computer science education
Hi-index | 0.00 |
This paper presents data from a four month ethnographic study of professional pair programmers from two software development teams. Contrary to the current conception of pair programmers, the pairs in this study did not hew to the separate roles of "driver" and "navigator". Instead, the observed programmers moved together through different phases of the task, considering and discussing issues at the same strategic "range" or level of abstraction and in largely the same role. This form of interaction was reinforced by frequent switches in keyboard control during pairing and the use of dual keyboards. The distribution of expertise among the members of a pair had a strong influence on the tenor of pair programming interaction. Keyboard control had a consistent secondary effect on decision-making within the pair. These findings have implications for software development managers and practitioners as well as for the design of software development tools.