Digitale Teaching goes Web

“WebLab — Web-based computing lab”: Lessons Learned

Authors: Martin Claus (PI) & Willi Rath (co-PI)

German version:
funded by PerLe-Fonds für Lehrinnovation is a virtual computer lab which can be accessed at any time and from everywhere in the world. Originally, it was set up to leave behind crowded physical computer labs. With the COVID-19 pandemic, it helped to make teaching computer-based science possible at all.

The situation in many physical computer labs is far from optimal for teachers, for students, and for system administrators. In short: There is a lot of hardware that needs to be looked after; various software products and different installations need to be maintained; rooms are too small or already booked; students cannot easily access them away from scheduled events. To mitigate this, “WebLab — Web-based computing lab” started in October 2019 with the aim of exploring alternative ways of teaching computer-based science.

It’s a simple idea: There is a central platform where exercise sessions can be held and where students can also work on their assignments. Students only need a device that is able to connect to the internet which they either already have, or which they are provided with as part of the exercise session. And they need an internet connection which often is available via WiFi in any seminar room. Teachers define the software environment and provide data needed for the course. Administrators make sure the server is running, set up software environments, and create accounts for users (students and teachers). As the platform is accessible via the internet and from everywhere, students can easily continue working on the material they started with during an interactive exercise session. They can even switch to a different device.

Originally, the project was planned for three courses in the 2019/2020 winter term and the 2020 summer term. It aimed at exploring the feasibility of virtual computational teaching and at gaining insight on the resources necessary for running such a system. This plan, however, was made without COVID-19 in mind. In the end, there were 10 courses during the project duration (one year). Currently, there are 5 more courses being served during the ongoing 2020/2021 winter term. In total, more than 300 students were using the system for one or more courses.

The system held up to synchronous in-person and virtual events with more than 40 students using the system at the same time. The worldwide accessibility helped international students who could not travel to Germany at the beginning of the 2020 summer term. We also saw that the technical equipment that the students are already owning is sufficient to work with the system: In none of the courses a student requested a device from us.

The system on entirely consists of free and open source software from the Jupyter ecosystem: There’s a JupyterHub for managing access to the provided resources, we use JupyterLab as the main user interface, and use Jupyter Notebooks as the underlying document format. Each notebook is running in its own separate software environment (called kernel). Today, there are many pre-defined kernels for many commonly used programming languages which makes it easy to use the platform for most computer-based scientific applications.

Jupyter Notebooks offer exciting didactical possibilities, because they not only contain code and results from an interactive session, but also offer ways of including text, mathematical formulae, images, interactive figures, videos and other media. This is an example notebook which shows how to use notebooks for describing and implementing numerical algorithms for solving differential equations.

Currently, the system at CAU,, is hosted on a single central server provided by the IT department of CAU. This server offers resources that are sufficient for approximately 60 students working at the same time. The user management and system administration is currently done by the project initiators Prof. Dr. Martin Claus and Dr. Willi Rath. Maintaining the system turned out to be a lot less time consuming than was initially envisioned. Hence, the funding for student assistants that was part of the project proposal was not fully spent and the student assistant Ankhit Malhotra who was originally hired for supporting users and teachers could spend his time to acquire and analyse ressource usage data of the system. These analyses revealed that there is large variation of the resource demand between different hours of the day, days of the week, or between lecture periods and break periods.

Especially during times of low usage (nights, weekends, breaks between lecture terms), the resources that are allocated for the system are blocked but unused. This is exactly the use case for cloud technology. Based on the resource usage statistics of WebLab covering two terms, it is evident that running a system with similar load but on cloud infrastructure such as systems of commercial cloud providers like Google or Amazon could reduce the cost as compared to on-premise resources by 60% (or could provide the system to more than twice as many students at the same cost). This shows that it is worthwhile to reconsider digital resources and the purchase of resources for digital teaching.