3.0 release notes


Happy birthday Dodona! Exactly three years ago we released the very first version of the platform. Of course we do not celebrate this birthday party without a gift for all our users: Dodona version 3.0 with demo mode, visual representation of progress of all course users, support for the R programming language and — as icing on the cake — Dodona is now open source. In addition, a lot of changes took place behind the scenes to make the platform even more robust. For example, we again use the latest versions of Ruby and Ruby on Rails.

Today Dodona is blowing out three candles. An ideal moment to look back and release version 3.0.

Open source

Under the dodona-edu organisation on GitHub, multiple repositories containing source code for different components of the Dodona platform were published: the web applicatie, the API, the user manual, the configuration of docker images for executing submitted solutions, numerous judges for assessing submitted solutions in various programming languages, and a specific tool for plagiarism detection in source code (dolos). Don't hesitate to send in your pull requests!

Thanks to Rien Maertens we can also provide a script for anyone who needs to migrate code repositories with all their issues, pull requests, releases, ... from GitHub Enterprise to

Demo mode

Use demo mode for in-class demonstrations of learning analytics or source code from Dodona without revealing student identities. In demo mode, all personally identifiable information fields (usernames, e-mail addresses, ...) are replaced by randomly generated pseudonyms. To make identification harder, new pseudonyms are generated on a daily basis.

Demo pseudonymizes all personally identifiable information fields.

Support for the R programming language

From now on, Dodona also provides a judges for automatic evaluation of submitted solutions in the R programming language. Those who would like to create exercises for this programming language can already find the source code of the judge and its accompanying documentation in this GitHub repository. The judge is available open source, so you don't have to hesitate to create issues and you need help or want to see additional functionality that is currently missing.

Visual representation of course user progress

After the positive reception to the visual representation of the progress for exercises in a series, we have also added the same visualization to the overview of course users. There we visualize the number of exercises a user has started and the number of correctly solved exercises. The maximum number corresponds to the total number of exercises in the course.

Visual representation of the number of exercises a user has started and how many he has solved correctly.

Full list of changes

  • make demo mode available to course administrators
  • add support for the R programming language
  • visual representation of progress in overview of all course users
  • display icon to course administrators if visual progress for exercises in series is disabled for course users
  • clarify links in overview of all solutions submitted in a course
  • fix width when dragging an dropping table rows
  • convert all icons to Material Design Icons
  • add overview of solutions submitted for a specific judge
  • faster filtering on educational institution in overview of course users
  • send automatic email upon creation of repository with incorrect configuration files
  • add button for directly unsubscribing course adminstrators
  • fix internal server error when requesting the 0th page from overview
  • reduce number of queries when displaying course users
  • allow course administrators to toggle visibility of exercises in a series
  • heatmaps display entire period in which solutions were submitted in course
  • listen to OS-level setting if user did not explicitly select dark/light mode yet
  • only show registered course users in status overview of series
  • guarantee stable order of exercises in series
  • fix rendering of unified diff for legacy Python exercises
  • allow judges to set access levels for individual feedback tabs
  • course scoped links to selected exercises on series edit page
  • always stay on current page when removing series from a course

2.11 release notes


Dodona 2.11 allows to login with a Google for Education (G Suite) account, visualise the history of submitted solutions, activate dark mode, and have more fine-grained control over visibility and registration modalities of a course.

Login with G Suite account

If your school uses Google for Education, you can now also log in to Dodona with a G Suite account. Note that your account must be linked to a G Suite organization. Logging in with a regular Google account will therefore not work. In addition, you can still continue to log in with an Office 365 or Smartschool account.

Log in to Dodona using a G Suite account.

Visualise submission history

The relative number of submitted solutions per day is visualised as a heatmap. This new visualisation is available on all course pages and all user profile pages.
This new heatmap visualizes the number of submitted solutions per day for a course or for an individual user.

Dark mode

All users who keep on programming into the early hours can now set Dodona to dark mode. This renders the familiar user interface with a color scheme that is less stressful for the eyes: light-colored text, icons and graphical user interface elements on a dark background. Dark mode can be switched on and off via the user menu in the top right corner of the window.

View of an exercise description with dark mode enabled.

Course modalities for visibility and registration

Course admins are given even more fine-grained control over who can see their course and who can register for their course. These changes have also allowed us to make the registration process clearer, especially for invisible courses.

There are three options to set the visibility of a course:

  • visible for everyone
  • visible for users from the institute to which the course is linked
  • visible for nobody

Each course has a secret link that course admins can share with users who are allowed to see their course. Anyone who has the secret link can view the course, regardless of the visibility settings of the course.

Analogously, there are also three options for course registration:

  • registration open for everyone
  • registration open for users from the institute to which the course is linked
  • registration open for nobody

There is no registration link that allows to register for a course. The option to moderate course registrations can now be set separately. With a moderated course, a course admin must first give explicit permission before a user gets actually registered.

Full list of changes

  • add heatmap of submitted solutions
  • add dark mode
  • enable login with G Suite account
  • rework settings for course visibility and registration
  • fix pagination of submitted solutions on exercise page
  • fix address bar updates while searching

2.10 release notes


