Algemeen deel

In augustus 2013 word ik gevraagd les te komen geven als docent programmeren aan de opleiding Applicatie-ontwikkelaar van het ROC Flevoland. Dit ondanks dat ik én geen ervaring heb in lesgeven en ook geen ervaring heb als applicatie-ontwikkelaar. Blijkbaar is er niemand te vinden die beter gekwalificeerd is dan ik, dus stort ik mij vol ijver en enthousiasme op deze nieuwe uitdaging.

Visiebeschrijving

Tijdens een lesdag van de PDG cursus werd ons gevraagd om in een paar kernwoorden onze onderwijsvisie op een sheet te zetten. Ik kwam toen tot bovenstaande sheet.

Uitdaging

Leren programmeren leer je door het te doen. Wij reiken basisbeginselen aan maar pas door ze in de praktijk te brengen leren studenten wat de betekenis en impact is van deze principes. Dit betekent dat we studenten uitdagen met prikkelende, levensechte opdrachten, liefst voor echte opdrachtgevers. Voor alle studenten moeten deze opdrachten uitdagend zijn waarbij rekening moet worden gehouden met tamelijk grote niveauverschillen tussen studenten. Diversificatie speelt daarbij een sleutelrol. Betere studenten moeten worden geprikkeld om de grenzen van hun kunnen op te zoeken terwijl zwakkere studenten nog het vertrouwen moeten ontwikkelen om überhaupt aan opdrachten te beginnen.

Transparantie

Voor studenten moet helder zijn wat er gaandeweg de opleiding van ze wordt verwacht, hoe, wanneer en waarop ze worden beoordeeld en waar ze informatie kunnen vinden.

Zelfstandigheid

Het kwalificatiedossier van de opleiding is geformuleerd in tamelijk generieke eindtermen. Het zegt niets over concrete programmeertalen of platforms. Het is onze taak om studenten in het eerste jaar een solide basis te verschaffen waarmee ze in het woud aan mogelijkheden hun eigen weg kunnen gaan vinden. De meeste tijd en energie gaat naar de eerstejaars en is er vooral op gericht ze te leren zelfstandig te werken. Na hun eerste stageperiode aan het begin van het tweede jaar verwachten we van ze dat ze zelfstandig aan het werk kunnen.

Terugblik

Najaar 2012

Start studie Informatica aan de Open Universiteit. Mijn voornaamste doel op dat moment is leren programmeren met Java. Ik raak erg enthousiast over het onderwijs zoals dat door de OU wordt verzorgd. Veel studiemateriaal is door henzelf ontwikkeld en bijna alles is te vinden binnen hun online leeromgeving.

Augustus 2013

Telefoontje van Corien Rodenburg. Zij vertelt me dat ze opleidingsmanager is van de opleiding Mediavormgeving van het ROC-Flevoland in Almere. Via via had ze gehoord dat ik met Java overweg kan en vraagt of ik belangstelling heb om les te komen geven. Ik leg haar uit dat ik geen onderwijservaring heb, slechts een aantal cursussen programmeren aan de OU heb gedaan en geen werkervaring heb als applicatie-ontwikkelaar. Dit weerhoudt haar niet mij voor een gesprek uit te nodigen.

Het gesprek vindt een week later plaats. Inmiddels ben ik enigszins aan het idee gewend geraakt. Aan tafel zit een delegatie van de opleiding Mediavormgeving waar Applicatie Ontwikkeling (AO) onderdeel van is. Ton van Beuningen is de vakdocent aan tafel. Ik leg nogmaals uit dat ik weinig programmeerervaring heb en slechts enkele cursussen aan de Open Universiteit heb gedaan. Ton geeft aan dat hij de Open Universiteit cursussen kent. Op basis van het niveau schat hij in dat het curriculum van AO - met wat hulp - geen problemen zou moeten opleveren, mits ik niet bang ben wat tijd te investeren.

Een paar dagen later belt Corien mij dat ze het graag met me willen proberen.

Ergens in deze gesprekken wordt terloops medegedeeld dat ik nog wel een cursus moet doen om mijn bevoegdheid als MBO docent te halen. Op dat moment is dat ongeveer het laatste waar ik me zorgen over maak.

Schooljaar 2013/'14: In het land der blinden...

