A passion for teaching
They are lecturers, scientists, software developers and innovators: the Senior Scientists Focus Education at the Department of Computer Science are responsible for teaching computer science at other departments. But they also do much more than just teach.
There is attentive silence in the auditorium as Felix Friedrich explains the evaluation of arithmetic expressions in the programming language C++. Around 450 students in the first semester of their Bachelor’s studies in physics or mathematics take notes on terms such as precedence, associativity and arity. Even the largest lecture hall of the Maschinenlaboratorium cannot accommodate all the students, and the lecture is broadcast live into a second auditorium.
Computer science has established itself as a fundamental subject in most scientific disciplines. In 2015, Felix Friedrich became one of the first teaching staff at the Department of Computer Science to be mainly responsible for “service teaching”: teaching computer science to students from other departments. “The demand for CS service teaching is growing rapidly,” says Professor Peter Müller, Director of Studies at D-INFK. “At the same time, we are also facing growing numbers of computer science students. Since our professors cannot meet this increased demand on their own, we have created a dedicated team of specialists for service teaching.”
The team, of which Felix Friedrich is a part, also includes Lukas Fässler, Ghislain Fourny, Hermann Lehner, Dennis Komm and Malte Schwerhoff, all of whom hold doctoral degrees in computer science or mathematics. Together, they teach around 4,000 students each year at twelve of the 16 departments of ETH Zurich. In addition, they develop and test tools and platforms for teaching, carry out research and perform administrative tasks.
Scientists who teach
In 2015, Felix Friedrich and Lukas Fässler became the first lecturers to be hired specifically for the purpose of computer science service teaching. At the time, the scientific hierarchy of ETH Zurich did not include a suitable job title for their task profile and so the lecturers were initially employed as technical and administrative staff. “That was incorrect, because they work scientifically,” says Peter Müller. “But there simply wasn’t another option.”
"We are convinced that the combination of research and teaching is important in order to be able to offer education at the highest level."Prof. Peter Müller, Director of Studies
The Department of Computer Science, under the leadership of the then Director of Studies, Professor Gustavo Alonso, took the initiative to find a better solution. Together with the Executive Board and other departments that also offer service teaching, it sought to create an appropriate academic position for the lecturers. Three years later, five of the now six lecturers at D-INFK were able to assume the new position of Senior Scientist Focus Education, which reflects their teaching and research activities and offers them appropriate career opportunities.
“Both the Executive Board and we at the Department of Computer Science are convinced that the combination of research and teaching is important in order to be able to offer education at the highest level – in line with the Humboldtian model,” says Peter Müller. For their teaching activities, the Senior Scientists Focus Education report directly to the Director of Studies, while pursuing their scientific projects in various research groups. Thus, in addition to his numerous lectures, Felix Friedrich also studies programming languages and runtime support for systems-on-a-chip, as well as high-performance computing. Dennis Komm works on algorithms. Ghislain Fourny is active in the field of data science, while Malte Schwerhoff’s research focuses on software verification. Both Fourny and Schwerhoff also supervise numerous Bachelor’s and Master’s theses and are active in the study administration: Fourny supervises the Master’s in Data Science and DAS in Data Science, and Schwerhoff the CAS in Computer Science.
Hermann Lehner links research and teaching more closely: in collaboration with the Department of Educational Development and Technology (LET) and the Department of Humanities, Social and Political Sciences (D-GESS), he investigates the process of teaching and learning computer science. “Many of our lectures are broadly similar: we want to provide our students with a basic education in computer science,” he explains. “This allows us to focus much more on the ‘how’: how do we design our courses, which tools do we use, which methodology do we apply?” The motivation of the students, most of whom have not chosen computer science as their major, is also an important aspect, Lehner explains. In addition to research and teaching, he, too, holds an administrative position as the study coordinator for the Department of Computer Science.
Time-saving tools
Service teaching presents lecturers with unique challenges, especially coupled with the high number of students and the technical aspects of teaching programming. The motivated team meets these challenges by developing its own tools for teaching. Together with David Sichau and Markus Dahinden, Lukas Fässler set up the virtual programming laboratory “E.Tutorials”, which is based on the “flipped classroom” model. Guided by a customisable tutorial, the students acquire programming knowledge independently before applying it on the basis of concrete examples from their own fields. They then present the results to an assistant who gives them feedback and answers their questions. The accompanying lectures help to convey the theoretical basics. Fässler, Dahinden and Sichau have received the KITE Award 2018 for their work.
Hermann Lehner is also involved in the development of educational tools, especially those that facilitate feedback on programming exercises. “We teach a lot of students and employ up to 40 teaching assistants in our largest courses,” says Hermann Lehner. “How can we give all our students high-quality feedback without losing sight of the bigger picture or creating an unmanageable workload?” The solution is called Code Expert, which is being developed under the direction of Lehner by a team of teaching staff and software developers. This web-based integrated development environment (IDE) allows students to solve programming exercises. The solutions are automatically evaluated, saving assistants the effort of manually running each student's program and searching for errors. “Instead, assistants can use the output from Code Expert to give students personal feedback,” explains Hermann Lehner. Code Expert is also intended for use during programming examinations.
Teaching and learning
Communication, whether in tool development or teaching, is central to the hard-working team. “We often give our lectures in pairs, prepare the material together and discuss aspects of teaching,” says Hermann Lehner. Such cooperation will become even more important in the future, especially since new faculty positions in the field of education are being planned at the Department of Computer Science – a valuable opportunity for joint research.
“In the medium term, we will not only offer basic lectures, but also specialised lectures for other departments, in areas such as data science, security and software engineering,” says Peter Müller. “The demand is very high: in certain computer science lectures at Master's level, 20 to 30 percent of students are from other departments. In Machine Learning, that number is as high as 50 percent.” The team of Senior Scientists will grow accordingly: the Executive Board has already granted the necessary funding.
Felix Friedrich believes that the level of teaching in the first year of studies will also have to be increased to accommodate future students. “The majority of our current students have no previous knowledge of computer science,” he says. “Today, however, computer science is already taught in primary schools. If this knowledge is built upon throughout the school curriculum, students will come to us with a completely different knowledge base. We must be prepared for this.”
For now, most students are challenged enough with the current level of their lectures – at least according to the survey conducted by Hermann Lehner in the second week of the semester among around 300 students of Environmental Engineering and Geospatial Engineering. The anonymous feedback on the first exercise in Code Expert flutters in, one comment after another: valuable input for Hermann Lehner, with which he can further develop both the lecture and the Code Expert tool.