I teach at the University of Lausanne (HEC) and at EPFL, from first-year programming to doctoral training. Every course combines short theory with hands-on projects on real data and real users.
Courses for the Bachelor

Introduction to Programming – HEC Bachelor (UNIL)
Learn to think like a programmer: break a problem into steps a computer can execute, then write them in Python. Students analyse real financial datasets, build visualisations and implement simple algorithms, and see why programming matters for business decisions.
How we work: blended format, with material to study before class and lectures, guided examples and exercises in class. Active participation is part of the learning.
Bachelor, first year · spring semester · Official course listing (UNIL)

Data-driven Interface Design (HUM-297) – EPFL Bachelor / UNIL HEC
How do you know a design works? Students critique interfaces with usability heuristics, prototype quickly with AI-assisted coding, and test their choices with quantitative UX research: surveys, usability metrics, analytics, A/B tests and the statistics behind them.
How we work: weekly team studios and a capstone project that turns real interaction data into evidence-based design decisions.
EPFL Bachelor (SHS programme) · optional at UNIL HEC · 2 ECTS · autumn · English · EPFL course book
Courses for the Master

Interaction Design (IxD) – MSc Information Systems and Digital Innovation (UNIL)
The fundamentals of designing and evaluating interactive products and services, in two parallel tracks: interaction design principles and user experience research methods.
How we work: small teams go through repeated rounds of research, prototyping and user testing on a real design challenge, and present their work several times for feedback. This prepares them for UX roles in IT departments and start-ups.
MSc Information Systems and Digital Innovation · Programme page (UNIL)

Digital Transformation of the Democratic Discourse (DTDD) – MSc / CIVIS Blended Intensive Programme
How are digital platforms changing democratic participation, public debate and disinformation, and how could technology strengthen democracy instead? Students analyse civic media and propose either a new civic technology or an original research study.
How we work: a course of the CIVIS European university alliance, run with the University of Bucharest, Universidad Autónoma de Madrid and Sapienza (Rome). An online phase from October to January is followed by an intensive week in Lausanne with cities, NGOs and civic-tech practitioners such as Lausanne Participe and the Citizens Foundation.
Master · online October–January + one week in Lausanne in January · English · CIVIS course page (2026–27 edition)
Courses for the PhD school

Good Research Practices and Research Ethics (GRP) – PhD
What can go wrong in a research career, and how to avoid it: research ethics, scientific integrity and reproducibility in studies with humans and animals. Students learn to design experiments that produce valid results, report them so they can be reproduced, and use open research repositories and software.
How we work: pre-class readings, contrasting case studies discussed in class, and a final workshop where students bring their own study designs for collective critique. Co-taught with Marc-Olivier Boldi and James Arnéra (UNIL), Fulvio Magara (CHUV) and Maria João Maia (KIT).
Doctoral School in Information Systems and Lemanic Neuroscience Doctoral School · 3 ECTS · spring · online · English · Syllabus