Table of Links
Abstract and I. Introduction
II. Background and Related Work
A. Learning to Program: SCRATCH and Pair Programming
B. Gender in Programming Education and Pair Programming
III. Course Design
A. Introducing Young Learners to Pair Programming
B. Implementation of Pair Programming
C. Course Schedule
IV. Method
A. Pre-Study and B. Data Collection
C. Dataset and D. Data Analysis
E. Threats to Validity
V. Results
A. RQ1: Attitude
B. RQ2: Behavior
C. RQ3: Code
VI. Conclusions and Future Work, Acknowledgments, and References
III. COURSE DESIGN
The aim of this paper is to identify gender-dependent differences and similarities among different pair constellations when using PP in elementary and early middle school. Therefore, we designed and implemented an introductory programming in-class course for SCRATCH which is specifically tailored for integrating the basic principles of PP, targeting students without prior CS experience from 8 to 14 years old.
A. Introducing Young Learners to Pair Programming
Since the targeted young learners are not familiar with the concept of PP, the key challenge is to integrate PP into an in-class course to provide them a coherent introduction to it according to the guidelines established by Williams et al. [26].
Before the class begins, the set up needs to be prepared by arranging two chairs and a desk together for each pair, with sufficient distance from the next pair, and moving the keyboard, mouse and monitor to the center so that both students in a pair have access [26].
To start the introduction, we address the students’ lifeworld by asking them where they already experience teamwork in their (school) everyday life as well as which benefits and challenges they experienced. After a brief discussion, we point out that the distribution of tasks and contributions in teams often remains unclear, which can be frustrating [41]. In this way, we explain why there exist two different roles in PP, which have different responsibilities, but a common goal [26], and that today the students slip into these roles like little actors.
To keep the course interactive, we ask the students about their ideas of what the roles represent and what the roles are supposed to do. After collecting the answers in a plenary session, we explain the roles using the analogy of sea and car travel, hence, establishing an association to the students’ lifeworld while ensuring an understanding of the roles. To further encourage the students, we assure them that adult computer scientists also use this method.