Building Bridges Instead of Putting Up Walls: An Educational Tool to Facilitate Instructors in Adopting Active Learning Methodologies for Teaching Programming - Calderon, Ivanilse; Silva, Williamson; Feitosa, Eduardo (IEEE access, 2025)
Teaching programming is a challenging task, as it requires instructors to guide students in developing complex skills such as real-world abstraction, problem-solving, and logical reasoning. However, the traditional teaching approach is often ineffective in achieving these objectives. Evidence suggests that Active Learning Methodologies (ALMs) can provide a more conducive environment for skill and competency development. Nonetheless, instructors' adoption rate of ALMs remains relatively low due to various barriers and factors, particularly in programming education. To assist instructors in facing this challenge, we present in this article CollabProg, an open collaborative repository designed to support instructors in identifying and selecting the appropriate ALMs for their teaching context and specific classroom needs. Additionally, CollabProg provides a set of practical guidelines, offering a step-by-step guide to assist instructors in adopting ALMs. We adopted the Design Science Research Methodology (DSRM) to systematically address the research problem and guide the development, evaluation, and evolution of CollabProg. Furthermore, we present two case studies to evaluate the acceptance and feasibility of using CollabProg from the perspective of instructors at different educational institutions in Brazil. The evidence demonstrates that CollabProg effectively supports instructors in adopting active learning methodologies while identifying limitations and opportunities for improvement. We also found that CollabProg helped instructors identify and choose suitable ALMs for their teaching context to meet their specific classroom needs. The guidelines provided by the repository were useful and highly practical for lesson planning in adopting ALMs. The adoption of CollabProg underscores the need for effective strategies to support instructors in teaching programming and motivating students to learn. These strategies are particularly important in collaborative learning contexts, where social interaction is key. CollabProg's versatility in supporting such contexts is important for successful instruction.