The backstory
Expression Tutor was developed at the Lugano Computing Education research lab (LuCE) at the Software Institute of the Università della Svizzera italiana (USI) in Lugano, Switzerland.
Contributors (in alphabetical order):
Bachelor student in the Faculty of Informatics at the Università della Svizzera italiana (USI) - Internship
Postdoctoral fellow at the Software Institute, Università della Svizzera italiana (USI)
Master student at the Software Institute, Università della Svizzera italiana (USI) - Master thesis
Master student at the Software Institute, Università della Svizzera italiana (USI) - Master UROP internship
PhD student at the Software Institute, Università della Svizzera italiana (USI)
Master student at the Software Institute, Università della Svizzera italiana (USI) - Bachelor thesis and internship
PhD student at the Software Institute, Università della Svizzera italiana (USI)
Professor at the Software Institute, Università della Svizzera italiana (USI)
Bachelor student in the Faculty of Informatics at the Università della Svizzera italiana (USI) - Bachelor thesis
Bachelor student in the Faculty of Informatics at the Università della Svizzera italiana (USI) - Bachelor thesis
Bachelor student in the Faculty of Informatics at the Università della Svizzera italiana (USI) - Bachelor thesis
Bachelor student in the Faculty of Informatics at the Università della Svizzera italiana (USI) - Bachelor thesis
A large fraction—often the majority—of source code consists of expressions. When teaching programming in various languages, we noticed that students often did not fully understand the expressions they created. To help us teach expressions, and to make the relevant concepts more visible, we developed the “expression as tree” notional machine and its web-based realization in the form of Expression Tutor.
Expression Tutor is a React web application built on top of Next.js. Its backend consists of different services implemented using a multitude of technologies.