Equitable Student Collaboration in Pair Programming
Pair programming is considered a very beneficial method for software development and is gaining increased attention also in computer science education. One of the core principles of pair programming is that both partners in a pair should be equal and active participants, alternating on the roles of driver and navigator. But how are pairs formed in common educational settings, and does the achieved level of equity influence the outcomes of pair programming in classrooms? To answer these questions, we conducted a survey with 250 students and 100 teachers who have already practiced pair programming, as well as 147 students and teachers without pair programming experience. We identify the currently common and preferred pair formation process by students and teachers, their attitudes, behavioural patterns and perceived learnings regarding programming and social skills as well as self-efficacy. Furthermore, we investigate the relationship between equity and outcomes. Our results suggest that educators rarely consider equity when forming pairs, even though all participants think of pair programming as a method supporting equity. High acknowledgment between partners is a significant factor of equity for positive attitudes and learnings, while role violations are a common problem and a sign for lack of equity. These findings confirm that educators should take equity into account in pair programming classes.