Description
The misuse of AI in education for cheating purposes has created challenges in assessing students' authentic contributions in the last couple of years. Another issue we identified is that University labs rarely teach problem-solving skills for a real-world scenario that students have to deal with in their post-academic working life (i.e. fixing production issues). Traditional assignments lacked real-world relevance (and were easily solved with the help of AI), leaving students unprepared for professional challenges in their later jobs. To address this, we developed as part of a master's thesis for University of Applied Sciences, Darmstadt, Germany a new teaching framework leveraging Chaos Engineering and Gamification elements to modernize Unix education on FreeBSD. With our new system, real-world problems can be simulated by instructors and allows students to use system administrator permissions to solve them. We also developed this system to make it difficult for participants to "cheat" using AI and evaluated the system towards that end with a group of students.
This talk will introduce our new "Chaos education system" tested in the "Unix for Software Developers" course at the University. The name stems from the chaos monkey systems that intentionally "wreak havoc" on production systems to improve their resiliency and train the sysadmins managing them to find and fix them. Our approach lets instructors inject intentional faults (error scenarios) into student-managed FreeBSD jails. The students must then identify, resolve, and prevent these issues from occurring again using standard system administration tools, including root permissions. To increase student motivation to solve these scenarios quickly (and to create artificial "production system is at stake" pressure), a global highscore list is used as a gamification element: each time an issue is solved, points are awarded to that team based on the elapsed time and an instructor-defined difficulty bonus. A post-mortem group discussion with the instructor lets students talk through various ways of solving the issue, giving the group deeper insights on possible solutions each group had used. Using the system, the students gain practical skills like troubleshooting, system recovery, and proactive system management with real-world scenarios, something that traditional "one size fits all" assignments lack.
We built the whole system using BSD-licensed open source components: FreeBSD, pf, VNET, bastille jails and templates. Shells scripts act as the glue to tie them together and implement the logic for the rest of the chaos monkey system. The prototype system has been tested with two student groups of 16 students each in January 2025. One group was allowed to use ChatGPT during the scenarios to see how AI-support helps them (if at all). Insights from this testing was used to enhance the system further.
This talk will introduce the chaos education system idea, implementation, demonstrate its functionality, and discuss future work in this area. FreeBSD proved to be an excellent building platform for this system, due to its great modularity, open source, low resource overhead, and available documentation. The system can be enhanced further and used outside of an academic environment, like employee training or workshop-style challenges at events. It is easy for instructors to construct a custom scenario for participants and inject it into the training jails. The system can scale to a number of parallel users due to the lightweight nature that FreeBSD jails provide.
Audience: Educators, trainers, and system administrators interested in modernizing Unix/Linux education through hands-on, interactive methods. Managers may find the system interesting for training their own employees by constructing scenarios mimicking their own environment.
One-line summary | Chaos Education system built on FreeBSD jails, bastille, pf, and VNET |
---|