Bridging Theory and Practice in Programming Lectures With Active Classroom Programmer
Nasser Giacaman, Giuseppe De Ruvo · IEEE Transactions on Education · 2018
Contribution: Active classroom programmer (ACP) is a software tool that places minimal pressure on resources, and is shown to help improve student learning while also encouraging a high degree of engagement both during and outside of programming lectures. Background: Programming is difficult for students, largely due to the myriad of ever-advancing concepts. As students gradually become stronger programmers, both within a course and within their degree, they are constantly presented with new and challenging programming concepts regardless of their expertise. While laboratory sessions provide an excellent opportunity for students to independently practice, this does not help them in the programming process where expert scaffolding is desired. Intended outcomes: ACP is intended to engage students with active programming exercises and develop an inductive approach to learning, focusing on developing problem-solving skills. Application design: Students need guidance in the programming strategy rather than the syntax and peculiarities of the particular programming language. ACP allows students to program alongside instructors as new concepts are introduced. Findings: Experience from two concept-rich programming courses at different levels is presented, demonstrating students engaged with ACP both inside and outside lectures to deepen their understanding of the programming concepts.