Part of the
TU DelftTU EindhovenUniversity of TwenteWageningen University


+31(0)6 48 27 55 61


An Integrated Learning Infrastructure to Support Programming Education

Programming courses are crucial for Computer Science (CS) programs and other fields, such as Physics and Mathematics. Nowadays, the exponential increase in class size limits our abilities to impart education in programming-related courses. In particular, it introduces a challenge when it comes to accommodating the varied needs of programming languages and courses across our consortium of universities. Every university formulates its programming courses with little potential for reuse.

We are currently teaching programming, a practical and hands-on topic, with mostly theory in the classroom, accompanied by assignments and projects. This traditional approach, while valuable, may not fully meet the evolving demands of students who seek more interactive and experiential learning opportunities in programming. With this project, we join forces to reduce the overhead of managing diverse programming courses and to help students learn autonomously. By automating the generation of didactic artifacts and providing personalized programming exercises with automated feedback, we aim to streamline the learning process, giving us more time to add value to our courses and work on classroom activities. This transformation is essential to adapt to the changing landscape of education and better meet the needs of our students.

In light of the current challenges in programming education, we propose a transformative approach. We aim to experiment with providing students a platform to engage in practical, hands-on learning experiences. We aim to use the 4TU.NIRICT funding to continue the development of an integrated learning infrastructure to support programming education. Concretely, we aim at automating the generation of different didactic artifacts (e.g., lecture notes and interactive programming book) and the creation of programming exercises for students. The latter considers the specific learning needs of each student and provides automated feedback to support their personalized learning paths. This goes in hand with a global vision of providing a solid infrastructure to support students’ autonomous learning in an out-of-classroom setting. Additionally, we plan to initiate new research on programming education using the built platform as the main infrastructure to conduct our investigation.
Thus, the main contribution of this project is twofold: (i) support the creation of an educational platform that generates study material and a programming exercises environment for autonomous and personalized learning, and (ii) conduct new research in the programming education field.