Nieuws

2.7 release notes

2018-12-04

Release 2.7 bevat een punchcard met een visuele weergave van wanneer gebruikers oplossingen hebben ingediend en biedt functionaliteit om labels toe te kennen aan cursusgebruikers.

Punchcard

Op de profielpagina van een gebruiker en op de pagina van een gebruiker binnen een cursus staat een punchcard die visualiseert wanneer de gebruiker oefeningen heeft ingediend op Dodona. Op de profielpagina van een gebruiker worden alle oplossingen die de gebruiker heeft ingediend in rekening gebracht. Op de pagina van een gebruiker binnen een cursus worden enkel de oplossingen in rekening gebracht die de gebruiker heeft ingediend binnen de cursus. Gebruikers kunnen hun eigen profielpagina bekijken en cursusbeheerders kunnen de pagina's van alle cursusgebruikers bekijken.
Voorbeeld van een punchcard


Labels voor cursusgebruikers

Cursusbeheerders kunnen vanaf nu labels toekennen aan de gebruikers van hun cursussen. Op die manier kunnen ze groepen van studenten aanmaken binnen eenzelfde cursus. Labels die aan cursusgebruikers toegekend worden zijn enkel zichtbaar binnen één enkele cursus. Beheerders van een cursus kunnen nooit de labels zien die binnen een andere cursus aan gebruikers toegekend werden.

Er zijn twee manieren om labels toe te kennen aan cursusgebruikers. Op de pagina van een cursusgebruiker staat een knop om de labels van de gebruiker te wijzigen. Op de pagina die alle gebruikers van een cursus weergeeft, vind je in het actiemenu de optie "Alle labels bewerken" waarmee de labels voor alle cursusgebruikers in één keer kunnen ingesteld worden.

Screenshot dat het menu toont waar de actie om alle labels te bewerken gevonden kan worden


Labels die toegekend werden aan cursusgebruikers kunnen gebruikt worden bij het zoeken naar ingediende oplossingen binnen een cursus en bij het zoeken naar gebruikers binnen een cursus.

Nieuwe onderwijs- en onderzoeksinstellingen

Bij deze release verwelkomen we twee nieuwe middelbare scholen die Dodona gebruiken: Sint-Jozefscollege (Aalst, België) en Atheneum De Ring (Leuven, België).

Volledige lijst van veranderingen

  • metatags toevoegen om inhoud van Dodona in te sluiten in andere websites
  • aanmeldknop voor Sint-Jozefscollege (Aalst, België) toevoegen aan aanmeldpagina
  • Twitter link toevoegen aan footer
  • labels toevoegen aan cursusgebruikers
  • bug oplossen waardoor ingediende oplossing soms niet bijgewerkt werd na evaluatie
  • aanmeldknop voor Atheneum De Ring (Leuven, België) toevoegen aan aanmeldpagina
  • toegang tot delayed job web beperken tot beheerders
  • gebruik van basic auth stopzetten
  • knoppen toevoegen om correcte testen te verbergen
  • punchcard toevoegen aan de gebruikerspagina en gebruikerspagina binnen cursus
  • altijd minstens één email uitsturen wanneer het verwerken van oefeningen misliep
  • beide contenttypes van Github webhooks ondersteunen
  • paginatieparameter opkuisen
  • overzichtspagina met ingediende oplossingen optimaliseren voor smalle schermen
  • compilatie van typescript toevoegen aan webpacker

2.6 release notes

2018-11-21

Release 2.6 bevat een verbeterde diff view op de feedbackpagina, herwerkte caching waardoor pagina’s sneller worden geladen, een pagina met nieuwsberichten over Dodona (waar onder andere de release notes zullen op verschijnen), de mogelijkheid voor cursusbeheerders om de volgorde van reeksen aan te passen in een cursus en de mogelijkheid voor judges om tabs te maken die enkel zichtbaar zijn voor cursusbeheerders (niet voor studenten).

Verbeterde diff view

