In order to make use of gamified programming exercises, an interactive programming learning environment is required to properly visualize the content of the exercise (including the possible theoretical context, the problem statement, the goal of the exercise or the initial code), allow the student to prepare and submit the solution, provide feedback (accepting or declining the solution, pointing to the identified flaws and suggesting directions for corrections) as well as give the instructors the access to the progress indicators and solutions submitted by students they supervise.
Apart from the frontend, providing user interface to students and teachers, also a backend is needed that would process the students’ submissions, apply gamification rules and generate relevant feedback, and then update the state of the game (progress indicators, leaderboards, etc.).
Both these components were developed within the IO5 of the FGPE project as free and open-source software. Their up-to-date versions are available at GitHub: https://github.com/FGPE-Erasmus/fgpe-ple-v2 and https://github.com/FGPE-Erasmus/gamification-service.