skip to main content
10.1145/3159450.3159506acmconferencesArticle/Chapter ViewAbstractPublication PagessigcseConference Proceedingsconference-collections
research-article
Public Access

The Importance of Producing Shared Code Through Pair Programming

Published: 21 February 2018 Publication History

Abstract

Collaborative learning frameworks such as pair programming have been shown to be highly effective for computer science learning. Skeptics of this approach often refer to the risk of one student relying on a stronger partner to solve the problem. Lending weight to this skepticism, many theories emphasize the importance of learner autonomy. Therefore, it is reasonable to hypothesize that a hybrid pair programming paradigm-one in which partners work together side-by-side at two separate computers and produce their own versions of the code-may be even more effective than traditional pair programming. To investigate this hypothesis, we conducted a study in which 200 introductory programming students were paired and then placed in either a pair-programming condition (two students at one computer) or a hybrid condition (two students at two computers). The results show that traditional pair programming fostered comparable learning gains as measured on an individual post-test, and significantly higher student satisfaction, than the hybrid approach. These findings highlight the importance of not just collaborating, but working together on shared code, for novice computer science learners.

References

[1]
Jens Bennedsen and Michael E. Caspersen. 2007. Failure rates in introductory programming. ACM SIGCSE Bulletin 39, 2: 32.
[2]
Aaron E. Black and Edward L. Deci. 2000. The effects of instructors' autonomy support and students' autonomous motivation on learning organic chemistry: A self-determination theory perspective. Science education: 740--756.
[3]
G. Braught, T. Wahls, and L. M. Eby. 2011. The Case for Pair Programming in the Computer Science Classroom. ACM Transactions on Computing Education 11, 1: 1--21.
[4]
John T. Bruer. 1993. Schools for thought: A science of learning in the classroom. MIT Press.
[5]
M. Celepkolu, J. B. Wiggins, K. E. Boyer, and K. Mcmullen. 2017. Think First: Fostering Substantive Contributions in Collaborative Problem-Solving Dialogues. In Proceedings of the International Conference on Computer-Supported Collaborative Learning: 295--302.
[6]
Alistair Cockburn and Laurie Williams. 2000. The Costs and Benefits of Pair Programming. Extreme Programming and Flexible Processes in Software Engineering XP2000: 223--247.
[7]
Gerald Giraud, Craig Enders. 2000. The Effects of Repeated Cooperative Testing in an Introductory Statistics Course.
[8]
M. Guzdial, P. Ludovice, M. Realff, T. Morley, and K. Carroll. 2002. When collaboration doesn't work. Proceedings of the International Conference of the Learning Sciences: 125--130.
[9]
R. G. Hausmann, M. T. Chi, and M. Roy. 2004. Learning from collaborative problem solving: An analysis of three hypothesized Mechanisms. Proceedings of the Cognitive Science Society 26, 26.
[10]
S. D. Johnson and S. P. Chung. 1999. The Effect of Thinking Aloud Pair Problem Solving (TAPPS) on the Troubleshooting Ability of Aviation Technician Students. Journal of Industrial Teacher Education 37, 1.
[11]
Michael E. Lantz. 2010. The use of "Clickers" in the classroom: Teaching innovation or merely an amusing novelty? Computers in Human Behavior 26, 4: 556--561.
[12]
Lin Lin. 2015. Exploring Collaborative Learning: Theoretical and Conceptual Perspectives. In Investigating Chinese HE EFL Classrooms. Springer Berlin Heidelberg, 11--28.
[13]
Charlie Mcdowell, Brian Hanks, and Linda Werner. 2003. Experimenting with Pair Programming in the Classroom. In Proceedings of the 8th Annual Conference on Innovation and Technology in Computer Science Education, 60--64.
[14]
Charlie McDowell, Linda Werner, Heather E. Bullock, and Julian Fernald. 2006. Pair programming improves student retention, confidence, and program quality. Communications of the ACM 49, 8: 90--95.
[15]
Charlie McDowell, Linda Werner, H eather E. Bullock, and Julian. Fernald. 2002. The effects of pair-programming on performance in an introductory programming course. ACM SIGCSE Bulletin 34, 1: 38.
[16]
Charlie McDowell, Linda Werner, Heather E. Bullock, and Julian Fernald. 2002. The effects of pair-programming on performance in an introductory programming course. ACM SIGCSE Bulletin 34, 1: 38.
[17]
J. R. Mergendoller, N. L. Maxwell, and Y. Bellisimo. 2000. Comparing Problem-Based Learning and Traditional Instruction in High School Economics. The Journal of Educational Research 93, 6: 374--382.
[18]
N. Nagappan, L. Williams, M. Ferzli, E. Wiebe, K. Yang, C. Miller, and S. Balik. 2003. Improving the CS1 experience with pair programming. ACM SIGCSE Bulletin 35, 1: 359.
[19]
J. K. Olsen, Nikol Rummel, and Vincent Aleven. 2017. Learning Alone or Together? A Combination Can Be Best! In Proceedings of the International Conference on Computer-Supported Collaborative Learning, 95--102.
[20]
Roger T, and David W. Johnson. 1994. An Overview of Cooperative Learning. Creativity and collaborative learning.
[21]
Jeremy Roschelle and Stephanie D. Teasley. 1995. The Construction of Shared Knowledge in Collaborative Problem Solving. In Computer Supported Collaborative Learning. 69--97.
[22]
Richard A. Schmuck and Patricia A. Schmuck. 1975. Group Processes in the Classroom.
[23]
Michael Schrage. 1995. No More Teams!: Mastering the Dynamics of Creative Collaboration.
[24]
Lev S. Vygotsky. 1978. Interaction between learning and development. In Mind in Society. 78--91.
[25]
Christopher Watson and Frederick W.B. Li. 2014. Failure rates in introductory programming revisited. In Proceedings of the 2014 conference on Innovation & technology in computer science education - ITiCSE '14, 39--44.
[26]
Laurie Williams, Robert R. Kessler, and Ward Cunningham. 2000. Strengthening the case for pair programming. IEEE.
[27]
Laurie Williams, Charlie McDowell, Nachiappan Nagappan, Julian Fernald, and Linda Werner. 2003. Building pair programming knowledge through a family of experiments. In Proceedings - 2003 International Symposium on Empirical Software Engineering, ISESE 2003, 143--152.

