Loopbaan

Carriere
vraag van student

Het waarom van programmeren

De 'waarom-vraag' ontbreekt vaak in lesmateriaal van informaticastudenten.

© Shutterstock eggeegg
6 januari 2022

Sinds vorig schooljaar werk ik op de VU in de lerarenopleiding informatica, en ik denk dat dit de leukste baan is die ik ooit gehad heb. Het geeft voldoening om bij te kunnen dragen aan een nieuwe generatie informaticadocenten, en door les te geven over lesgeven reflecteer je ook enorm veel op jezelf en je eigen onderwijs.

Wat er ook zo mooi aan is: leren van andere schoolvakken. Ieder vak heeft een eigen 'vakdidacticus' die expert is in zijn of haar vakgebied en vooral in het doceren ervan, en van die collega’s leer ik ook enorm veel.

Wat me opviel is dat bij andere vakken het waarom enorm centraal staat. Ja, de slag bij Waterloo was in 1815, maar waarom was dat zo belangrijk? Ja, zwaartekracht zorgt ervoor dat dingen naar de aarde vallen maar welke dingen maakt die kracht mogelijk?

Dat deed me kritisch kijken naar informatica-lesmateriaal, waar dat waarom vaak geheel ontbreekt. Van die programmaatjes die iedere informaticadocent wel eens (in een variant) heeft gedoceerd, denk ik:

x = 5
if x == 5:
   print(“jahoor”)
else:

   print(“nee”)

Nu legt dit programma, in zekere zin, wel uit wat een if doet, maar het zegt weinig over in wat voor situatie je zo’n if zou gebruiken. En het neemt de leerling al helemaal niet mee in het waarom. Dit programma zou je ook gewoon kunnen vervangen door alleen jahoor printen! Dit is nog zo’n programma dat je zinloos zou kunnen noemen:

dieren = [‘hond’, ‘kat’, ‘cavia’]

print(dieren[1])

En deze cultuur beperkt zich zeker niet tot onderwijs. Ook de documentatie van veel programmeertalen gebruikt graag foo en bar als variabelennamen, in plaats van dingen met wat meer betekenis.

Eerder sprak ik in deze column al over het idee van een 'leerlingbeeld': aan wie denk je als je je lessen voorbereidt. De voorbeelden zonder een waarom zijn, bewust of onbewust, geënt op de leerling of student die al weet wat programmeren is, waarom het nuttig is, en misschien zelfs waarom je een if zou gebruiken. De leerling die alleen nog even moet weten hoe een if in deze programmeertaal precies werkt, die leerling kan wel uit de voeten met dit voorbeeld.

Maar een student die nog helemaal niet weet in welke situatie je een if zou gebruiken, die steekt van dit voorbeeld niet zoveel op. Misschien versterkt het voorbeeld zelfs zijn idee dat programmeren moeilijk en gek is, of dat er redenen zijn om dit programma wel te gebruiken die deze leerling nog niet snapt (wat natuurlijk niet zo is, geen mens zou dit programma ooit typen).

Ooit was het misschien wel waar dat de meerderheid van de informaticastudenten al wat van het waarom afwist, maar die tijd ligt achter ons. Tijd dus om het waarom een grotere rol te gaan geven.

Magazine AG Connect

Dit artikel is ook gepubliceerd in het magazine van AG Connect (decembernummer 2021). Wil je alle artikelen uit dit nummer lezen, klik dan hier voor de inhoudsopgave.

Reactie toevoegen
3
Reacties
Eric-Jan Ho 21 januari 2022 20:50

Welke "waarom" IR. JGM van der Zanden?

Hans Bezemer 14 januari 2022 16:23

Wel eens "hoger, lager" geprobeerd? Je hebt er maar een paar elementen voor nodig en je kunt het opbouwen.

Voor een "hoger, lager" heb je maar een handvol elementen nodig:
- random functie
- if statement
- input statement
- print statement

Het is ook een mooie kerstboom om op door te bouwen. Logisch dat studenten iets willen doen. Didaktiek vereist een zekere creativiteit. En als je creativiteit wilt, moet je verder dan de boekjes kijken. Jouw taak.

Ir. JGM van der Zanden 06 januari 2022 14:29

Nu ben ik wel benieuwd naar het antwoord op de waarom-vraag!!!