Teaching

Supervised Theses

Undergraduate and Postgraduate course, University of Düsseldorf, 2024

During my work as a researcher at the chair of software engineering and programming languages at the University of Düsseldorf I supervised several theses as can be seen in the following.

Overview Artificial Intelligence

Undergraduate course, University of Düsseldorf, 2020

This course covered the basics of artificial intelligence ranging from classic symbolic AI to modern techniques such as deep learning. Problems and limitations of current AI approaches such as bias, explainability, security and others were discussed. Further content was determined in consultation with the students.

Model Checking

Postgraduate course, University of Düsseldorf, 2018

This course dealt with the fully automatic verification of hardware and software using model checking algorithms and tools.

Practical Programming Course

Undergraduate course, University of Düsseldorf, 2016

This practical programming course dealt with general topics of software development as well as object-oriented programming and Java in particular.

Introduction to Logic Programming

Undergraduate and Postgraduate course, University of Düsseldorf, 2015

In imperative programming languages, programs are represented as sequences of instructions. In logic programming, one describes the solution for a problem as facts and rules instead of writing an algorithm. The computer then finds a solution autonomously. This offers a new and radically different point of view towards programming, useful even for the every day programmer using C or Java.