Als er voor een bepaalde oefeningen een oplossing wordt ingediend, dan wordt die automatisch beoordeeld door een judge die aan de oefening gekoppeld is. Als resultaat van die beoordeling produceert de judge gedetailleerde feedback, waarbij de mogelijkheid bestaat om voor individuele testen een waarde die gegenereerd werd aan de hand van de ingediende oplossing te koppelen aan een verwachte waarde. Om duidelijk de verschillen te zien tussen de gegenereerde en de verwachte waarde, worden deze twee waarden tekstueel met elkaar vergeleken op de feedbackpagina in een zogenaamde diff view. In de nieuwe release werd visuele weergave van deze diff view verbeterd, waarbij het voor gebruikers nog duidelijker geworden is om onderscheid te maken tussen welke waarde gegenereerd werd door hun oplossing en wat de verwachte waarde is. Er worden nu ook regelnummers weergegeven naast de gegenereerde en de verwachte waarde om de vergelijking tussen de twee resultaten te bevorderen.
Verbeterde diff view, waarbij de gegenereerde en de verwachte waarde naast elkaar weergegeven worden in “gescheiden" modus.

Bovenaan de feedbackpagina is er ook een knop bijgekomen waarmee gebruikers kunnen kiezen om de gegenereerde en de verwachte waarde naast elkaar (“split” mode) of door elkaar (“unified” mode) weer te geven. Deze feedback die hierboven naast elkaar werd weergegeven ziet er dan als volgt uit als die door elkaar wordt weergegeven.
Verbeterde diff view, waarbij de gegenereerde en de verwachte waarde door elkaar weergegeven worden in “eengemaakte" modus.

Deze nieuwe functionaliteit is vooral interessant als de waarde uit meerdere regels bestaat.

Herwerkte caching

Om pagina’s zo snel mogelijk weer te gegeven, probeert Dodona berekende waarden te onthouden zodat ze niet opnieuw moeten berekend worden als ze later opnieuw nodig zijn. Dit trucje wordt caching genoemd. Het caching-mechanisme van Dodona werd herschreven, waardoor Dodona nu meer controle heeft om te beslissen welke waarden moeten onthouden worden en wanneer het wel nodig is om de waarden opnieuw te berekenen. Dit zorgt er voor dat sommige pagina's nu sneller geladen worden.

Dodona blog

Klik op “Nieuws” in het menu aan de linkerkant van elke Dodona-pagina om naar de blog te navigeren. Als je deze release notes aan het lezen bent dan heb je de blog van Dodona dus al gevonden. Vanaf nu kan je nieuwsberichten over Dodona volgen in de blog: release notes, nieuwe onderwijs- of onderzoeksinstellingen die Dodona gebruiken, events rond Dodona, … Kortom, alles wat de Dodona-community zou kunnen interesseren.

Volgorde van reeksen aanpassen

Dit moet zowat de meest gevraagde functionaliteit zijn onder lesgevers, en nu is die er. Onderaan de pagina waar je de eigenschappen van een cursus kan bewerken, vind je een overzicht met de reeksen van de cursus. Door in dit overzicht de reeksen te verslepen, kan je de volgorde aanpassen waarin de reeksen weergegeven worden.
Wijzig de volgorde van de reeksen in een cursus door eenvoudigweg de reeksen te verslepen naar hun nieuwe plaats.

Verborgen tabs

Dodona geeft judges de kans om feedback te groeperen in verschillende tabs. Nu is er de mogelijkheid om een tab enkel zichtbaar te maken voor lesgevers en niet voor studenten. Dit maakt het bijvoorbeeld mogelijk om een reeks testen uit te voeren waarover de studenten feedback krijgt, maar ook een reeks “verborgen” testen waarover de student geen feedback krijgt. De judge kan zelf bepalen of de resultaten van deze verborgen testen in rekening gebracht worden (bijvoorbeeld in de globale beoordeling van de oplossing, of een korte rapportering in de top-level feedback). Op die manier kan bijvoorbeeld de mogelijkheid geboden worden om een aantal verborgen testen te hebben, waarvoor de student geen kans krijgt om die te gamen (code schrijven die er specifiek voor zorgt dat bepaalde testen slagen).

Bestaande judges en oefeningen kunnen vanaf nu aangepast worden om de mogelijkheid van verborgen tabs uit te buiten. Specifieke vragen hierover kan je richten aan de auteurs van de judges en de oefeningen.

Nieuwe onderwijs- en onderzoeksinstellingen


Bij deze release verwelkomen we twee nieuwe onderwijsinstellingen die Dodona gebruiken: Scheppersinstituut (Wetteren, België) en UC Leuven Limburg (Hasselt, België).

