Dynamic, student-centered Programming Courses

Schliessen Icon

We teach various programming courses for more than 1200 students per year ranging from first-year service lectures for Life Science students to CAS programs for managers. Our learning environment needs to be able to adapt to demanding requirements, such as:

- Scalable to large student groups of several hundred students,
- Support different levels of prior knowledge,
- Collect and discuss individual student solutions,
- Maximise the time on task,
- Provide students with regular, individual formative feedback.

In order to meet these requirements and actively engage students, we have developed dynamic, student-centered structures over the last 15 years, in which lecturers and TAs take on new roles.

Project- and problem-oriented approach to actively engage students right from the beginning

As a first step, we have systematically transformed all our courses into a project- and problem-oriented setting. Programming is a hands-on activity, like playing a musical instrument, which can only be learned through self-activity and practice with regular feedback, ideally coming from an experienced person. To motivate students from other disciplines to the subject of programming, our students learn programming by working on programming assignments from their own subject areas. All our courses are implemented on Code Expert, an online IDE and course management system developed at ETH. In order to support different levels of prior knowledge including beginners and refreshers, we provide learners with preparatory material in the form of self-study modules. This important initial structure gives the students an active role, even if they are beginners or have not programmed for some time. With its help, learners acquire active, applicable knowledge for the subsequent project work and it replaces some of the lecturer-centered theory sessions in the lecturer hall, which never come at the right time for the different needs.

Individual project discussions instead of exercise groups

As a second important transition in terms of student engagement, we have replaced traditional exercise groups led by the TAs by dynamic one-to-one project presentation meetings with individual feedback. As soon as students have completed their project assignment, they register for a personal presentation meeting. The idea is that the learners explain their individual solutions of their project tasks. The TAs ask questions, verify students› understanding, and determine whether the solution presented reflects the learners’ level of knowledge. Even if students make use of external resources like AI tools, peers, forums and websites, they must always be able to defend their presented solution and show that they understood the central concepts. The student project serves as a starting point for a discussion, but the focus is on the student’s knowledge during presentation. At the end of the assessment session, students receive individual feedback from the TA on their performance level and they get motivated to continue learning.

Individual student coaching is not more expensive than a traditional setup

In our case, the transition from teacher-centered to student-centered teaching required the biggest effort in terms of content. Creating project tasks and tutorials is time-consuming and expensive. Once the material is produced, this type of course requires no more resources than traditional courses of the same size. We manage our courses with the same number of TAs as other comparable courses in our department. The courses are proving to be very flexible, stable and very satisfying for both teachers and students.

Roles changed from lecturing to coaching, both for TAs and lecturers

The new dynamic teaching structures have not only made students more actively engaged, but it also changed the role of lecturers and TAs. In our course setup, TAs no longer have to explain and correct teaching assignments, instead, they interact in one-to-one sessions with students, clarify knowledge gaps or misconceptions and provide feedback. On one hand, lecturers create interesting and aligned project materials, on the other hand, they are responsible for TA-trainings. Providing students with high-quality feedback is demanding and requires practice and feedback as well. This has become an essential part of the lecturers› work.

I am that excited about this programming course that I sit in front of my computer every day waiting for new exercises. I really like the format of the course as well as the exercises.
Student feedback

ETH Competence Framework