Welcome, Professor Dennis Komm
Dennis Komm joined the Department of Computer Science at ETH Zurich in June 2022 as Associate Professor of Algorithms and Didactics. Get to know him in this short interview.
Professor Komm, welcome to your new position. What are your current research interests?
My research has two main strands, as suggested by my group’s name: Algorithms and Didactics.
In algorithm design and analysis, I am particularly interested in developing and analysing computational models that incorporate additional information about given problem instances that is often available to the algorithm but ignored in classical models. Roughly speaking, my work is about proving statements along the lines of “Knowing this particular parameter of a problem instance will always help you to efficiently compute a good solution for an otherwise difficult problem.” Or, on the negative side, “Whenever you’re dealing with this particular problem, you cannot design an efficient algorithm unless you have at least this much additional information about the instance at hand.”
In didactics, my focus is on designing K-12 computer science courses and how to best implement them. A key question is how to teach core principles in a student-accessible way. To this end, my group will work closely with teachers throughout Switzerland, with the goal of enabling students to continually build competencies in computer science across all levels of their schooling – and do so in both an appealing and a sustainable manner.
What is the impact of your research on society?
Again, I should probably give two answers that are very closely connected.
Many computational problems are rather simple to solve – just brute-force your way through all possible solutions and you’re done. Or rather, you would be done if you were willing to wait a couple of thousand years for the result. Algorithm design and analysis is then usually about finding clever ways to compute the desired results far more quickly, which is done using a toolkit that contains many beautiful problem-solving strategies, some mathematical theorems and plenty of room to continuously add to it. My research is basically about expanding this toolkit and, with this, pushing the boundaries of what problems we are able to solve and what kind of work we can delegate to machines.
Then again, the very basic tools in the computer scientist’s toolkit are far from being endemic to computer science – we encounter them in many other disciplines as well, some of which are quite surprising. Besides that, technologies such as the internet and AI have become so pervasive that they significantly determine our social and cultural identity. A basic understanding of the underlying principles, promises and limitations has to be an essential part of modern education. It is imperative to me that this is taken into account whenever we discuss which skills schools should pass on to the next generation. Nobody can tell you the details about the future world for which we have to prepare today’s students – but it is certain that they will benefit greatly from being familiar with the basics of core computer science concepts and having developed the corresponding competencies.
Where were you working before you came to ETH?
After receiving my doctoral degree from ETH, I took on new roles and responsibilities at my alma mater as a postdoc, lecturer and senior scientist. Before establishing my own group, I was a professor at the Graubünden University of Teacher Education. I have also taught at other schools and universities, such as the University of Zurich.
Which courses will you be teaching at ETH?
I will join the team teaching Theoretical Computer Science this autumn, and I intend to offer an additional course about algorithm design and analysis at least once a year. Besides that, my main teaching activities will focus on courses on didactics for the computer science “Lehrdiplom” programme for prospective secondary school teachers. If time permits (which I really hope), I will also continue to give courses for non-CS majors, such as the introduction to programming for students of human medicine.
What do people often get wrong about your field?
Computer science education is not about “making students more like robots or computers” – it is not at all about taking away creative work or critical thinking from our schools. Good computer science education does the exact opposite of that. It is about fostering creative work and critical thinking.
What advice would you give to students who are just starting out in computer science?
Something that is also applicable in a more universal context: stay curious and stay open-minded! There is so much to be discovered and, as mentioned above, aspects of computer science can be found in many unexpected places.