Selected Features
Design learning topics using a Domain Specific Language
Learning topics are simple HTML files that are extended with a custom Domain Specific Language (DSL) based on the Jinja template system. To include a task, teachers describe the task using pre-defined functions inline without breaking their workflow. The DSL allows single and multiple-choice questions, text and script-verified questions, and much more. Students may feel overwhelmed by too much text; therefore, the DSL allows parts of the text to be hidden until a specific task has been solved. For full flexibility, teachers can include custom CSS and JavaScript. Everything is easily manageable in a version control system such as Git.

Provide feedback for the learning progress
Students can estimate their progress with each learning topic by clearly seeing how many tasks they already have solved. Teachers get an overview of how their students in the course are performing and what their progress is. Insekta also allows calculating bonus points to incentivize solving tasks.

Create fully scriptable tasks
Insekta allows teachers to write custom Python scripts that validate the students’ answers. The script cannot only accept or decline but also provide textual feedback for the students, e.g., helping them when their solution is close. In addition, each script has access to a random number generator that is seeded with the student’s identity to create individual tasks.

Run virtual machines for students
Insekta was originally designed while having IT security teaching in mind. For that purpose, teachers can create virtual machine templates with vulnerable services that can be accessed by students. Given a template, students can start their own virtual machine instance, which can only be accessed by them via an OpenVPN connection. Furthermore, all changes to virtual machines are only ephemeral, allowing students to reset their machine if they bricked it. For best isolation, full virtualization with KVM is used.

Imprint
Prof. Dr. Dominik Herrmann
Lehrstuhl für Privatsphäre und Sicherheit
in Informationssystemen
Universität Bamberg
Kapuzinerstr. 16
96047 Bamberg
Lehrstuhl für Privatsphäre und Sicherheit
in Informationssystemen
Kapuzinerstr. 16
96047 Bamberg