Course Attendance Registration: Digitalized (CARD)

In this blog describes Timo Halbesma (Physics student) how his idea for the application CARD was born and how he brought it to reality by his student UvA Grassroots project. CARD is a proof of concept but is now already successfully used in teaching practice by several teachers saving them their precious time. A success which will be scaled in near future.   

Timo Halbesma showing the RFID cardreader for StudentID cards attached to a laptop running the CARD website.

Timo Halbesma showing the RFID cardreader for StudentID cards attached to a laptop running the CARD website.

During the first semester of the 2011/2012 academic year I was enrolled for Java Programming. The following semester I enrolled for Big History and the Future of Humanities, an open UvA course with compulsory attendance. One of my observations was that the attendance list for roughly 500 students was a sheet of paper that was passed trough the lecture room which students had to sign with their name and student ID number. I was puzzled why this was happening because such a list would for sure be digitalized later on, a task that is so boring that my brain would implode. At that point in time I made up my mind to write a programme in Java that would automate this task to absolve the course coordinator from this drudgery.

My endeavors were fruitless as my programming skills were far from adequate to successfully complete this challenge. The lecturer would require a GUI (not straightforward in Java and not a part of the course I took) instead of a CLI application, there had to be an easy way to inform students of their attendance progress (how would I achieve this?) and the application would have to be installed on different machines with different operating systems and different versions (probably a complete disaster). The easiest solution was to develop a website because it has a user-friendly interface that everybody is familiar with. Moreover, both students and teachers can access the website from all over the world, from any machine or browser combination imaginable.

A couple of years later I had develloped usefull skills in GNU/Linux, Pyton, a little bit of HTML/php/mysql and I was pointed at the Django framework for the very straight-forward programming language Python. Now, the first thing I read about Django was ‘The Web framework for perfectionists with deadlines’ so I was instantly hooked and determined to study the framework in great depth to achieve my goals. During my Bachelor in Astronomy and Physics I have worked for Joëlle Kessels as a tutor in the Astronomy and Physics bachelor. In addition to coordinating both academic skills and the tutors, Joëlle recently started to coordinate Oriëntatie Natuur- en Sterrenkunde, a course that is passed after a student has attendend at least 25 lectures. This course is the perfect playing ground for my attendance project and my intentions to develop a website for fast and user-friendly attendance registration. Joëlle brought the ICTO grassroots subsidy to my attention and I contacted Natasa Brouwer (ICTO-FNWI coordinatior) for the necessary support and cooperation with my grassroots project and a contact with the Datanose (Gerrit Oomens) was made.

CARD-HomeNext, development commenced. At my home server I configured apache2/mod_wsgi/mysql to accept http requests handled by python/django. My first challenge was to lock down the site using a login system. Django-registration was almost perfect, but after some slight modifications I managed to combine (i.e. copying code from the Open Source project Starfish by ICTO-FNWI) it with IvOAuth, a wrapper around Surfconnext/CAS to enable student/staff login via the UvAnetIDs. The following step was to implement an accessable, friendly user interface. Bootstrap, in my opinion, is like a lego kit that may be used to suit the needs of the programmer on the front end of websites (javascript, css, ajax). After the implementation of my user interface I had to crack some difficult puzzles on the backend concerning the complicated OneToMany and/or ManyToMany relationship between courses, lectures, students, users, teachers and datetimes. After finializing the first version of the website I could foccus on registering/notifying users that are attending courses, checking DataNose if a student is actually enrolled for the course, importing from – and exporting to Excel databases and serverside logging for debug/info purposes.

CARD_TeacherCourseView_annoniemCurrently, CARD is used by Oriëntatie Natuur- en Sterrenkunde. The paper attendance registration has been replaced with CARD alltogether after two trial runs. Starting September 2014 CARD wil be used again for Oriëntatie and is looking for the possibilities for expanding the usage of CARD at the whole University of Amsterdam.

Contribution: Timo Halbesma

Links Starfish
Project description:
Good practice CARD:


Tentamenlade op ICAB conferentie 2013

De Tentamenlade, een platform voor tentamenvragen was gepresenteerd op de ICAB2013 conferentie in Nijkerk. De database bevat nu ca. 100 tentamenvragen over Qunatumfysica 1 en 2 . Marcel Vreeswijk die de presentatie heeft gegeven heeft veel positieve feedback ontvangen van collega’s natuurkunde docenten. Tentamelade is te vinden op


  • Tentamenlade is een platform van docenten om tentamenvragen te verzamelen en met elkaar te delen. Het is een gesloten platvorm.
  • Tentamenlade database kan eenvoudig worden doorzocht. Docenten kunnen op intuïtieve wijze een lijst van vragen samenstellen en exporteren als PDF document of downloaden in LaTeX formaat.
  • Tentamenlade heeft ruime mogelijkheden voor het toevoegen van vragen met eventuele bijlagen en ondersteunt LaTeX.
  • In Tentamenlade kan de kwaliteit van vragen door andere gebruikers worden beoordeeld middels een geïntegreerd commentaarsysteem.
  • Tentamenlade bevat nu meer dan 100 tentamenvragen van Quantumfysica 1 en 2 met het doel om beproefd te worden door de docenten van deze twee vakken bij Nederlandse universiteiten en aangevuld te worden met meer tentamenvragen. Op termijn zou het systeem nog verder uitgebreid kunnen worden naar andere natuurkunde vakken of zelfs andere opleidingen.
  • Tentamenlade is tot stand gekomen in een ICAB samenwerkingsproject van de Universiteit van Amsterdam en Vrije Universiteit van Amsterdam in 2012-2013. De database is ontwikkeld door Informatica studenten tijdens een regulier vak bij Informatica.

ICAB (Innovatieventra Academisch Beta Onderwijs)

ICAB_Natuurkunde1Bij vragen over het Quantumfysica bestand in Tentamelade neem contact met Marcel Vreeswijk (

Voor de toegang en bij andere vragen over Tentamenlade neem contact met Natasa Brouwer (

Bijdrage: Natasa Brouwer