Volledige lijst van veranderingen

  • diff view herwerken
  • caching herwerken
  • mindere lege waarden naar configuratiebestanden schrijven
  • tooltip toevoegen aan status van reeks
  • blog toevoegen
  • visuele weergave feedbackpagina herwerken
  • verborgen tabs ondersteunen in feedbackpagina
  • cursusbeheerders toelaten om volgorde van reeksen aan te passen
  • polling interval gradueel verlengen voor status-update van niet-verwerkte oplossingen
  • bugfixes en kleine verbeteringen

2.5 release notes

2018-10-26

We vieren de 2.5 miljoenste ingezonden oplossing op Dodona met de release van Dodona versie 2.5, met de mogelijkheid om labels te beheren via configuratiebestanden, verbeterde zoekfunctionaliteit, een nieuwe pagina om de voortgang van een gebruiker doorheen het leerpad van een cursus beter te kunnen opvolgen en het sneller inladen van cursuspagina’s.

We verwelkomen twee nieuwe middelbare scholen in de Dodona-familie: MSKA Roeselare en Don Bosco College Kortrijk (aanmelden verloopt in beide gevallen via Smartschool) die worden gecoacht door prof. dr. Veerle Fack.

Vanaf nu zullen nieuwe Dodona-functionaliteiten in productie genomen worden van zodra ze afgewerkt en getest zijn, in plaats van ze te groeperen in grotere updates. Door deze kleinere tussentijdse releases kan Dodona meestal zonder onderbreking blijven functioneren tijdens het releasen, kunnen jullie sneller van nieuwe functionaliteiten gebruikmaken, vermindert het risico dat er iets fout gaat en kunnen we updates sneller bijsturen of terugdraaien in geval van problemen. Blijf alvast jullie feedback, opmerkingen en suggesties doorsturen als issue op de GitHub repository van Dodona of via het Dodona contactformulier.

Beheren van labels via configuratiebestanden

Zoals je misschien gemerkt hebt in je repositories met oefeningen, is er in de configuratiebestanden van de oefeningen een nieuwe record labels bijgekomen die toelaat om een lijst van labels (strings) in te stellen voor een specifieke oefening (config.json) of voor alle oefeningen onder een directory (dirconfig.json). Dit laat toe om rechtstreeks labels toe te kennen aan oefeningen in een repository los van de web interface, waardoor het toekennen van labels ook makkelijker kan geautomatiseerd worden. We nodigen je alvast uit om te blijven experimenteren met labels en horen graag je feedback hierover.

Meer mogelijkheden om te zoeken

Zowel aan cursussen als aan oefeningen werd bijkomende metadata toegevoegd om het zoeken naar specifieke cursussen of oefeningen nog te verbeteren. Voor cursussen kan nu optioneel ingesteld worden door welke een onderzoeks- of onderwijsinstelling ze aangeboden worden, en aan oefeningen wordt de programmeertaal, de naam van de repository en de locatie binnen de repository gekoppeld. Deze nieuwe informatie werd automatisch toegevoegd voor alle bestaande cursussen en oefeningen, waardoor je hiervoor geen extra acties moet ondernemen.

Bij het zoeken naar labels, programmeertalen of repository’s probeert Dodona nu zelf je zoekopdracht aan te vullen en toont het overeenkomstige items als een token. Het zoeken zelf is ook slimmer geworden door te zoeken met individuele woorden in een zoekopdracht in plaats van de volledige zoekopdracht. Onderstaand voorbeeld toont hoe oefeningen aan een reeks kunnen toegevoegd worden door te zoeken naar alle oefeningen voor de programmeertaal “python” die gelabeld zijn met “loops” en die corresponderen met de term “number” (gezocht in alle velden, en in dit geval gevonden in de namen van oefeningen in één van de ondersteunde talen).

Alle oefening in python over loops met "number" in de naam


Gebruikerspagina’s met voortgang

Wanneer je op de naam van een gebruiker klikt in de gebruikerslijst van een cursus wordt je naar een nieuwe pagina gebracht waar je de voortgang van die gebruiker in je cursus kan bekijken. Momenteel toont deze pagina de status voor elk van de oefeningen en reeksen maar we zijn van plan hier in de toekomst meer statistieken en grafieken aan toe te voegen (maakt ook deel uit van een masterthesis rond learning analytics and educational data mining).

Even terzijde, vanaf nu worden alle gebruikers over het gehele Dodona platform opgelijst met hun volledige naam (voor- en familienaam) in plaats van hun gebruikersnaam.