Het eerste jaar van mijn docentschap staat vooral in het teken van vertrouwd raken met de vakken programmeren zoals die worden gegeven bij AO en mijn vakinhoudelijke achterstand in te lopen. In januari begin ik aan de PDG cursus maar besluit al snel dat de cursus voor mij op dat moment te vroeg en teveel is. Ik weet nog niet eens of ik wel docent programmeren kan/wil zijn.

Het studielandschap

Eerstejaars studenten zitten zo'n 16 uren in ons "studielandschap", vaak met meerdere groepen en meerdere docenten bij elkaar. De sfeer is gezellig. Van studenten wordt verwacht dat ze zelfstandig opdrachten maken en zich gaandeweg het programmeren eigen maken. De opdrachten beginnen simpel maar worden al snel vrij pittig - ook voor mij. Als studenten er niet uitkomen kunnen ze aan elkaar of de aanwezige docenten hulp vragen - meestal in die volgorde. Ik ben een soort superstudent die zorgt dat hij alle opdrachten heeft uitgewerkt zodat ik studenten kan helpen als ze er niet uit komen. Ik heb nog weinig ervaring met bijvoorbeeld het opsporen van fouten, maar uiteindelijk komen we er wel uit.

Het onderwijs

Ik kom er gaandeweg achter dat tot 2013 de studie een tweejarige kopstudie was, bedoeld voor studenten die de MBO-3 opleiding ICT hebben afgerond. In 2013 komen de meeste studenten ineens vers van het VMBO voor een driejarige opleiding. Het studiemateriaal en lesprogramma is in z'n geheel niet op deze nieuwe situatie afgestemd. De opleiding moet zowel qua onderwijs als leerstof nog worden vormgegeven. Het besef dringt langzaam tot me door dat dit proces de nodige jaren zal gaan vergen.

De opleiding maakt nauwelijks gebruik van bestaand studiemateriaal. Volgens Ton van Beuningen is het heel moeilijk om geschikt materiaal te vinden voor MBO studenten. Gezien de ontwikkelingsfase van het vak is dat ook niet zo gek. Het is dus aan ons om geschikt materiaal te ontwikkelen.

Tijdens de kerstvakantie maak ik - geïnspireerd door de Open Universiteit - een begin met het digitaliseren en online zetten van het bestaande cursusmateriaal om het beter toegankelijk te maken en om het gemakkelijk en snel te kunnen aanpassen. In de loop der tijd blijf ik hieraan werken en ontwikkelt de site zich als het centrale portaal voor ons programmeer-curriculum. Cursussen worden ieder jaar verbeterd of in sommige gevallen zelfs vervangen.

Instructie

Anders dan ik had verwacht wordt er betrekkelijk weinig instructie gegeven. Programmeren kun je niet leren van iemand die voor een klas staat is de gedachte. Het is vooral een kwestie van doen. Schoorvoetend probeer ik wat instructie-lessen te geven, maar vind het erg lastig. Het probleem van instructie in deze onderwijs-vorm is dat studenten allemaal hun eigen tempo hebben. Ik merk dat mijn uitleg voor de ene helft als mosterd na de maaltijd komt en voor de andere helft juist onbegrijpelijk is. Individueel hulp bieden lijkt wel zo effectief en dat is dan ook waar ik me het meest mee bezig houd.

Toetsing: technisch gesprek

Toetsing van programmeervakken vindt plaats door studenten te vragen hun uitwerkingen te tonen en aan de docent uit te leggen in een zogenaamd "technisch gesprek". Daarbij gaat het er vooral om dat ze snappen wat er staat en aan kunnen tonen bepaalde vaktermen te beheersen en is als zodanig onderdeel van het examen. Het gesprek is een mooi moment om individueel met een student een gesprek te voeren over de gemaakte opdracht en programmeertechniek. Vaak zie je dat tijdens het gesprek begrip voor bepaalde zaken ontstaat of beseft de student zich dat hij bepaalde onderdelen nog onvoldoende beheerst. Zo'n gesprek is vaak aanleiding om ook te praten over bijvooorbeeld wijze van studeren en keuzes met betrekking tot loopbaan en stage. Nadeel van deze methode is dat studenten snel geneigd zijn code van elkaar te kopiëren en niet het geduld betrachten om er zelf uit te komen. In latere jaren ga ik andere toetsvormen uitproberen, maar het technisch gesprek blijft in alle gevallen een onderdeel bij mij en mijn collega's.