Release 2.10 comes with a Dodona-specific privacy policy, introduces a series overview to course pages, and enables staff to copy existing courses.

Privacy and personal data

Dodona handles personal data with great care and watches over your privacy. In our data policy we explain in laymen's terms which data is kept and why this is done. Our privacy statement contains a legally binding description of the same information. You can also find a reference to both documents in the Dodona footer. So rest assured: everything happens transparent, smooth and safe.

Series navigation menu

The learning path of a course consists of multiple exercise series. A menu has been added in the right margin of the course page to support faster navigation to a specific series. This navigation menu contains an overview of all series in the course.

Series navigation menu (right margin) on a course page.

Copying courses

When a teacher creates a new course, he now also has the option to start from the learning path of an existing course. The source course can be any accessible course on the platform, not only his own courses. Whoever creates a course automatically becomes a course manager of the new course, but when copying, additional course managers can also be taken over from the source course. After copying, thee learning path and course managers of the new course can be adjusted independently of the source course.

When creating a new course, you now choose as a first step to start building a course from scratch or to start with the learning path (and possibly also the course managers) of an existing course.

Copying can be started via the CREATE COURSE button on the course overview or via de main menu on the page of a source course. Of course, it still remains possible to create courses from scratch.

Full list of changes

  • add series navigation menu to course page
  • add help text to API token section on user profile edit page
  • display search bar more clearly in course overview
  • show alert on exercise page if linked series has upcoming deadline
  • add institution to course members table and allow searching by institution
  • allow course admins to hide visual representation of class progress from students (per series)
  • allow staff to copy courses
  • highlight JSON in email messages
  • lots of small fixes and enhancements

Dodona @ 2LinK2 conference on computational thinking


2LinK2 organizes its first conference on computational thinking for computer science and STEM educators on Thursday June 13, 2019 in Ghent, Belgium. In a hands-on workshop with Dominiek Vandewalle (College Waregem) and Alex Bervoets (Atheneum De Ring, Leuven) – two computer science educators in secondary schools – team Dodona introduces its intelligent tutoring system for learning computer programming in secundary education. Curious about exploring this online learning environment or looking for practical tips to get started with Dodona in secondary education? Registrations for the 2LinK2 conference are now open. We are looking forward to meeting you in person on the conference.

first 2Link2 conference for computer science and STEM educators

Dodona: an online co-teacher for learning to code

Charlotte Van Petegem (Universiteit Gent), Dominiek Vandewalle (College Waregem), Alex Bervoets (Atheneum De Ring, Leuven), Bart Mesuere (Universiteit Gent), Peter Dawyndt (Universiteit Gent)


Dodona ( is an online learning environment for computer programming. The platform supports multiple programming languages and is made freely available to schools in support of their computer science education.

Students use their school account for authentication (both
Office 365 and Smartschool are currently supported), register for courses and choose from hundreds of programming exercises. They use the built-in editor for submitting their solutions and receive automatically generated feedback after just a few seconds. Based on this feedback, they adjust or further refine their solutions. At any time they can monitor their own progress through the learning path of a course and are reminded about upcoming deadlines for assignments.

Teachers can create an unlimited number of courses in which they outline a
learning path with exercises for a specific target audience. They choose from carefully designed exercises with varying degrees of difficulty. As an alternative, they can add their own exercises to Dodona, and share them with their colleagues if they wish to do so. Learning analytics allow them to constantly monitor the progress of all students in their courses, both individually and as a group.

Workshop outline

Two teachers who use Dodona in secundary education as support for their programming classes, guide you in an interactive exploration of all aspects of this learning environment. Bring your own laptop to this hands-on workshop for the ultimate user experience.

At the outset you take the role of a student to see the possibilities of the platform through their eyes. In this way, you experience the added value of an
online co-teacher that immediately gives feedback on solutions that you submit for programming assignments. You will soon enough find out that this feedback takes various forms that you can use to detect and fix bugs in your code.

Afterwards, you learn how to
design your own course in no time as a teacher. From the workshop you take your personal course back to school, where you can bring it into practice with your own students. In the run-up to the workshop, team Dodona will link the Office 365 or Smartschool accounts from your school to Dodona (please let us know in advance if your school uses a different authentication protocol).


contact form:

New Scientist nominates Bart Mesuere as Science Talent 2019


Bart Mesuere (lead developer Dodona) has been nominated as Science Talent 2019 by New Scientist, together with 24 other young research talents. Vote Bart straight into the finals if you're a satisfied Dodona user.

Bart Mesuere

To better support his own students while learning computer programming, Bart Mesuere developed an intelligent tutoring platform called Dodona. This online learning environment automatically tests submitted solutions and provides rich feedback. What started as a small-scaled hobby project has grown into an indispensable underpinning of computer science education at Ghent University (Belgium). Dodona is also widely used outside Ghent University, both in higher education and in secondary schools. While students improve their programming skills, Dodona uses the enormous flux of behavioral data they generate to provide teachers with insights into the progress of their students. For example, by observing how students practice their programming skills, Bart can predict with 92 percent accuracy whether individual students will pass their programming exam. Teachers can use this information to see when they need to intervene. (New Scientist)