Cited By

View all
  • (2024)Real-Time Collaborative Programming in Undergraduate Education: A Comprehensive Empirical Analysis of Its Impact on Knowledge, Behaviors, and AttitudesJournal of Educational Computing Research10.1177/07356331241295739Online publication date: 27-Oct-2024
  • (2024)CodeFlow: Real-Time Collaborative Code Editor2024 International Conference on Knowledge Engineering and Communication Systems (ICKECS)10.1109/ICKECS61492.2024.10617308(1-5)Online publication date: 18-Apr-2024
  • (2023)How Noisy is Too Noisy? The Impact of Data Noise on Multimodal Recognition of Confusion and Conflict During Collaborative LearningProceedings of the 25th International Conference on Multimodal Interaction10.1145/3577190.3614127(326-335)Online publication date: 9-Oct-2023
  • Show More Cited By

Recommendations

Comments

Information & Contributors

Information

Published In

cover image ACM Conferences
SIGCSE '18: Proceedings of the 49th ACM Technical Symposium on Computer Science Education
February 2018
1174 pages
ISBN:9781450351034
DOI:10.1145/3159450
Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

Sponsors

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 21 February 2018

Permissions

Request permissions for this article.

Check for updates

Author Tags

  1. collaborative problem solving
  2. pair programming

Qualifiers

  • Research-article

Funding Sources

Conference

SIGCSE '18
Sponsor:

Acceptance Rates

SIGCSE '18 Paper Acceptance Rate 161 of 459 submissions, 35%;
Overall Acceptance Rate 1,595 of 4,542 submissions, 35%

Upcoming Conference

SIGCSE TS 2025
The 56th ACM Technical Symposium on Computer Science Education
February 26 - March 1, 2025
Pittsburgh , PA , USA

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)87
  • Downloads (Last 6 weeks)12
Reflects downloads up to 09 Jan 2025

Other Metrics

Citations

Cited By

View all
  • (2024)Real-Time Collaborative Programming in Undergraduate Education: A Comprehensive Empirical Analysis of Its Impact on Knowledge, Behaviors, and AttitudesJournal of Educational Computing Research10.1177/07356331241295739Online publication date: 27-Oct-2024
  • (2024)CodeFlow: Real-Time Collaborative Code Editor2024 International Conference on Knowledge Engineering and Communication Systems (ICKECS)10.1109/ICKECS61492.2024.10617308(1-5)Online publication date: 18-Apr-2024
  • (2023)How Noisy is Too Noisy? The Impact of Data Noise on Multimodal Recognition of Confusion and Conflict During Collaborative LearningProceedings of the 25th International Conference on Multimodal Interaction10.1145/3577190.3614127(326-335)Online publication date: 9-Oct-2023
  • (2022)It's Challenging but Doable: Lessons Learned from a Remote Collaborative Coding Camp for Elementary StudentsProceedings of the 53rd ACM Technical Symposium on Computer Science Education - Volume 110.1145/3478431.3499327(342-348)Online publication date: 22-Feb-2022
  • (2022)Interdisciplinary Computing Education: An Introductory Programming and Data Science Course for Postdoctoral Researchers in the Biosciences2022 IEEE Frontiers in Education Conference (FIE)10.1109/FIE56618.2022.9962737(1-8)Online publication date: 8-Oct-2022
  • (2022)Empirical research on pair programming in higher education: a literature reviewComputer Science Education10.1080/08993408.2022.203950433:3(400-428)Online publication date: 6-Mar-2022
  • (2022)The Effect of Pair Programming on Code MaintainabilityCollaboration Technologies and Social Computing10.1007/978-3-031-20218-6_3(38-51)Online publication date: 23-Oct-2022
  • (2021)Trade-offs for Substituting a Human with an Agent in a Pair Programming Context: The Good, the Bad, and the UglyProceedings of the 2021 CHI Conference on Human Factors in Computing Systems10.1145/3411764.3445659(1-20)Online publication date: 6-May-2021
  • (2021)Incorporating Unstructured Text in Multi-Layer Perceptron (MLP) Network: Factors Affecting Partner Selection in Pair Programming2021 IEEE International Conference on Artificial Intelligence in Engineering and Technology (IICAIET)10.1109/IICAIET51634.2021.9573795(1-5)Online publication date: 13-Sep-2021
  • (2021)Designing a visualization tool for children to reflect on their collaborative dialogueInternational Journal of Child-Computer Interaction10.1016/j.ijcci.2020.10023227:COnline publication date: 1-Mar-2021
  • Show More Cited By

View Options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Login options

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media