Structuur en begeleiding

De zelfstandige manier van werken die van studenten wordt verwacht heeft ook duidelijk zijn keerzijde. Veel studenten kunnen de vrijheid die ze wordt gegeven simpelweg nog niet aan en gaan de hele dag gamen of naar YouTube kijken. Dit leidt tot vrij hoge uitval tijdens het eerste jaar. Uiteindelijk zal blijken dat ongeveer de helft van de studenten dat jaar afvalt. In latere jaren gaan we intensiever begeleiden, meer structuur bieden en ook andere instructiemethoden en toetsvormen gebruiken. Het aantal afvallers loopt (hierdoor) gaandeweg terug maar blijft relatief hoog. Programmeren is nu eenmaal moeilijk en inspannend en niet iedereen is hiervoor in de wieg gelegd.

Uitdaging

Wat me het meest dwars zit in het eerste jaar is dat betere studenten nauwelijks worden uitgedaagd. Zij gaan zich vervelen.

In een spel dat ik een tijdlang heb gespeeld werden op een gegeven moment badges geïntroduceerd. De badges hadden in het begin weinig betekenis; je kon er niks mee en hadden op dat moment nog geen invoed op het spelverloop. Toch zag ik dat de - in het algemeen vrij volwassen - spelers fanatiek hun best gingen doen om de badges te halen. Hoe zou dit dan voor onze doelgroep werken?

Gekoppeld aan een opdracht aan het eind van het eerste jaar heb ik het fenomeen "Code-Ninja badge" geïntroduceerd. Om het uitdagend te maken heb ik de criteria voor de levels vrij hoog gelegd.

Studenten kunnen de badge verdienen met het uitprogrammeren van een interactieve webpagina tijdens de cursus jsp/databases aan het eind van het eerste jaar. De badges werken zeker positief op de motivatie van studenten. Met name voor de betere studenten is het een prikkel om een stapje harder te lopen en zich te onderscheiden.

Inmiddels bied ik de mogelijkheid aan studenten om hun online portfolio op een openbaar gedeelte van de site te publiceren. Bij publikatie wordt een level en badge toegekend. Ik hoop hiermee te bereiken dat de levels voor zowel de studenten als het beroepsveld (bijvoorbeeld stage-bedrijven) betekenis krijgen.

Tijdens een vergadering over een student tevredenheids enquête werd door een docent van Sport & Bewegen over de groep AO'ers opgemerkt dat ze zo behulpzaam naar elkaar toe waren en hij bracht dit in verband met o.m. de Ninja-badges die inmiddels een zekere cult-status hebben verworven binnen ons ROC.

Schooljaar 2014/'15

Google for education & Classroom

Aan het eind van mijn eerste schooljaar komt mij ter ore dat Google met "Classroom" komt: een online leeromgeving voor onderwijsinstellingen die gebruik maken van Google for Education. Ik geef te kennen hier heel graag mee te willen experimenteren, omdat het op dat moment in mijn ogen ontbreekt aan heldere communicatie met studenten, met name over opdrachten die ingeleverd moeten worden, het studietempo, de voortgang en de resultaten. Een goede online leeromgeving kan hier een oplossing bieden.

Tijdens een dagje op de hei besluiten we om het komende jaar een pilot te starten binnen AO. We regelen een domeinnaam (roc-dev.com) en een Google for education account.

De kracht van Classroom schuilt in de eenvoud. Een docent creëert een Classroom met een cursus. Studenten worden uitgenodigd of melden zich voor de cursus aan met een lesgroepcode. De docent geeft opdrachten met een inleverdatum/tijd. Studenten leveren hun opdrachten in via Classroom. De opdrachten worden automatisch gearchiveerd per lesgroep op Google Drive. Docenten kunnen de opdrachten van studenten van commentaar voorzien en ze beoordelen. Er kan op betrekkelijk eenvoudige wijze een online spreadsheet met een overzicht van de voortgang per Classroom worden geproduceerd. Naast het geven van opdrachten kunnen zowel docenten als studenten ook mededelingen publiceren en commentaar geven. In die zin fungeert het tevens als sociaal platform.