Sneller inladen van cursuspagina’s

Cursuspagina’s werden soms traag ingeladen en voor cursussen met veel reeksen moest je om aan de onderste reeks te geraken meerdere keren scrollen en wachten. We hebben dit opgelost met nieuw gedrag voor het inladen waar initieel enkel basisinformatie over de reeks wordt ingeladen en er meer details worden toegevoegd wanneer de reeks zichtbaar wordt in je browser. Het vervangen van de basisversie door de gedetailleerde versie gebeurt zo snel dat je goed moet kunnen scrollen (of op een trage connectie zitten) om dit te zien gebeuren.
Voorbeeld van hoe een skeleton er uit ziet

Dodona coachingsprogramma voor middelbare scholen

Dodona heeft generieke ondersteuning voor authenticatie via Smartschool en Office 365 accounts die vaak gebruikt worden door middelbare scholen in Vlaanderen. Tijdens de huidige pilootfase blokkeren we standaard nog de toegang en geven we gecontroleerd toegang tot scholen met een ervaren “coach” uit de Dodona community die de school helpt om met Dodona aan de slag te gaan en eerste-hulp-bij-vragen ondersteuning kan bieden.

Als een school instapt in het coachingsprogramma, dan krijgen alle gebruikersaccounts van leerlingen en leerkrachten van de school (Smartschool of Office 365) meteen toegang tot Dodona. Sommige leerkrachten van de school krijgen ook de rol “staff” in Dodona waardoor ze kunnen beginnen met de voorbereidingen: aanmaken van cursussen met oefeningenreeksen en/of het toevoegen van nieuwe oefeningen. Van zodra de school concrete plannen heeft om haar leerlingen te laten werken met Dodona, voegen we een specifieke aanmeldknop voor de school toe op de aanmeldpagina van Dodona. 

Als je zelf voor een school Dodona-coach wil worden, vraag de school dan om naar ons (en jezelf) de volgende informatie door te mailen via dodona@ugent.be:

  • naam van de school (zichtbaar op de aanmeldpagina)
  • logo van de school in hoge resolutie (zichtbaar op de aanmeldpagina)
  • authenticatiemethode: Smartschool of Office 365
  • namen van lesgevers die de rol “staff” moeten krijgen op Dodona
  • naam van de coach voor de school vanuit de Dodona community

Als coach voor een school verwachten we van je dat je eerstelijnshulp biedt aan de school om met Dodona aan de slag te gaan. We vermoeden dat de meeste scholen in eerste instantie zullen beginnen met het aanmaken van cursussen op basis van bestaande oefeningen die reeds op het Dodona-platform gedeeld worden, en dat ze pas zullen beginnen om zelf oefeningen (of judges) aan het platform toe te voegen als ze wat meer ervaring hebben. Dit coachingsprogramma staat zeker ook open voor lesgevers uit het middelbaar onderwijs die graag collega’s van andere scholen willen helpen begeleiden.

Dodona TeachMeet (19/09/2018)

Groepsfoto van de TeachMeet

Volledige lijst van veranderingen

  • inladen van reeksen via skeletons
  • snelheidsbeperkingen voor het inzenden van oplossingen
  • programmeertalen vormen nu een eigen model
  • dynamisch aanpassen van landingspagina bij selecteren van favoriete cursussen 
  • gebruik op meeste plaatsen naam van gebruiker in plaats van loginnaam
  • geef Python Tutor toegang tot privé oefeningen
  • toelaten om specifieke Docker-container in te stellen voor oefening
  • gebruik naam en emailadres van gebruiker bij git commits door Dodona
  • beperk aantal PIDs die judges tegelijkertijd kunnen opstarten (preventie voor fork bombs)
  • gebruikerspagina toevoegen die gekoppeld is aan cursus (toont voortgang van gebruiker binnen cursus)
  • instellen van labels toelaten via configuratiebestanden van oefeningen
  • toelaten om oefeningen te zoeken op naam van repository en locatie binnen repository
  • onderwijs- en onderzoeksinstelling instellen voor cursussen
  • zoeken van gebruikers op basis van hun volledig naam
  • schrijfsnelheid beperken tot 1 Mbps tijdens het evalueren
  • tegelijkertijd zoeken binnen meerdere informatievelden (e.g. status en naam van oefening voor ingezonden oplossingen)
  • cursusbeheerders toelaten om ingediende oplossingen in bulk te herevalueren