A view from the hill on which ETH perches, facing the beautiful city of Zurich, Switzerland

A visit to ETH Zurich Computer Science

I just wrapped up a day-long visit to one of the best universities in the world, ETH Zurich. For the US-centric in my audience, ETH is a premier university in Europe, the institution of many Nobel laureates and one Turing award winner. It’s computer science department is also outstanding: it is not very large, but also not very small, and it covers many core areas of computer science, and a few interdisciplinary areas reaching into bioinformatics, medicine, and some of the more technical aspects of HCI. The CS department, along with the university, has recently begun searching for computing education research faculty, and I came to share my perspectives on the field and a bit about my research (but not to interview! I’m very much happy at UW.)

I honestly wasn’t sure what to expect. Most of my encounters with CS faculty interested in computing education have been with ones more aggressively pursuing interdisciplinary topics in CS. Before my visit, ETH didn’t seem like it fit that profile, so I was excited to meet their faculty and learn more about how they see the expanding role of computing in the world, and what aspects of that role they want to bring into their expertise.

My very full day began with Martin Vechev, who works at the intersection of programming languages and artificial intelligence. I expected a lot of conversation about automating away the need for programmers, but instead we had a far reaching conversation about adolescent interest development, software engineering education, and the role of connecting foundational ideas in computing to practice. Many of these questions arose from his personal experience as a father and as a CS teacher; I shared many of the foundational ideas in learning sciences and education, doing my best to bridge them to CS learning, while also learning about the many unique features of Swiss students at a premier university.

My next meeting was with Thomas Gross. Thomas was former faculty at CMU, and we discussed what information schools are, the many administrative differences between Swiss and US CS education in higher education, and some of the roles that high stakes examinations play in shaping what students at ETH and other Swiss educational institutions value in their learning. One of the interesting nuances we found was that the term “informatics,” which is much more common in Switzerland and Germany, is considered a superset that includes computing but also other subjects, whereas in the US information and computing are viewed as two interconnected but distinct disciplines. We had many debates about what is important to learn about CS and how things should be learned; much of our debate had the classic character of a strong opinion formed by experience against the science of learning and teaching. I’ll let you guess which position I held :)

I chatted next with Markus Püschel, the former chair of the ETH CS department. Our conversation was even higher level than the previous, moving into structural questions where experts at learning reside on a university campus (ETH has no College of Education), the scope of information schools, and various perspectives on the broadening of CS over time. We discussed some CS departments as being so conservative they leave no room for expanding scope. Others are conservative, but open to new faculty that have strong CS backgrounds, and do work that looks like CS research, but nevertheless bring some new dimension to a department (Markus viewed ETH this way). And then others still are more aggressively broadening, including faculty like the University of Washington, which have more aggressively expanded into HCI, data science, and other interdisciplinary subjects.

Peter Müller was my last meeting before lunch. Peter, who had been doing some work on educational technologies from a programming languages perspective, had a lot of questions about autograding, feedback generation, and online learning. I talked about the strengths and weaknesses with from two different perspectives. From a computer science perspective, I talked about the huge potential for educational technologies to surpass teachers along some key dimensions, most obviously scalability, but also along the ability to visualization and explain some complex phenomena, such as program execution. Then, I spoke from a learning science and education perspective, talking about the potential limitations of learning technologies to motivate learners and to observe learners’ misconceptions. I speculated that some of these things might be overcome, but that I hold a healthy scientific skepticism based on prior work in learning.

My lunch was with four Ph.D. students, Sverrir Thorgeirsson, Michael Faes, Vytautas Astrauskas, and Inna Grijnevitch. All four had interesting connections via programming languages, software engineering, and educational technology. We talked their interests and their work, which ranged from tools to reduce programming effort, to interests in applying software engineering methods to educational technology for computing. Beyond the students work, we also talked about some foundational ideas about how computer science often views automation as an unquestionable good, but how in practice, it can help in some situations and hurt in others. This was particularly relevant with respect to tools, which, by automating some things, might increase complexity, and inadvertently make a task ultimately harder.

I offered Zhendong to join my selfie, I really did! I bet he’s glad he didn’t, I’m not even looking at the camera.

After lunch, I met up with my host, Zhendong Su, who joined ETH just 9 months ago. He took me on a beautiful tour of campus, where we found a great spot for a selfie. While we walked, we talked about the state of software engineering research in academia and the Swiss education system that his children had just entered. When we got back to his office, we entered quite a fascinating philosophical debate about the “aesthetics” (my word) of computing research as valuing what I describe as “clever, objective solutions to hard problems.” Zhendong agreed that this was a fair description, and then I discussed the implications of this, which include filtering out subjects that are simple solutions to hard problems, or less-than-objective solutions to hard problems, or even just novel explanations of poorly understood problems. I discussed how the view precludes much of scientific methods, which include theoretical explanations of natural phenomena, and tests of these theories. This theme arose throughout the day as a key barrier for computing education to be widely adopted in CS, as it is largely a scientific discipline.