Voorbeeld van een mededeling met commentaar student

Uit verslag studentenpanel 9 oktober 2014

Inmiddels werken nagenoeg alle docenten en studenten van zowel AO als Media Vormgeving naar volle tevredenheid met Classroom en Google Apps for Education.

Onderwijsmateriaal

Het onderwijsmateriaal dat ik gebruik voor mijn vakken staat inmiddels allemaal online. Studenten geven aan het fijn te vinden dat alles goed geordend bij elkaar op één website te vinden is. Bijkomend voordeel is dat studenten niet hoeven te wachten tot een nieuw vak begint als ze voorlopen, maar gewoon verder kunnen. Het is al voorgekomen dat eerstejaars studenten vakken uit het tweede jaar al (deels) hebben afgerond. Nu ik bepaalde cursussen voor de tweede keer geef en me wat vertrouwder ga voelen met de inhoud begin ik gaandeweg verbeteringen in het materiaal aan te brengen en leuke/uitdagende opdrachten te bedenken die studenten kunnen maken en betrekkelijk eenvoudig zelf online kunnen zetten in "de cloud".

Toetsing

Toetsen werden tot nu toe altijd gedaan met behulp van technische gesprekken over opdrachten die studenten zelfstandig hadden gedaan. Omdat veel studenten code van elkaar kopiëren besluit ik om een aantal toetsen te ontwikkelen voor het vak inleiding java. De toetsen worden gehouden als mini-hackathon waarbij studenten in 5 á 6 uur een app moeten maken. Deze toets is vooral bedoeld om studenten die er met de pet naar gooien en studenten die moeite met de stof hebben er uit te pikken en hier met hen over in gesprek te gaan.

Deze toetsvorm lijkt het meest op wat in Geerts en Van Kralingen (2012) wordt beschreven als praktijktoetsopdracht op shows-howniveau.

De studenten moeten de toets zelf maken maar mogen elkaar wel om raad vragen. Gedurende de toets loop ik regelmatig door het lokaal om te checken of ze wel echt bezig zijn door tussentijds hun code tot dan toe te bekijken . Tijdens een technisch gesprek wordt gecontroleerd of ze de code begrijpen. Het is dan niet moeilijk om de studenten er uit te pikken die de code klakkeloos hebben gekopieerd zonder er iets van te begrijpen.

Studenten worden beoordeeld met een voldoende/onvoldoende. Studenten die code inleveren die ze niet zelf hebben geschreven en niet begrijpen wat er staat krijgen een onvoldoende en moeten herkansen. Met studenten die er niet (helemaal) zijn uitgekomen gaat het in het technisch gesprek vooral over waar het nog aan schort en wat we kunnen doen om dit te verbeteren. Vaak besluiten we samen dat de student de herkansing gaat doen, niet zozeer om een onvoldoende goed te maken, maar omdat hij de oefening goed kan gebruiken. De herkansingstoets is wat gemakkelijker dan de eerste toets zodat iedereen die van goede wil is het uiteindelijk kan halen en de eerste toets voor betere studenten toch uitdagend blijft.

Achteraf gaven studenten aan deze toetsvorm spannend, uitdagend en heel leerzaam te hebben gevonden.

Van die toetsen van jou leer ik nog het meest

Sander - eerstejaars student

Instructie: voordoen in plaats van uitleg

Een tweedejaars student vertelt me dat op een HBO opleiding de docent voor de klas gehele opgaves samen met de studenten regel voor regel programmeert. Ik besluit dit te gaan uitproberen. Later lees ik dat deze methode wordt gepropageerd in het 4C-id-model zoals dat wordt beschreven in 'Innovatief onderwijs in de praktijk' (van Merriënboer, 2011).

Learning is promoted when the instruction demonstrates what is to be learned rather than merely telling information about what is to be learned.

Ik neem een opdracht die studenten moeten maken. Bij iedere programmeerstap daag ik studenten uit om mee te denken door open vragen te stellen. Studenten die de opgave niet hebben gemaakt schrijven mee. Voorbeelden van vragen:

  • hoe maak je ook al weer een Applet?
  • wat voor variabelen hebben we nodig voor deze app?
  • welke methode of klasse kunnen we hier gebruiken?

