Skip to content

3.0

Compare
Choose a tag to compare
@chvp chvp released this 12 Sep 14:40

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.

image

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 github.com.

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.

image

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.

image


  • Improve course member listing (#1160)
  • Make links in submission table clearer, especially when course-scoped (#1148)
  • Make demo mode available for all course admins (#1152)
  • Show course admins if the class progress visualisation is disabled for a series (#1166)
  • Fix the width of dragged rows in tables that allow drag and drop (#1159)
  • Migrate all icons to Material Design Icons (#1144)
  • Create an index for submissions filtered by judge (#1151)
  • Make the institution filter on the course members page smarter (#1150)
  • Email config errors during repository creation (#1149)
  • Add button for unsubscribing course admins from a course directly (#1141)
  • Fix internal server error when requesting the 0th page of an index (#1138)
  • Reduce the amount of queries when loading the course members page (#1169)
  • Allow teachers to toggle the visibility of exercises when displaying a series (#1185)
  • Change which dates are used for the heatmap when displayed within a course (#1204)
  • Listen to OS-level setting if the user hasn't made a dark/light mode choice yet (#1221)
  • Only show currently enrolled members in scoresheets (#1240)
  • Make sure exercise order in a series is always stable (#1241)
  • Fix rendering of unified diff for legacy python exercises (#1249)
  • Allow permission to be set by judges on tabs in the feedback table (#1246)
  • Exercises in the series on the series edit page now link to themselves in the course (#1247)
  • Redirect back to the referrer when deleting a series from a course (#1268)