Bernd Gärtner and I met next, beginning with some of his recent efforts to teach computing to primary school children, such as concepts of sequence. We discussed the many varied goals of such learning, including interest development, fun, and learning. As Bernd’s background was CS theory, much of our conversation bumped into the big, counterintuitive findings (at least to CS faculty) of learning and education research, such the limitations of transfer and the lack of ability for students (and often teachers) to make sound judgements of the quality of teaching and the success of their own learning. I shared how many of my conversations with CS faculty break down around the findings around transfer. I speculated that there’s a strong belief in transfer, especially amongst CS faculty, because 1) many of the most powerful ideas in computing require abstraction and generalization to be powerful, and 2) academia selects for faculty who are exceptionally good at transferring their knowledge from one domain to another. I pointed out that such skills are not common, that we don’t really know where they come from, and therefore that transfer is very much not a given.

Otmar Hilliges was my last 1 on 1, and one of the only faculty at ETH that I met who I might describe as interdisciplinary. Of course, he described himself as only just barely so, doing the most technical form of HCI there is, including applications of machine vision to the perception of human form for the purposes of pervasive/ubiquitous computing applications. We talked about some of the challenges of being at the edge of a CS department’s intellectual comfort zone and the need to “play” computer science at times despite holding more nuanced interdisciplinary views than our colleagues.

After Otmar, I went to set up for my talk. The lecture hall was steep and large, and I was so curious to see how well attended it would be. As the photo above shows, it was pretty hard to miss on the large display outside the room! The mic worked seamlessly, my iPad and HDMI dongle worked seamlessly, and right on time at 4:15 pm, the lecture hall was mostly full. I completely forgot to take a photo of the audience, and ETH hasn’t posted the recording yet, so for now you’ll have to settle for my low-quality pre-recorded practice talk:

After my talk, there was a wonderful and engaging reception with dozens of students and faculty who attended. Questions were incredibly diverse, about the best ways to teach all kinds of subjects, about educational psychology perspectives on computing education, about the role of programming language and IDE design, and on big questions about the gap between academic CS curriculum and industry needs. It’s always fascinating how many of the questions newcomers to computing education research mirror the questions that have long puzzled researchers in the field.

The end of my day, and I must admit, the highlight, was dinner with Zhendong and Juraj Hromkovic. Juraj had a long history of thinking about computing education (informatics education in Switzerland), and had founded the Centre for Computer Science Education, and a masters program at ETH that prepares CS teachers. Interestingly, he did this long before Switzerland made CS a compulsory subject, unlike most countries who have done the opposite (passed legislation, and then only begin to think about preparing pre-service teachers). We began our conversation speculating about the overlapping ideas in math education, language education, and computing education. Juraj also shared many ways that had attempted to integrate the three, drawing upon many of the core ideas in Papert’s constructionism, such as the notion of learners building shallow theories of phenomena, personally discovering their limitations, and then deepening their personal theories out of necessity and curiosity. One example he gave was of giving a restricted set of symbols from which to construct sentences, to both show why we have invented natural language, but also the correspondence to artificial notifications for counting and computing. I talked about many of the limitations of constructionism, including the occasional need for direct instruction, the privilege required to pursue one’s curiosity in learning, and some of the scalability challenges that come with supporting personalizing learning.

We also talked extensively dinner about epistemological rifts between computing and computing education, including some of those that Papert wrote about with Sherry Turkle about epistemological pluralism. This article, and my own position, critiqued computer science for having too narrow an epistemology, both in its research culture, as well as its teaching culture, to accomodate the grand implications of computing on society and learning. I talked about how I saw the very same tensions that Papert wrote about were still at play in CS faculty around the world, including to a degree at ETH, and how these epistemological tensions are a major barrier to the critical role deepening our understanding of computing in society, in everyday life, and in school. Despite the heady and contentious topics at dinner, I very much enjoyed our discussion and debates, and hope that Zhendong and Juraj did too.

Reflecting on the day, I think ETH CS is in much the same position as much of the rest of academic CS globally: it still very much has a strict logical positivist view on the world, it is highly uncertain (and in some cases highly skeptical) about the validity of empiricism, and it is far from accepting the more more radical epistemologies of social science such as the interpretivism (the view of knowledge that currently shapes many of my thoughts). I think this will continue to be a significant struggle for CS departments to embracing computing education research at the tenure-track level. Some CS departments will embrace this struggle, recognizing that it will be a source of growth and transformation to embrace broader views of knowledge. Some will do this conservatively, finding people doing core CS, but applying it to problems from the domain of computing education. And others will reject it entirely, viewing the embrace of such research as the rejection of foundational principles of rigorous knowledge. I don’t know where ETH will stand along this continuum, but based on my visit, I predict they’re leaning towards curious embrace.

Time to pack for my return to Seattle!