Ik vind dat dit een stuk beter werkt dan uitleggen hoe geïsoleerde onderdelen van een programmeertaak werken omdat studenten de toepassing van een onderdeel zien, maar vooral leren dat programmeren een kwestie is van complexe problemen opdelen in kleine deelproblemen en die één voor één oplossen. Studenten die de opgave (nog) niet hebben gemaakt denken/coderen mee. Voor hen biedt deze methode houvast en is de les eigenlijk een cadeautje. Studenten die het wel al hebben gemaakt vergelijken hun oplossing met die van de docent. Zij brengen vaak alternatieve oplossingen in waarover gediscussieerd kan worden. Hierdoor leren ze ook dat er vaak meerdere wegen naar Rome leiden. Deze methode werkt alleen bij kleine programmeertaken die binnen afzienbare tijd te doen zijn, anders duurt het al snel te lang voor zowel student als docent (heb ik door schade en schande ondervonden).

Schooljaar 2015/'16

Video instructie

Aan het begin van het schooljaar volg ik een Google cursus over hun Cloud Platform. De cursus wordt gegeven middels een Video hangout on air door een docent die ergens in de Verenigde Staten zit. Het lesmateriaal wordt verspreid middels een web pagina en deelnemers kunnen middels chat vragen aan de docent stellen. De cursus gaat in nogal rap tempo maar is na de cursus terug te vinden op YouTube zodat je het later in je eigen tempo rustig terug kunt kijken. Ik vertel mijn collega's hierover en we besluiten hiermee te gaan experimenteren omdat dit een antwoord zou kunnen zijn op het probleem dat veel studenten uitleg niet kunnen volgen. De gedachte is dat we onze instructielessen gaan opnemen en de video's op Classroom zetten zodat studenten ze terug kunnen kijken als ze het niet helemaal hebben kunnen volgen of niet aanwezig waren.

Studenten geven aan dat ze dit waarderen. Sommigen geven zelfs aan liever de video's later op hun gemak en in eigen tempo terug te kijken dan dat ze de aandacht erbij moeten houden in het instructielokaal.

Tezelfdertijd maken we als docenten voor ons zelf steeds meer gebruik van online cursussen die middels video tutorials worden aangeboden om zelf nieuwe dingen te leren. Boeken gebruiken we steeds minder. Van het één komt het ander. In een volgende stap maken we thuis video's met uitleg zodat studenten helemaal niet meer naar onze uitleg in de klas hoeven te luisteren.

De instructielessen kunnen daardoor beperkt worden tot bijvoorbeeld het benoemen van en terugkijken op leerdoelen, informatie met betrekking tot planning, procedures, toetsing etc.

Android

Ik ben al enige tijd bezig mezelf de beginselen van het programmeren van Android apps bij te brengen en de gelegenheid doet zich voor om een cursus aan onze tweedejaars studenten aan te bieden die terugkomen van hun eerste stageperiode. Het ligt voor de hand om bij het maken van de cursus gebruik te gaan maken van video.

Ik heb het ontwikkelen van de cursus gebruikt voor mijn beroepsproduct. Het gebruik van video was daarbij een belangrijk element.

Vooruitblik

Na drie jaar staat de opleiding AO aardig in de steigers. Vakdocenten werken nauw met elkaar samen, de sfeer is uitstekend en studenten geven in het algemeen aan zeer tevreden te zijn over het onderwijs.

Ik had nooit gedacht dat ik al na één jaar op dit niveau zou kunnen programmeren.

Jeffrey aan het einde van jaar 1 - inmiddels afgestudeerd

Ik geef AO wel een 9

Ferat - 2e jaars tijdens studentenpanel naar aanleiding JOB enquête 2016

Eén van de grootste problemen van de opleiding is dat er nauwelijks geschikt studiemateriaal voor MBO studenten is te vinden. We moeten alles zelf ontwikkelen. Afgelopen jaar hebben we geëxperimenteerd met het zelf maken van instructievideo's. Dit is door studenten heel goed ontvangen, maar is vreselijk tijdrovend. Aankomend jaar krijgen studenten bij wijze van experiment een premium abonnement op Lynda.com die een schat aan cursussen/tutorials voor ons vakgebied aanbiedt. Hoe we dit gaan inzetten in ons onderwijs en wat dit precies voor het onderwijs betekent wordt de grote uitdaging voor het komende jaar.