A framework for developing collaborative community building tools for novice Computer Science students
Authors: Olivares Daniel , Kubicki Jakob , Imhof Katie 
Published: November 2024

Students enrolled in introductory computer science courses tend towards individual work because of pedagogical practices discouraging collaboration and a focus on individual assignments. This can discourage new computer science students and may negatively affect persistence in computer science. In contrast, social learning theory research suggests a connection between student success and their level of involvement with peers, instructors, and in the greater learning community. Motivated by these contrasting conclusions, the research presented in this paper puts forth a framework based on social learning theories and teaching and learning methodologies to leverage social computing as a learning tool. This framework’s primary objective is use as the foundation for the development and testing of tools used to stimulate social interaction in problem-solving environments for introductory programming students and, as a result, building stronger social networks within learning communities. Following the implications of social learning theory, this paper theorizes that use of tools using this framework will not only result in a stronger, more connected, social network but will also contribute to greater success in student learning outcomes. The research presented in this paper follows a mixed-methods approach with meta-analysis used to develop the framework and an iterative, user- and learner-centered design approach to develop the software tools. User-centered design is the base of our design approach, but learner-centered design helps maintain focus on the important questions we must keep in mind in the design and assessment of this tool: how can we make people more effective learners, adopt our tools (for students and instructors), and promote peer collaboration? How should learning opportunities be scaffolded in a social computing environment? How should we motivate learners to remain engaged and form connections? The framework presented in this paper emphasizes the following requirements for tools to stimulate social interaction in a learning environment. 1) Motivation generating techniques to increase user interaction with the software tools. 2) Scaffolded activities to structure and stimulate community engagement to encourage interaction with the tool and the community. 3) Focused social interaction and gamification features to foster learner success by encouraging competition and community building. Meeting these requirements should promote higher levels of interaction and may lead to improved learning outcomes, attitudes, and social connectedness. In essence, tools founded on this framework will be the focus of a social hub for learning activity and build on the social computing experience. The chosen platform and delivery for this universal tool, as presented in this research, is via a Visual Studio Code extension due to its wide adoption and cross-platform support. Tools built from this framework are based on the necessity of a universal tool focused on encouraging and building a social learning environment; one that supports collaboration and problem solving, provides support for instructor guidance and constraints, and are structured to support many problems new computer science students face in the classroom. Further, the framework developed in this paper sets the foundation for future research testing the efficacy of interventions built around a social computing hub where problem solving takes place.