Implementing Social Learning for More Equitable Collaboration in Introductory Computer Science Education
Despite the collaborative nature of software engineering practice, computer science (CS) education has focused on individual-centric pedagogy in teaching how to program. Existing approaches to teaching it, consequently, often end up ignoring important elements of training in professional programming practice, such as working with teams and solving collaborative challenges in systematic manners. My research investigates approaches driven by a learning theory to teaching novice students how to collaboratively program. This work first reviews Vygotskian learning theory that informs about how learning happens in social learning contexts. This social development theory says that effective learning occurs in the zone of proximal development where a learner can perform tasks with assist from more knowledgeable others. It also emphasizes the significance of sign systems, tools, and language during the learning process, since they mediate both the direct interaction with others and the indirect interaction with the broader society that embraces the domain of learning. From the perspectives of student interaction as the source of learning, this work builds and tests a real-time interactive student discussion tool, named MOOCchat, in an online learning platform. The evaluation said that student interaction can improve the performance in quiz solving tasks, even in the isolated online settings. Shifting from the online learning environment to physical classroom settings, this work also reports on an exploratory study to understand how students are currently guided to collaborative learning in programming practice. The results showed that teachers are experiencing a lack of technology support and the standard curriculum for teaching proper ways of collaboration. To implement the social learning in CS classrooms and meet the needs the prior work identified, this work proposes lesson plans and software tool (GLIDE) built around them. An observational study with the educational intervention in an actual high school classroom with GLIDE found supporting evidence for the learning outcomes and the better balanced contributions from peer collaborators. Finally, this study reports on quantitative evaluations on the consequences of the educational intervention on the students' learning experience, arguing that the proposed approach increases student engagement, psychological ownership in their projects, and perceived fairness in collaboration.
Computer Science Education; Git Workflow; Computer science; Collaborative Programming
Parikh, Tapan Suryakant
Tate, Ross Everett; Jackson, Steven J.
Ph.D., Information Science
Doctor of Philosophy
dissertation or thesis