Stimuleert programmeerles probleemoplossingsvaardigheden?

Geplaatst op 14 december 2017

Samenvatting

Wie programmeert zet diverse vaardigheden in om problemen op te lossen. Denk aan problemen in kleine stukjes opdelen, logisch denken, als-dan redeneringen hanteren enzovoort. Deze vaardigheden worden computational thinking skills genoemd. Leerlingen kunnen dit soort vaardigheden aanleren in het programmeeronderwijs. Ook kan programmeeronderwijs bijdragen aan andere generieke vaardigheden, zoals kritisch denken, creatief denken, reflectie en metacognitie.

Computational thinking is een vaardigheid en manier van denken die in de informatica gangbaar is om problemen aan te pakken. Daarbij worden problemen (opnieuw) geformuleerd zodat ze met computertechnologie kunnen worden opgelost. Het gaat om vaardigheden als denken in stappen, ordenen van informatie, beseffen dat zaken in een bepaalde volgorde en op verschillende niveaus moeten worden aangepakt en het modelleren van gegevens. Deze manier van denken vereist een zeker abstractievermogen.

Programmeren wordt gezien als een belangrijke vaardigheid voor informatici, maar het is slechts een onderdeel van computional thinking. Computational thinking skills worden gezien als 21e eeuwse vaardigheden. Ze hangen samen met probleemoplossingsvaardigheden en denkvaardigheden.

Programmeren is niet de enige manier om aan computational thinking skills te werken; dit kan bijvoorbeeld ook in vakgebieden als het stelonderwijs en de natuurwetenschappen. En programmeeronderwijs draagt niet zonder meer bij aan deze vaardigheden.

De bijdrage van programmeeronderwijs

Uit een recente review blijkt dat programmeeronderwijs inderdaad kan bijdragen aan algemene probleemoplossingsvaardigheden van leerlingen in het basis- en voortgezet onderwijs. Ook kan programmeeronderwijs andere generieke vaardigheden stimueleren, zoals kritisch denken, creatief denken, reflectie en metacognitie.

Daarnaast draagt programmeeronderwijs bij aan inzicht in begrippen en vaardigheden uit de computerwetenschap (computer science) die belangrijk zijn voor het ontwikkelen van computational thinking skills. Denk aan begrippen als ‘variabele’ en ‘algoritme’ en aan typische vaardigheden die je nodig hebt om een computer te programmeren. Daarbij gaat het om bijvoorbeeld efficiënte loops ontwerpen, incrementele stappen zetten, fouten opsporen en oplossen en als-dan redeneringen hanteren.

Andere vakken

Ook zijn er positieve effecten van programmeeronderwijs op kennis en vaardigheden in andere vakken, zoals rekenen en biologie. In geen enkele studie uit de review is nagegaan of de genoemde kennis en vaardigheden ook in andere domeinen werden ingezet (transfer).

In het algemeen zijn leerlingen gemotiveerd om programmeeronderwijs te volgen en reageren ze enthousiast. Er kan echter ook sprake zijn van een novelty effect. Want voor veel leerlingen was het de eerste keer dat ze kennismaakten met programmeeronderwijs.

Condities

Vormen van programmeeronderwijs die een positief effect sorteren, hebben vaak de volgende kenmerken:

  • directe instructie bij de introductie van nieuwe concepten
  • een opbouw van het onderwijs van eenvoudige concepten naar meer complexe concepten
  • oefenen van nieuwe concepten met door de docent geformuleerde opdrachten
  • leerlingen werken samen aan de programmeertaak (meestal in tweetallen)

De programmeeromgeving (bijvoorbeeld LOGO of Scratch) lijkt niet van belang om de beoogde effecten te realiseren. Waarschijnlijk moeten leraren nog wel geschoold worden in vakinhoudelijke kennis en vaardigheden om programmeeronderwijs te kunnen geven. Verder vereist programmeeronderwijs dat gericht is op computational thinking skills een bepaalde tijdsinvestering.

De meeste onderzoeken vonden overigens plaats in een specifieke context: buiten schooltijd, als onderdeel van een keuzevak, of op privéscholen. Er is weinig bekend over programmeeronderwijs als onderdeel van het reguliere onderwijs.

Uitgebreide beantwoording

1 Inleiding

In 2006 riep Janet Wing (2006) op om in het primair en voortgezet onderwijs aandacht te besteden aan computational thinking skills. Hoewel er nog geen breed gedragen algemene definitie van computational thinking bestaat, worden computational thinking skills beschouwd als een set van probleemoplossende vaardigheden en houdingen waarbij men gebruikmaakt van concepten uit de informatica (Lye & Koh, 2014) en die betrekking hebben op het denken in stappen, het ordenen van informatie, het besef van volgordelijkheden en het modelleren van gegevens (Fisser & Strijker, 2016). Het kunnen abstraheren en analytisch denken wordt daarbij gezien als essentieel ken-merk van computational thinking (Wing, 2008).

De gedachte om al in het primair en voortgezet onderwijs aandacht aan computational thinking te besteden is dat informatica heeft gezorgd voor grote vooruitgang in de wetenschap en het dagelijks leven, en dat het niet meer voldoende is om lerenden pas in het hoger onderwijs te laten kennismaken met aspecten van computational thinking (Barr & Stephenson, 2011). Wing’s oproep heeft geleid tot hernieuwde aandacht in diverse landen voor het inpassen van vaardigheden die te maken hebben met informatie- en communicatietechnologie in het curriculum. Zo is in Engeland in 2014 ‘Computing’ ingevoerd in het basiscurriculum, en is in Australië ‘Digital Technologies’ een verplicht onderdeel van het curriculum. In beide curricula zijn computational thinking skills (CT) een belangrijk onderdeel.

Ook in de Nederlandse context werd Wing’s oproep opgepakt. Er verscheen in 2013 een rapport van de KNAW over het belang van het vak informatica in het voortgezet onderwijs, waarin ook verwezen wordt naar CT en in het adviesrapport van het platform Onderwijs2032 wordt CT expliciet genoemd als onderdeel van digitale geletterdheid, wat een verplicht kernonderdeel in het hernieuwde curriculum zou moeten worden.

Bij computational thinking gaat het om een vaardigheid en manier van denken die in de informatica gangbaar is om problemen aan te pakken, daarom wordt vaak de link met programmeren gelegd. Programmeren wordt gezien als een fundamentele vaardigheid voor informatici en als een belangrijk middel om te werken aan taken die computational skills vereisen (Grover & Pea, 2013). Maar in feite gaan computational thinking skills om meer dan programmeren, en is probleemoplossend denken een vaardigheid die in meerdere vakgebieden belangrijk is (Barr & Stephenson, 2011). Aspecten van CT kunnen dan ook heel goed in andere vakgebieden aan de orde komen, zoals het stelonderwijs en de natuurwetenschappen (Sengupta, Kinnebrew, Basu, Biswas, & Clark, 2013; Voogt, Fisser, Good, Mishra, & Yadav, 2015; Wolz, Stone, Pearson, Pulimood, Switzer, 2011).

Dat CT breder is dan alleen programmeren wordt algemeen erkend (Wing, 2008), en tegelijkertijd is ook duidelijk dat aspecten van programmeren een bijdrage kunnen leveren aan de ontwikkeling van CT-skills, maar dat dit niet zonder meer gebeurt (Voogt et al., 2015).

Er is ook nog veel discussie over hoe CT zich verhoudt tot andere 21st-century skills, zoals information literacy, waarbij bijvoorbeeld het kritisch denken en ordenen van informatie van belang is (e.g., Brand-Gruwel & Stadtler, 2011). Zo wordt ook samenwerken gezien als een belangrijk element in CT (The College Board, 2012), maar wordt dit ook gezien als een 21st-century skill op zichzelf. Met name in de VS zijn er diverse initiatieven om CT verder te operationaliseren, zodat curriculumontwikkeling mogelijk is. Daarbij is het van belang te kijken naar instrumentarium voor het inzichtelijk maken van de CT-skills van leerlingen en studenten. Zie bijvoorbeeld de initiatieven van de Computer Science Teaching Association (https://csta.acm. org/Curriculum/sub/CompThinking.html). Zo heeft SLO in haar uitwerking van een leerlijn voor CT zich voornamelijk gebaseerd op deze bronnen.

Er is echter nog weinig onderzoek naar de effecten van programmeeronderwijs op CT in het primair en voortgezet onderwijs, zoals blijkt uit de reviewstudie van Lye en Koh (2014). Lye en Koh hanteren een indeling van CT in concepts, practices en perspectives. Bij computational concepts gaat het om het aanleren van kennis over concepten die horen bij CT, zoals ‘variabelen’ en ‘loops’. Computational practices heeft betrekking op hoe lerenden probleemoplossend werken tijdens het programmeren zelf; het betreft de toepassing van CT-skills, denken in stappen, het kunnen ordenen enzovoort. Bij computational perspectives, tot slot, gaat het erom hoe lerenden aankijken tegen de relatie met henzelf, anderen en de technologische wereld in relatie tot programmeren. Hierbij komt het houdingsaspect van CT naar voren.

Vragen die daarbij gesteld kunnen worden zijn of je zelf vindt dat de invloed van technologie groot is op het dagelijks leven, of je daar zelf een steentje aan kunt bijdragen en of je vindt dat leren programmeren erbij kan helpen. Lye en Koh vonden slechts negen studies in het primair en voortgezet onderwijs die aan hun criteria voldeden, waarvan er slechts twee gingen over computational practices en twee over computational perspectives. De meeste studies gingen over het aanleren van computational concepts.

Om het onderwijs meer inzicht te geven in de effecten van programmeeronderwijs op CT van leerlingen is deze reviewstudie uitgevoerd. De resultaten kunnen onderwijsontwikkelaars en docenten helpen bij het maken van keuze over de wijze waarop programmeeronderwijs kan worden ontworpen om CT van leerlingen te bevorderen. In deze reviewstudie worden drie onderzoeksvragen beantwoord.

Onderzoeksvragen

  1. Welke evidentie is er dat programmeeronderwijs bijdraagt aan de ontwikkeling van computational thinking skills bij kinderen tussen 4 en 18 jaar (primair en voortgezet onderwijs)?
  2. Onder welke condities kan deze ontwikkeling het beste worden gerealiseerd?
  3. Welk instrumentarium is er beschikbaar om de ontwikkeling ten aanzien van computational thinking skills in kaart te brengen?

Deze studie bouwt verder op een eerdere NRO-reviewstudie van Jeuring, Corbalan, Van Es, Van Leeuwestein en Van Montfort (2016), maar hier ligt de focus niet alleen op het primair onderwijs maar ook op het voortgezet onderwijs, en het gegeven dat niet alleen wordt gekeken naar de effecten op programmeren, maar op een breder palet van computational thinking skills.

2 Methode

Om de onderzoeksvragen te kunnen beantwoorden, is een systematische literatuurstudie naar gepeer-reviewde artikelen uitgevoerd binnen de wetenschappelijke databases Web of Science, Scopus en ERIC. Bij het zoeken zijn drie sets met termen gebruikt: één rondom ‘computational thinking’, één rondom ‘ programmeren’ en één rondom de doelgroep ‘K-12’ (zie Appendix I voor de exacte zoektermen).

Het zoeken leverde 126 hits op in Web of Science, 10 in ERIC en 88 in Scopus. Gefilterd op het voorkomen van dubbele resultaten, leverde dit 196 unieke hits op. Bij het bepalen of artikelen al dan niet zouden worden meegenomen in de analyse, werden de volgende inclusiecriteria geformuleerd:

  • Het betreft empirisch onderzoek (experimenteel of casestudie; geen literatuurreviews of theoretische artikelen).
  • De uitkomstvariabelen hebben betrekking op computational thinking skills, en niet alleen op affectieve maten.
  • De studies betreffen interventies of onderwijs dat gericht is op programmeren.

Twee van de onderzoekers namen onafhankelijk van elkaar de gevonden artikelen door en kwamen in gezamenlijk overleg uit op 25 geselecteerde artikelen, waarvan er 23 beschikbaar waren als full-text. Uit de referentielijsten van deze 23 artikelen werden nog vijf aanvullende bronnen geselecteerd die niet bij het zoekproces naar voren waren gekomen. In totaal zijn er dus 28 studies meegenomen in de review.

De geselecteerde studies zijn door paren van twee onderzoekers gelezen. Hierbij werden de doelgroep, het aantal deelnemers, de context, het onderzoeksdesign, de gebruikte programmeertaal, de interventie, de uitkomstvariabelen evenals de operationalisatie daarvan en de gevonden effecten genoteerd in een bronnentabel. De uitkomsten werden vergeleken en waar nodig aangevuld of bijgesteld.

3 Resultaten

In dit hoofdstuk geven we antwoord op de drie onderzoeksvragen. We lopen de drie vragen door en geven aan wat de verschillende studies ten aanzien van de drie vragen opleveren.

3.1 Evidentie dat programmeeronderwijs bijdraagt aan CT

De eerste onderzoeksvraag luidde: Welke evidentie is er dat programmeeronderwijs bijdraagt aan de ontwikkeling van computational thinking skills (kennis vaardigheden en attitudes) bij kinderen tussen 4 en18 jaar (primair en voortgezet onderwijs)? In de uitwerking maken we onderscheid in verschillende operationalisaties van het concept CT. We kijken naar studies over effecten van programmeeronderwijs op generieke kennis en vaardigheden zoals probleemoplosvaardigheden (3.1.1), naar studies over effecten op kennis en vaardigheden in computer science (3.1.2), naar vakinhoudelijke kennis en vaardigheden (3.1.3) en naar affectieve aspecten (attitudes) (3.1.4).

3.1.1 Computational thinking skills: generieke vaardigheden

In veertien studies in de dataset is nagegaan of er sprake is van een effect van programmeeronderwijs op generieke vaardigheden, te weten probleemoplosvaardigheden (9 studies), creatieve vaardigheden (1 studie), analytisch redeneren (1 studie), kwantitatief redeneren (1 studie), kritisch denken (1 studie), reflectieve vaardigheden (1 studie) en metacognitieve taken (1 studie). Een overzicht van de studies wordt gepresenteerd in tabel 1.

Tabel 1 Effecten van programmeeronderwijs op generieke vaardigheden: overzicht van de studies.

1 Onderwijssector is een indicatie van de leeftijd van de leerlingen in de studie en gerelateerd aan de corresponderende onderwijssector in Nederland.
2 In de overzichtstabellen wordt alleen van een significant positief effect gesproken als er een vergelijking is met een controlegroep

Probleemoplosvaardigheden

Primair onderwijs

Zes studies naar het effect van probleemoplosvaardigheden vonden plaats in het primair onderwijs (inclusief het kleuteronderwijs). Twee daarvan zijn uitgevoerd vóór 1995. Vier studies laten een positief effect zien van programmeeronderwijs op probleemoplosvaardigheden. In twee studies werd geen verschil gevonden.
Fessakis et al. (2013) deden onderzoek naar het effect van programmeeronderwijs op probleemoplosvaardigheden bij kleuters. Zij vonden dat de helft van de tien kleuters de problemen (programmeren van de weg naar het doel) kon oplossen zonder een enkele hint en drie kleuters dit konden na één hint. Klahr & Carver (1988) onderzochten wat het effect is van gerichte instructie in strategieën gericht op debuggen van een Logoprogramma op een probleemoplostaak. Uit hun bevindingen blijkt dat leerlingen die deze instructie hadden gekregen de probleemoplostaak beter uitvoerden dan leerlingen die de instructie niet hadden gekregen, en dit gold ook voor een taak die zonder logo moest worden opgelost. Deze taak is weergegeven in box 1.

Box 1 Probleemoplostaak (ontleend aan Klahr & Carver, 1988)


Twee verhuizers helpen mevrouw Fisser bij het verhuizen naar een nieuwe woning. Zij vroeg de verhuizers om haar meubels neer te zetten en ze gaf de verhuizers een lijst met aanwijzingen. De verhuizers volgden de aanwijzingen precies op, maar toch waren de meubels niet neergezet zoals mevrouw Fisser dat wenste.
Je krijgt twee plaatjes en de lijst met aanwijzingen. In het eerste plaatje zie je hoe mevrouw Fisser wilde dat de verhuizers haar meubels zouden neerzetten. In het tweede plaatje zie je hoe de verhuizers de meubels hebben neergezet.
Zoek op welke fouten mevrouw Fisser heeft gemaakt in de lijst met aanwijzingen die ze aan de verhuizers gaf.


Pardamean, Supraryanto & Evelyn (2015) vonden een significant positief verschil tussen leerlingen die Logo-instructie hadden gekregen op generieke probleemoplosvaardigheden, in vergelijking met leerlingen die geen Logo-instructie hadden gekregen. De gebruikte test meet twee aspecten van generieke probleemvaardigheid: ruimtelijk inzicht en logisch redeneren. Het effect is groter op ruimtelijk inzicht, dan op logisch redeneren. Kaleiloglu & Gulbahar (2014) en Kaleiloglu (2015) rapporteren over onderzoek naar het effect van programmeeronderwijs, met respectievelijk Scratch en de code.org-website. Zij vonden geen verschil in tussen voor- en nameting in generieke probleemoplosvaardigheden.

Voortgezet onderwijs

Acht studies zijn uitgevoerd in het vo. Drie daarvan zijn uitgevoerd vóór 1995. Twee van de acht studies vonden geen effect van programmeeronderwijs op probleemoplosvaardigheden. De andere vijf studies vonden positieve effecten.
Linn (1985) beschrijft een studie naar de effecten van het programmeren in Basic op leerlingen uit de onderbouw van het voortgezet onderwijs. Zij vond geen effect van de interventie op probleemoplosvaardigheden. Akcaoglu (2014) en Akcaoglu en Koehler (2014) onderzochten probleemoplosvaardigheden bij leerlingen uit de onderbouw vo die digitale spellen leerden ontwerpen. Zij maakten onderscheid tussen verschillende probleemtypen: systeemanalyse & ontwerp, besluitvorming en troubleshooting.

In beide onderzoeken werd een significant positief effect op systeemanalyse & ontwerp en besluitvorming gevonden. Akcaoglu en Koehler (2014) vonden wel een effect op troubleshooting, maar in het onderzoek van Akcaoglu (2014) werd dit effect niet gevonden. Als verklaring voor deze laatste uitkomst wijzen de onderzoekers op het pre-experimentele design van de studie van Akcaoglu (2014). Atmatzidou & Demitriadis (2016) deden onderzoek naar het effect van onderwijs in robotics bij leerlingen in de onder- en bovenbouw van het vo. Probleemoplosvaardigheden werden geoperationaliseerd als generaliseren van het probleemoplosproces naar een brede set van uiteenlopende problemen. In een toets die halverwege en aan het eind van de interventie werd afgenomen bleek een toename in probleemoplosvaardigheden van leerlingen uit de bovenbouw van het voortgezet onder-wijs. Dit was niet het geval bij leerlingen uit de onderbouw van het voortgezet onderwijs, maar hun score was bij aanvang al hoger dan die van de leerlingen uit de bovenbouw. De onderzoekers verklaarden dit door de groepssamenstelling. De leerlingen uit de bovenbouw van het vo waren voornamelijk jongens.

Palumbo & Reed (1991) en Ennis (1994) deden onderzoek naar de effecten van programmeeronderwijs op probleemoplosvaardigheden in de bovenbouw van het vo. Palumbo & Reed (1991) vonden een significant positief effect op probleemoplosvaardigheid tussen leerlingen die programmeeronderwijs hadden genoten en leerlingen die een onderwijs in digitale basisvaardigheden hadden gevolgd. Ennis (1994) onderzocht of het aanleren van een algemene probleemoplosstrategie in combinatie met leren programmeren in Basic meer bijdraagt aan generieke probleemoplosvaardigheden dan het alleen leren programmeren. Zij vond geen significant verschil op een test die probleemoplosvaardigheden meet. Wel vond Ennis dat leerlingen de aangeleerde strategie handig vonden voor het schrijven van programma’s en dat hun programma’s een creatievere oplossing boden voor het programmeerprobleem.

Andere generieke vaardigheden

Clements en Gullo (1984) deden onderzoek naar het effect van programmeeronderwijs op het creatieve denken en de reflectieve vaardigheden van leerlingen uit de onderbouw van het primair onderwijs. Zij vergeleken een groep die programmeeronderwijs volgde met een groep die computerondersteunde instructie kreeg. Zij vonden een significant verschil op creatief denken, reflectieve vaardigheden, en metacognitieve taken voor de groep die programmeeronderwijs volgde, maar geen verschil in cognitieve ontwikkeling tussen beide groepen. Yang & Chang (2013) onderzochten het effect van game making binnen het vak biologie op kritisch denken bij leerlingen uit de onderbouw van het voortgezet onderwijs. Zij vonden een significant verschil tussen de experimentele en controle conditie, ook op de retentietoets.

Ke (2014) heeft kwalitatief onderzoek uitgevoerd naar het effect van het ontwerpen van games in de context van het wiskundeonderwijs. Zij observeerde ontwerpteams van leerlingen uit de onderbouw van het vo en analyseerde de ontwerpproducten. Uit haar onderzoek blijkt dat de interventie bijdraagt aan analytisch denken (in 25 procent van de gecodeerde gebeurtenissen lieten de leerlingen dit zien) en dat leerlingen daarbij gebruik maken van kwantitatief redeneren (het modelleren van een authentiek probleem met wiskundige symbolen en expressies) (in 15.5 procent van de gecodeerde gebeurtenissen lieten de leerlingen dit zien).

3. 1.2 Computational thinking skills: computer science-concepten en -vaardigheden

Vijf studies deden onderzoek naar effecten van programmeeronderwijs op computational thinking skills, die expliciet werden gerelateerd aan computer science (CS)-concepten en -vaardigheden. Hoewel er in dit onderzoek vaak wel specifieke CS-concepten en –vaardigheden bij leerlingen worden ontwikkeld, werden de effecten vastgesteld op het geheel van de computational thinking skills die werden ontwikkeld, en niet op de onderscheiden concepten en vaardigheden. Tabel 2 geeft een overzicht.

Tabel 2 Effecten van programmeeronderwijs op CS-concepten en - vaardigheden: overzicht van de studies.


1 Onderwijssector is een indicatie van de leeftijd van de leerlingen in de studie en gerelateerd aan de corresponde - rende onderwijssector in Nederland
2 In de overzichtstabellen wordt alleen van een significant positief effect gesproken als er een vergelijking is met een controlegroep

Primair onderwijs

Drie studies vonden plaats in de bovenbouw po. Jenson en Droumeva (2016) beschrijven een pilotstudie naar effecten van onderwijs in game making bij leerlingen. Zij rapporteerden een positief effect tussen voor- en nameting op een test die basiskennis CS-concepten meet. Saez et al. (2016) deden onderzoek naar programmeren met Scratch in de bovenbouw van het po. Zij vonden een positief verschil tussen voor- en nameting en op een toets die computer science-concepten (sequenties, herhaalde uitvoering, conditionele uitvoering, gelijktijdige uitvoering, coördinatie, event handling, keyboard input), en computational practices (experimenteren en iteraties) meet. Eveneens werd een significant verschil gevonden op de nameting tussen experimentele - en controlegroep. Moreno-Leon et al. (2015) lieten leerlingen uit de bovenbouw van po en de onderbouw van vo een eigen programma testen en verbeteren op basis van feedback gegenereerd door het programma (Dr. Scratch). In de test van het programma wordt gekeken hoe in het programma gebruik wordt gemaakt van de volgende CS-concepten: abstractie, probleemontleding, logisch denken, synchronisatie, parallelle uitvoering, algoritmes voor control flow, interactiviteit en datarepresentatie. Uit dit onderzoek bleek dat de programma’s verbeterden na de feedback. Het effect was het grootst voor leerlingen met een gemiddeld beginniveau en voor leerlingen uit de onderbouw van het vo.

Voortgezet onderwijs

In de onderbouw van het vo vonden twee studies plaats. Over de resultaten van het onderzoek van Moreno-Leon et al. (2015) is hierboven al gerapporteerd. Linn (1985) deed in de jaren tachtig onderzoek naar het effect van programmeren. Uit haar onderzoek bleek een positief effect op het leren kennen van de programmeertaal (Basic), maar het effect op het ontwerpen van een programma in Basic varieerde. In klassen waar expliciete instructie werd gegeven in het ontwerpen van programma’s in Basic werd een positief effect gemeten, dit in tegenstelling tot klassen waar wel onderwijs in Basic was, maar geen expliciete instructie.

Liu et al. (2013) deden onderzoek in de bovenbouw van het vo. Zij vonden een significant positief verschil tussen pre- en posttest op basisconcepten uit de computer science. In een vervolgstudie werden klassen ve-geleken die een virtuele robot programmeerden met klassen die met het zelfde curriculum een fysieke robot programmeerden. Er was geen verschil tussen de condities: beide groepen scoorden significant hoger op de nameting in vergelijking met de voormeting. Wel hadden de klassen met de fysieke robot aanzienlijk meer tijd nodig om het curriculum te voltooien.

Specifieke CS-concepten en -vaardigheden

In acht studies werden de effecten van programmeeronderwijs op specifieke CS-concepten en -vaardigheden gemeten. Een overzicht wordt gegeven in tabel 3.

Tabel 3 Effecten van programmeeronderwijs op specifieke CS-concepten en - vaardigheden: overzicht van de studies

1 Onderwijssector is een indicatie van de leeftijd van de leerlingen in de studie en gerelateerd aan de corresponde - rende onderwijssector in Nederland
2 In de overzichtstabellen wordt alleen van een significant positief effect gesproken als er een vergelijking is met een controlegroep

Berland en Wilensky (2015) gingen na wat het effect is van een interventie waarin leerlingen uit de onderbouw van het vo leerden om robots te programmeren. Een klas programmeerde fysieke robots, terwijl de andere klas met virtuele robots programmeerde. De onderzoekers vonden een positief effect voor beide condities op hun begrip van complexe systemen, maar op een andere manier. De leerlingen die fysieke robots programmeerden begrepen deze systemen vanuit de robot die zij programmeerden. Zij wilden het gedrag van hun robot optimaliseren, wat resulteerde in complexere robots. De leerlingen die virtuele robots programmeerden keken naar het totale systeem. Zij maakte meer, maar simpeler circuits.

Twee studies onderzochten het effect van programmeeronderwijs op de vaardigheid van leerlingen om fouten in een computerprogramma te identificeren en op te lossen (debuggen). Klahr & Carver (1988) deden dat in de bovenbouw van het po. Zij gaven leerlingen gerichte instructie in strategieën gericht op debuggen van een Logoprogramma en vonden een significant positief effect tussen voor- en nameting op de vaardigheid om te debuggen. Bers et al. (2013) leerden kleuters om een robot te programmeren en stelden het effect op debuggen vast. Zij concludeerden dat kleuters deze vaardigheid meer dan gemiddeld beheersten.

In het onderzoek van Bers et al (2014) werd ook nagegaan of kleuters de vaardigheid om instructies te kiezen (correspondence) en om deze in de juiste volgorde te plaatsen beheersen (sequentie) om een robot te programmeren. Zij vonden dat ongeveer 75 procent van de kleuters deze vaardigheid beheersten als het gaat om eenvoudige acties. Kazakoff et al. (2013) deden onderzoek naar dezelfde interventie, het programmeren van een robot. Zij vroegen kleuters om plaatjes in de juiste volgorde te leggen om zo een verhaal te vertellen. Kleuters die de interventie hadden gevolgd verbeterden zichzelf significant in vergelijking met een controle-groep.

In het onderzoek van Bers et al. (2014) werd ook gekeken naar de vaardigheid om de volgorde waarin de robot instructies uitvoert, te beheersen (control flow). In dit onderzoek gaat het dan met name om het meerdere keren uitvoeren van dezelfde handeling (loop) en de uitvoering onder bepaalde voorwaarden (‘if’ en ‘if not’). Uit het onderzoek bleek dat ongeveer 59 procent van de kleuters deze vaardigheid na de lessen beheerste. Er werd geen verschil gevonden tussen de vaardigheid om loops te gebruiken en de vaardigheid om condities (‘if’) toe te passen. Wel hadden meer kleuters problemen met het toepassen van de negatieve conditie (‘if not’).

Meerbaum et al. (2013) deden onderzoek in de onderbouw van het vo naar de ontwikkeling van bepaalde CS-concepten en -vaardigheden in een curriculum waarin Scratch wordt gebruikt. Zij onderzochten diverse CS-concepten en -vaardigheden die onder control flow (de (niet-lineaire) uitvoering van de instructies in een computerprogramma) kunnen worden gerangschikt, te weten: initialiseren, herhaalde uitvoering, voorwaardelijke uitvoering, event handling, variabelen, communicatie via berichten en gelijktijdige uitvoering (concurrency). Er werd gekeken naar effecten op een interimtoets en een eindtoets. De onderzoeksresultaten toonden aan dat de meeste leerlingen in staat waren om een redelijk niveau van begrip van CS-concepten te realiseren. Moeilijkheden werden aangetroffen in het onderwijzen van specifieke vaardigheden, met name vaardigheden die meer abstractie vereisten, zoals herhaalde uitvoering, variabelen en gelijktijdige uitvoering.

Algoritme (een set regels om een probleem op te lossen) is een vergelijkbaar concept als control flow. Drie studies deden onderzoek naar het effect van programmeeronderwijs op dit CS-concept. Grover en collega’s (2015) gebruikten het concept algoritme in een interventie waarin leerlingen uit de onderbouw van het vo met Scratch programmeren. Zij operationaliseerden algoritme als: sequentie, herhaaldelijke uitvoering, conditionele uitvoering. Zij vonden een significant positief effect van de interventie op het kunnen toepas-sen van algoritmen. De leerlingen hadden het meeste moeite met het toepassen van herhaalde uitvoering, gevolgd door het toepassen van voorwaardelijke uitvoering (zogenaamde ‘als-dan’-redeneringen).

Liu et al. (2013) deden een interventie waarin leerlingen uit de bovenbouw van het vo fysieke dan wel virtuele robots leerden programmeren. In een eerste studie vonden zij een positief effect voor algoritmisch denken in die klas die zowel virtuele als ook fysieke robots had geprogrammeerd. In een vervolgstudie werd een positief effect gevonden voor beide condities In een tweede studie werden klassen vergeleken die een virtuele robot programmeerden met klassen die met het zelfde curriculum een fysieke robot programmeerden. Er werd nu een significant positief effect gevonden op algoritmisch denken voor beide condities.

In het onderzoek van Atmatzidou en Demetriadis (2016) naar het effect van onderwijs in robotics bij leerlingen in de onder- en bovenbouw van het VO werden diverse CS-concepten onderzocht. Naast generaliseren (zie probleemoplos-vaardigheden) werd gekeken naar algoritmen (programmeerinstructies), abstraheren (analyse), moduleren (herhaald gebruik van procedures) en decompositie (opsplitsen van het probleem). Zij vonden een significant positief effect tussen interim- en eindtoets voor alle leerlingen op moduleren en decompositie en voor bovenbouwleerlingen op algoritmen. Atmatzidou en Demetriadis (2016) vonden geen effect op abstraheren.

3.1.3 Effecten op andere vakinhoudelijke kennis en vaardigheden

Vier studies onderzochten het effect van programmeeronderwijs op vakinhoudelijke kennis en vaardigheden. Een samenvatting van deze studies wordt gepresenteerd in tabel 4.

Tabel 4 Effecten van programmeeronderwijs op vakinhoudelijke kennis en vaardigheden: overzicht van de studies.



Fessakis et al. (2013) deden onderzoek naar kleuters. Uit de observaties van de lessen en het interview met de leerkracht bleek dat het programmeeronderwijs ook bijdroeg aan de rekenvaardigheden van de leerlingen, zoals getalbegrip, tellen, richting, hoek. Saez et al. (2016) deden onderzoek naar programmeren met Scratch in het kader van kunstgeschiedenisonderwijs in de bovenbouw van het po. Uit hun onderzoek bleek dat de leerlingen door de interventie inzicht en begrip (in de terminologie van Bloom) van kunstgeschiedenis hadden verworven.

Twee studies, beiden in de onderbouw van het voortgezet onderwijs, beschrijven effecten van het ontwerpen en programmeren van spellen voor respectievelijk biologische (Yang & Chang, 2013) en wiskundige vak-inhouden (Ke, 2014). Yang & Chang (2013) vonden een significant positief effect op een kennistoets. Ke (2014) onderzocht de attitude ten opzichte van wiskunde en vond een significant effect op houding (zelfvertrouwen, waarde, plezier en motivatie) (paarsgewijze t-test t (62) = 2,56, p = 0,01). Uit de kwalitatieve data bleek ook een positief effect op het herkennen en reflecteren van wiskunde in de samenleving en op het wiskundig denken. Meer dan de helft van de leerlingen geeft aan over wiskunde te hebben geleerd door de interventie.

3.1.4 Effecten op affectieve variabelen

Attitude is bij kleuters alleen zijdelings meegenomen in de studie van Fessakis et al. (2013). Het betrof een casestudie waarin werd geconcludeerd dat de kinderen gemotiveerd waren, omdat ze na anderhalf uur wer-ken aan activiteiten aangaven door te willen gaan met nieuwe activiteiten.

Bij de studies in de onderbouw van het primair onderwijs is attitude niet meegenomen. Bij twee studies uitgevoerd in de bovenbouw van het primair onderwijs is attitude gemeten. In de studie van Jenson en Droumeva (2016) bleek het doorlopen van een programmeerinstructie gedurende anderhalve week het zelf-vertrouwen ten aanzien van programmeren temperde en dat dit vooral bleek bij meisjes. Maar interessant is wel dat zowel jongens als meisjes de ervaring met het programmeren zien als ‘fun’ en ‘exciting’. Ze geven aan dat het uitdaging was iets te doen wat ze nog nooit hadden gedaan en tegelijkertijd zeggen ze dat het ook een moeilijke vaardigheid is.

De studie van Sáez-López et al. (2016) meet attitude met een schaal van vijf vragen. De score op deze schaal was hoog en er kon worden geconcludeerd dat studenten enthousiast en gemotiveerd waren om te werken volgens de aangeboden systematiek.

In de studie van Ke (2014), uitgevoerd in de bovenbouw, is nagegaan wat het effect van de interventie (maken van een game) is op de attitude van leerlingen ten aanzien van wiskunde. Daarvoor is de ‘Attitudes towards Math Inventory’ (ATMI, Tapia & Marsh, 2004) gebruikt, bestaande uit veertig items met een vijfpunts-schaal. De resultaten laten zien dat het ontwerpen van een game een positieve invloed heeft op de attitude van leerlingen ten aanzien van wiskunde.

In de studie van Pellas en Peroutseas (2016) is onderzocht hoe leerlingen in de onderbouw van het voortgezet onderwijs het ervaren om te werken in een game-gebaseerde omgeving. Uit het onderzoek bleek de aandacht en de betrokkenheid van de leerlingen tijdens het werken in de omgeving hoog. Ze vonden het ook aantrekkelijk om in een dergelijke omgeving te werken.

In de studie van Kalelioglu en Gulbahar (2014) zijn kinderen uit de bovenbouw van het primair onderwijs geïnterviewd nadat ze programmeeronderwijs hadden gevolgd. Op de vraag of ze het leuk vonden om te programmeren was het antwoord van alle leerlingen ‘ja’. Ook waren ze zeker in voor het verder leren van deze vaardigheid.

3.2 Condities waaronder programmeeronderwijs bijdraagt aan CT

De tweede onderzoekvraag luidde: Onder welke condities kan deze ontwikkeling het best kunnen worden gerealiseerd? Voor het ontwerpen van onderwijs is het van belang te weten onder welke condities programmeeronderwijs bijdraagt aan de ontwikkeling van CT. Een overzicht van de kenmerken van de interventies die hebben geleid tot de positieve effecten is te vinden in Appendix II. Appendix II is geordend naar onderwijsniveau.

Verreweg de meeste interventies vonden plaats in de bovenbouw van het primair onderwijs en de onderbouw van het voortgezet onderwijs. We bespreken daarom de kenmerken van interventies die een positief effect sorteerden in deze twee onderwijsniveaus. Daarbij moeten we bedenken dat niet alle artikelen de interventie in detail beschrijft.

Bovenbouw primair onderwijs

In de interventies die effectief bleken, is gebruikt gemaakt van Logo (2x), Scratch (2x), Dr. Scratch (1x) en Game maker studio (1x). De duur van de interventies varieert sterk: van 9 uur Jenson & Droumeva, 2016) tot ruim 33 uur (Klahr & Carver, 1988). Over de opbouw en inhoud van de interventies kan het volgende worden gezegd. Er wordt gestart met het leren kennen van de programmeeromgeving (inclusief de syntax), veelal door expliciete instructie. Daarna worden begrippen en procedures geïntroduceerd. Dit gebeurt in oplopende complexiteit. Met name het concept procedure en het samenstellen van diverse procedures gericht op de oplossing van een probleem wordt behandeld en geoefend. Jenson en Droumeva (2013) besteden daarnaast aandacht aan condities. Klahr en Carver (1988) aan een strategie om fouten in programma’s op te sporen en op te lossen.

Na elke introductie oefenen de leerlingen met de nieuwe (en al geleerde) begrippen en procedures. Leerlingen werken soms aan opdrachten geformuleerd door de docent of onderzoeker (Klahr & Carver, 1988; Pardamean et al., 2015) en soms aan zelf geformuleerde opdrachten (Jenson & Droumeva, 2016; Klahr & Carver, 1988). In de studie van Pardamean et al. (2015) wordt elke les afgesloten met een toets over het geleerde, in de studie van Klahr en Carver krijgen de leerlingen drie keer gedurende het traject een toets.

In alle studies werken de leerlingen samen aan de opdrachten in groepjes van twee. In de studie van Klahr en Carver (1988) en Pardamean et al. (2015 heeft de docent zowel een instructierol (introduceren van nieuwe concepten) als een begeleidende rol (tijdens het werken aan de opdrachten). In de studie van Jenson en Droumeva (2016) wordt de rol van de docent door de onderzoekers vervuld. Zij hebben vooral een instructie-rol. De leerlingen worden uitgedaagd zelf, of met de helpfunctie in de software, oplossingen te vinden voor problemen die zij tegenkomen (Jenson & Droumeva, 2016; Klahr & Carver, 1988).

Onderbouw voortgezet onderwijs

Verreweg de meeste interventies vonden plaats in de onderbouw van het voortgezet onderwijs. In deze interventies werd gebruikt gemaakt van Scratch (3x), Kodu (2x), Basic (1x), VBOT (1x), Digital Game Authorship (1x) en Lego mindstorms (1x). De duur van de interventies varieert aanzienlijk. Het is lastig om de precieze tijdsinvestering aan te geven, omdat deze met verschillende eenheden wordt aangeduid. De kortste interventie is beschreven in de studie van Ke (2014). Deze interventie beslaat zes sessies van elk één uur. De meest omvangrijke interventie is beschreven in de studie van Grover et al. (2015): 28 sessies van elk 55 minuten.

De opbouw en inhoud van de lessen in de diverse studies verschillen. In de studies van Ke (2014) en Yang en Chang (2013) wordt het programmeeronderwijs gekoppeld aan een vak (respectievelijk wiskunde en biologie) en maken de leerlingen een spel gelieerd aan dat vak. Naast het leren van vakinhoudelijke concepten leren leerlingen een spel ontwerpen, het ontwerp implementeren en toetsen. In het onderzoek van Yang en Chang (2013) maken ze daarbij ook kennis met aspecten van game design. Ook in de onderzoeken van Akcaoglu (2014) en Akcaoglu en Koehler (2014) wordt in de les systematisch aandacht besteed aan het ontwerpen van games. Daarnaast wordt tijd gereserveerd voor het leren identificeren en oplossen van fouten in een programma.

In twee studies leren de leerlingen een robot programmeren (virtueel dan wel fysiek). In de studie van Atmatzidou en Demetrios (2016) komen leerlingen op systematische wijze in aanraking met een aantal computer science-concepten: algoritme, sequentie, loop, control flow - (samengestelde) procedures. De opdrachten worden in de loop van de lessen steeds complexer. Dit laatste is ook het geval in het onderzoek van Berland en Wilensky (2015).

In het onderzoek van Meerbaum et al. (2013) en Grover et al. (2015) wordt in de lessen nadruk gelegd op het leren begrijpen en gebruiken van computer science-concepten, met name control flow. Bij Meerbaum et al. (2013) gaat het bijvoorbeeld om seriële, voorwaardelijke en gelijktijdige uitvoering. De leerlingen leren eerst een concept kennen, toepassen en ontwerpen, en pas daarna wordt een nieuw concept geïntroduceerd. Bij het onderzoek van Grover et al. (2015) wordt de te leren kennis en vaardigheden die in de les aan de orde komt ingebed in technologische ontwikkelingen die leerlingen in de maatschappij tegenkomen.

In de meeste onderzoeken werken leerlingen aan opdrachten die geformuleerd zijn door de docent (of de onderzoekers in hun rol als docent). Deze opdrachten hebben tot doel om met de geleerde concepten te oefenen. In sommige studies krijgen de leerlingen (daarnaast) ruimte om met de geleerde kennis aan eigen opdrachten te werken (Akcaoglu, 2014); Akcaoglu & Koehler, 2014; Grover et al. (2015); Ke, 2014; Yang & Chang, 2013). In twee studies werken de leerlingen in grote teams van minimaal 5 leerlingen samen aan één spel (Ke, 2014; Yang & Chang, 2013). Soms werken leerlingen alleen (Berland & Wilensky, 2015) of kunnen ze kiezen (Grover et al., 2015). Van de andere studies is niet altijd bekend wat de groepsgrootte is.

De betrokken docenten en onderzoekers verzorgen expliciete instructie over de aan te leren concepten en procedures. De studie van Ke (2014) is hierop een uitzondering. In dit onderzoek hebben de docenten alleen een rol als begeleider. Daarnaast begeleiden ze de leerlingen als ze aan het werk zijn. In een aantal onder-zoeken verzorgt de onderzoeker of een onderzoeksassistent de docentrol (Atmatzidou & Demetriadis, 2016; Grover et al., 2015) en soms hebben onderzoeksassistenten een begeleidende rol (Ke, 2014).

3.3 Meten van computational thinking skills

De derde onderzoeksvraag luidde: Welk instrumentarium is er beschikbaar om de ontwikkeling ten aanzien van computational thinking skills in kaart te brengen?

Voor het onderwijs is het van belang om te meten wat effecten zijn van het ontworpen onderwijs en dus is het van belang inzicht te hebben in de wijze waarop we CT kunnen meten. In deze sectie zullen we bespreken hoe in de verschillende onderwijsniveaus in de studies de vaardigheden zijn gemeten en bespreken we meetinstrumenten die bruikbaar zijn in de onderwijspraktijk.

Kleuters

De drie studies uitgevoerd bij kleuters laten elk een andere wijze zien van het bepalen van de mate waarin de kinderen kennis en vaardigheden hebben opgedaan.

De studie van Kazakoff et al. (2013) keek alleen naar het effect van programmeeronderwijs op sequentiëren oftewel logisch ordenen; dat aspect is gemeten met een toets waarin kinderen plaatjes moesten ordenen. Ze kregen vijftien verhaaltjes, steeds bestaande uit vier plaatjes waarbij het eerste plaatje is gegeven en de andere drie plaatjes in logische volgorde moeten worden gelegd, zodat het verhaal klopte (Baron et al, 1986).

Bij de studie van Fessakis et al. voerden de kinderen verschillende activiteiten uit en daarbij spraken de leerlingen samen over de uitgevoerde activiteiten. De video-opnames zijn uitgeschreven en geanalyseerd om na te kunnen gaan wat de leereffecten waren.

In de studie van Bers et al. (2014) werden vier concepten gemeten (debugging, correspondence between action and instructions, sequencing en control flow). Tijdens de lessen kwamen deze vier aspecten in meer of mindere mate voor en na elke les werd door een beoordelaar op een zespuntsschaal aangegeven in hoeverre concepten werden begrepen en activiteiten goed werden uitgevoerd (bijvoorbeeld van goede uitvoering tot geen poging).

Onderbouw primair onderwijs

De studie van Clements en Gullo (1984) is uitgevoerd in de onderbouw van het primair onderwijs. In deze studie is gekeken naar effecten van de interventie op generieke vaardigheden, zoals creatief denken en reflectievaardigheden. Voor deze generieke vaardigheden zijn hoofdzakelijk gestandaardiseerde testen ge-bruikt, zoals de Torrance Test of Creative Thinking (Torrance, 1972). Geen specifieke instrumenten voor computational thinking zijn meegenomen. Ook Kalelioglu (2015) keek in zijn studie naar algemene probleemoplossingsvaardigheden en deze werden gemeten met de Reflective Thinking Skill Scale Towards Problem Solving van Kizilkaya en Askar (2009). Beide studies gebruikten bestaande instrumenten voor het meten van algemene vaardigheden.

Bovenbouw primair onderwijs

Er zijn negen studies uitgevoerd in de bovenbouw van het primair onderwijs. De studies verschillen in de mate van gedetailleerdheid in de beschrijving van de gehanteerde meetinstrumenten.

Ennis (1995) richtte zich in het onderzoek op algemene vaardigheden die werden gemeten met de Cognitive Abilities Test (CAT): Non-Verbal Battery to measure problem-solving ability.

Kalelioglu en Gulbahar (2014) hebben onderzocht wat het effect was van een programmeerinterventie met Scratch op de probleemoplossingsvaardigheden van leerlingen uit de bovenbouw van het primair onderwijs. Ze hebben voor het meten van deze generieke vaardigheid gebruik gemaakt van de Problem Solving Inventory van Serin, Bulut Serin, en Saygili (2010). Daarnaast werden er focusgroepen gehouden.

In de studie van Jenson en Droumeva (2016) maakten de leerlingen een eigen game en werd gekeken naar effecten op media literacy en op attitude. Media literacy werd heel breed gemeten met een vragenlijst. Er zaten bijvoorbeeld items bij die gingen over gebruik van social media. Attitude werd gemeten met vijf vragen, zoals ‘ik heb er vertrouwen in dat ik de taak kan afronden’, ‘ik voel me prettig’ enzovoort. De leerlingen scoor-den dat op een vijfpuntsschaal. Over deze schalen worden geen psychometrische gegevens gerapporteerd, waardoor niet te beoordelen is hoe betrouwbaar en valide de vragenlijsten zijn.

Ook de studie van Pardamean et al. (2015) was gericht op de generieke vaardigheid probleemoplossen. Deze werd gemeten met twee bestaande tests: Figural Problem Solving Test en de Logical Word Test. Daarnaast werd programmeren met LOGO beoordeeld door leerlingen individueel in een sessie van veertig minuten drie open problemen te laten oplossen. Gekeken werd in hoeverre leerlingen gebruik maakten van een-voudige commando’s, repeterende commando’s, en procedures voor creëren van complexe commando’s. Daarnaast werden geometrische concepten gemeten, zoals: rotatie, hoek van de rotatie, cirkel, rechthoek, driehoek. Leerlingen konden op de test maximaal 100 punten scoren. Er worden geen psychometrische gegevens gerapporteerd over dit meetinstrument.

De studie van Werner et al. (2014) werd uitgevoerd bij leerlingen van 10 tot 14 jaar en was gericht op het programmeren van games en het effect op CT. Daarbij werden de gemaakte games geanalyseerd. Game patterns werden onderzocht, waarbij men kan denken aan gebruik van verschillende constructen als gebruik van movements, sounds, dialog box en timers.

De focus in de studie van Klahr en Carver (1988) lag op de debugging-vaardigheid van leerlingen. Leerlingen kregen verschillende testen met steeds zes bugs die ze moesten oplossen. Vijf bugs waren semantisch van aard, wat wil zeggen dat het programma wel wordt uitgevoerd, maar de uitkomst niet goed is. Eén bug was syntactisch van aard, en betrof een spellingfout, een interpunctiefout of een spatiefout. Het programma kan dan ook niet worden gedraaid. Tijdens het oplossen van de tests dachten de leerlingen hardop en verwoordden hun denkproces. Deze ‘hardopdenkprotocollen’ werden samen met de opgenomen activiteiten op het scherm geanalyseerd om het proces van debuggen te ontrafelen.

In de studie van Moreno et al. (2015) werd een Dr. Scratch-workshop met een tijdsduur van één uur geëvalueerd aan de hand van de volgende vragen. De meeste schalen werden gemeten op een driepuntsschaal. Tabel 5 heeft de gestelde vragen weer.

Tabel 5 Vragen gesteld in de studie van Moreno et al. (2015).



‘Computational concepts and practices’ werden onderzocht in de studie van Sáez-López et al. (2016). Deze twee aspecten werden gemeten met de Visual Blocks Creative Computing Test. Deze test bestaat uit veertig items. De studenten beantwoorden vragen met betrekking tot ‘sequences, loops’, ‘conditional statements’, ‘parallel execution’, ‘coordination’, ‘event handling’ en ‘keyboard input’ om ‘computational concepts’ te meten. Voor het beoordelen van computational practices werden vragen met betrekking tot ‘experimenten and iterating’ gesteld. Een meer gedetailleerde beschrijving van het instrument ontbrak.

De psychometrische waarden kunnen als goed worden bestempeld. In deze studie werden ook de leerprocessen en de attitudes van de leerlingen gemeten. Dit is gedaan met een vragenlijst met vijf schalen en in totaal 24 items. Daarbij is gebruik gemaakt van een vijfpuntsschaal. In tabel 6 worden de vragen weergegeven.

Tabel 6 Vragenlijst gehanteerd in de studie van Sáez-López et al. (2016)

De studie uitgevoerd door Zhong, Wang, Chen en Li (2016) had betrekking op hoe CT is te meten. Vanuit een theoretisch perspectief maakten ze onderscheid in drie soorten taken (open, semi-open en gesloten) en die drie soorten taken combineerden ze met het ‘direction’-principe (forward en reverse). Dat leverde zes type taken op die zijn te onderscheiden: tabel 7 geeft een overzicht van de zes taken.

Deze zes taken zijn vervolgens uitgewerkt en gekoppeld aan de CT-vaardigheden die werden gemeten. Tabel 8 laat zien hoe de uitwerking is gemaakt. De taken zijn beschreven, de CT-vaardigheid is benoemd, evenals de wijze van beoordelen. Bij de beoordelingen werd een scoringsrubric gebruikt en werden op de verschillende aspecten scores gegeven.

Tabel 8 Uitwerking van de zes taken in de studie van Zhong et al. (2016).

Onderbouw voortgezet onderwijs

In totaal bestudeerden we negen studies in de onderbouw van het voortgezet onderwijs.

De studie van Yang en Chang (2013) richtte zich op het effect van de interventie op kritisch denken. Deze kritische denkvaardigheden werden gemeten met de ‘Critical Thinking Test-Level I’ (Yeh, 2003). Aspecten als inductie, deductie, evaluatie van assumpties werden gemeten.

De studies beschreven in Akcaoglu (2014) en in Akcaoglu en Koehler (2014) geven inzicht in effecten van een interventie op de algemene probleemoplossingsvaardigheden van leerlingen. Daarbij maakten ze gebruik van een gestandaardiseerde test aangeboden door Organisation for Economic Co-operation and Development (OECD, 2003).

Meerbaum-Salant et al. (2013) gebruiken een combinatie van de taxonomie van Anderson et al. (2001) en de SOLO-taxonomie (Biggs 7 Collis, 1982) om vragen te categoriseren voor het meten van computer science kennis en vaardigheden. Van de taxonomie van Anderson gebruiken ze de categorieën ‘understanding’, ‘ap-plying’ en ‘creating’; deze worden gecombineerd met de SOLO-categorieën ‘unistructural’, ‘multistructural’ en ‘relational’. Hierdoor kunnen er in totaal negen niveaus geformuleerd worden. Voorbeeldvragen zijn:

  • Multistructural / Understanding. What is the difference between the instruction say [hello] and the instruction broadcast [hello]?
  • Multistructural / Creating. Add to the following scripts an instruction or instructions that will cause the scenario where the sprites change places to repeat itself five times.
  • Relational / Applying. Describe the behavior of the animals and the ball during the execution of all the scripts (after clicking on the green flag).

Grover, Pea en Cooper (2015) onderzochten het effect van de interventie op computational kennis. De vragenlijst werd niet beschreven maar was gebaseerd op studies van onder meer Meerbaum-Salant et al. (2010).

De studie van Linn (1985) is onduidelijk als het gaat om het meten van de programmeervaardigheden. Er werd aangegeven dat het een vragenlijst betrof van 23 items met een goede betrouwbaarheid.

In de studie van Pellas en Peroutseas (2016) is nagegaan in hoeverre leerlingen gemotiveerd waren om te werken in een game-gebaseerde omgeving. Ze gebruikten daarvoor de ‘User Engagement Scale (Wiebe et al., 2014)’. De vragenlijst bestond uit 31 items met een vijfspuntsschaal (van helemaal eens tot helemaal oneens). De subschalen betroffen: ‘focused attention’, ‘felt involvement’, ‘novelty’, ‘endurability’, ‘aesthetics’ en ‘perceived usability’. Een voorbeelditem is: ‘Playing on this 3D multi-user game-like environment was worthwhile’. De betrouwbaarheid van de schalen was acceptabel.

Door middel van gestructureerde groepsinterviews werd in de studie van Ke (2014) de perceptie van de leerlingen gemeten ten aanzien van wiskunde en het maken van een game. Voorbeeldvragen in het interview waren: What was your game about?; What did you do? What would you add or change about this game?; What do you want your players to learn from this game? Do you think this game will teach? Why or why not?; Do you think knowing math is important for game creation? Why or why not?; How do you feel about your game creation experience? What impressed you most? What frustrated you most? What have you learned by creating this game? Could you elaborate or give any examples?

De studie van Atmatzidou en Demetriadis (2016) keek naar het effect van een interventie op de computational thinking skills van leerlingen. Ze hanteerden een model met verschillende concepten van computa-tional thinking en formuleerden welke leerdoelen leerlingen zouden moeten bereiken. De vaardigheden werden beoordeeld met een vragenlijst met open vragen. De beoordeling gebeurde met een rubric en een vierpuntsschaal (1 = ‘unsatisfactory’, 2 = ‘quite satisfactory’, 3 = ‘satisfactory’, 4 = ‘excellent’). Tabel 9 geeft een overzicht van de gemeten concepten en de te behalen doelen.

Tabel 9 Concepten van Computational Thinking en de te behalen doelen (Atmatzidou en Demetriadis (2016)).

De studie van Berlan en Wilensky (2015) ging na wat het effect was van de interventie op vier concepten:

1) Complex system thinking, 2) Computational thinking, 3) Essay Question on the Relationship Between Classroom Space and ‘Robot Space’ en 4) Programming skills. Het instrument waarmee ze deze concepten hebben gemeten, bestond uit een beschrijving van een situatie waarover vragen werden gesteld. De vragen werden gescoord op een vierpuntsschaal (0 = niet geantwoord, 1 = incorrect antwoord, 2 = deels correct antwoord, 3 = correct antwoord). Bij computational thinking moesten leerlingen bijvoorbeeld een flowcart interpreteren en verder uitwerken.

Bovenbouw voortgezet onderwijs

Twee studies werden uitgevoerd in de bovenbouw. De studie van Palumbo en Reed 1991 keek naar effect op generieke probleemoplossingsvaardigheden. Daarnaast werd er gekeken naar de leerresultaten tijdens de lessen. Deze werd op drie momenten tijdens de interventie gemeten. Het betrof vooral kennis van leerlingen. Het gebruikte instrument is niet beschreven en ook word niets vermeld over de psychometrische gegevens.

De studie van Liu et al. (2013) heeft het effect van de interventie met behulp van een vragenlijst bestaande uit vijftig meerkeuzevragen gemeten. Deze vragen waren ondergebracht in vier schalen: 1) algemene programmeervragen, 2) ROBOTC syntax-vragen, 3) vragen over fysieke functioneren van een robot, 4) vragen met betrekking tot algoritmisch denken. De betrouwbaarheid van de eerste twee schalen was onder de maat. De schalen 3 en 4 gaven goede betrouwbaarheidscoëfficiënten. In tabel 10 staan voorbeeldvragen die zijn gebruikt om de vier constructen te meten.

Tabel 10 Voorbeeldvragen gehanteerd in de studie van Liu et al (2013).

4 Conclusie en discussie

Het doel van deze reviewstudie was om inzicht te krijgen in de effecten van programmeeronderwijs op computational thinking (CT) van leerlingen. Een belangrijke aanleiding voor de review zijn de claims die vaak worden toegeschreven aan programmeeronderwijs, met name als het gaat over de bijdragen van programmeren aan generieke vaardigheden, zoals probleemoplosvaardigheden. In navolging van Lye en Koh (2014) werd in deze review CT onderscheiden in concepts, practices en perspectives. De review richtte zich op de effecten van programmeeronderwijs op CT, de condities waaronder die effecten optreden en de wijze waarop deze effecten worden gemeten.

Uit onze review blijkt dat van het kleuteronderwijs tot aan de bovenbouw van het voortgezet onderwijs onderzoek wordt gedaan naar het effect van programmeeronderwijs op CT. Verreweg de meeste studies vonden plaats in de onderbouw van het voortgezet onderwijs, gevolgd door de bovenbouw van het primair onderwijs.

De review laat zien dat er evidentie is voor positieve effecten van programmeeronderwijs op generieke vaardigheden. Van de veertien studies die onderzoek deden naar het effect op generieke vaardigheden werd in elf studies een positief effect gevonden, in acht studies betrof het een positief effect op probleemoplosvaardigheden. Ook vonden we een positief effect van programmeeronderwijs op computer science-concepten en computational practices (vijf studies). In acht studies werd onderzoek gedaan naar het effect van programmeeronderwijs op specifieke aspecten van CT met veelal een positief effect op de onderzochte kennis en vaardigheden. Slechts vier studies deden onderzoek naar de relatie tussen programmeeronderwijs en effecten op de kennis en vaardigheden in andere vakken (zoals rekenen en biologie). Er werd een positief effect gevonden.

In geen enkele studie is nagegaan of er sprake is van transfer van de opgedane kennis- en vaardigheden naar andere domeinen. Wel werd in een aantal studies de probleemoplosvaardigheden vastgesteld met behulp van algemene testen, die niet domein- of taakgebonden zijn.

In zes studies werd ook gekeken naar effecten van programmeeronderwijs op motivatie en enthousiasme. In het algemeen zijn leerlingen gemotiveerd om het aangeboden programmeerdonderwijs te volgen en reageren ze enthousiast. Voor veel leerlingen was dit ook de eerste keer dat ze kennis maakten met programmeeronderwijs, dus er kan sprake zijn van een novelty effect.

Toch moeten deze bevindingen met de nodige voorzichtigheid worden geïnterpreteerd. In de eerste plaats was het onderzoek meestal geen onderdeel van het reguliere onderwijs. Relatief veel onderzoeken werden uitgevoerd in een specifieke context: buiten schooltijd (bijvoorbeeld Akcaoglu, 2014; Akcaoglu & Koehler, 2014), op privéscholen (bijvoorbeeld Klahr & Carver, 1988; Pardamean et al., 2015) of als onderdeel van een keuzevak (bijvoorbeeld Grover et al., 2015). In de tweede plaats was er relatief vaak sprake van casestudies of pre-experimentele designs, met een klein aantal leerlingen zonder controlegroep. Van de 26 studies hadden slechts zes studies een design waarin de resultaten van de experimentele groep werden vergeleken met die van een controlegroep. Hieruit blijkt dat het onderzoek naar de effecten van programmeeronderwijs op computational thinking nog in de kinderschoenen staat.

Om te achterhalen onder welke condities de gevonden effecten optreden, is nagegaan wat de kenmerken zijn van het programmeeronderwijs dat werd aangeboden in die studies die een positief effect sorteerden. Uit de bevindingen blijken de volgende kenmerken relatief vaak voor te komen:

  • directe instructie bij de introductie van nieuwe concepten
  • een opbouw van het onderwijs van eenvoudige concepten (bijvoorbeeld sequentie) naar meer complexe concepten (bijvoorbeeld conditionele en parallelle uitvoering)
  • oefenen van nieuwe concepten aan de hand van door de docent geformuleerde opdrachten
  • leerlingen werken samen aan de programmeertaak (meestal in tweetallen).

Hoewel de duur van de interventies behoorlijk varieerde werd wel duidelijk dat programmeeronderwijs dat gericht is op CT een bepaalde tijdsinvestering vereist. Uit onze bevindingen bleek niet dat de gekozen programmeeromgeving van belang was voor het al dan niet realiseren van de beoogde effecten. In relatief veel studies werd het onderwijs verzorgd door de onderzoeker of door onderzoeksassistenten. Dit duidt erop dat het vakinhoudelijke kennis en vaardigheden op het gebied van programmeeronderwijs belangrijk is bij de implementatie van programmeeronderwijs in de onderwijspraktijk en dat docenten daarin geschoold moeten worden. Daarin werden geen verschillen gevonden tussen primair en voortgezet onderwijs.

In de bestudeerde studies is gekeken naar effecten van onderwijs op de onderliggende vaardigheden die CT-kenmerken, zoals bij logisch ordenen en debuggen. Ook is gekeken naar effecten van onderwijs op de meer generieke 21e-eeuwse vaardigheden als probleemoplossen. Natuurlijk zijn deze vaardigheden aan elkaar gerelateerd en kan CT gezien worden als een onderdeel van de vaardigheid om problemen op te lossen. In de bestudeerde studies is nagegaan of de effecten zijn gemeten op de specifieke CT-aspecten of op een meer generiek niveau van probleemoplossingsvaardigheden.

 

Heb je vragen over dit thema? Stel ze in de onderwijs community binnen de Wij-leren.nl Academie!

Gerelateerd

Webinar
Burgerschap door sociale cohesie in de klas
Burgerschap door sociale cohesie in de klas
Webinar met Gert-Jan Veerman
Wij-leren.nl Academie 
Gratis webinar
Gratis serie webinars over actuele onderwijskundige thema's!
Gratis serie webinars over actuele onderwijskundige thema's!
Bekende experts delen hun kennis
Wij-leren.online Academie 
Gratis serie webinars over actuele onderwijskundige thema's!21st century skills
21st century skills - wat zijn 21e eeuwse vaardigheden?
Machiel Karels
Online informatievaardigheden methoden
Hoe gebruik je methoden om leerlingen vaardig met online informatie om te laten gaan?
Marléone Goudswaard
Programmeren 1
Leren denken als een programmeur - Digitale bouwvakkers
Marléone Goudswaard
Digitale dementie
Digitale dementie - Manfred Spitzer
Machiel Karels
Digitale media en kinderhersenen
Digitale media en kinderhersenen
Ewald Vervaet

Wij-leren.nl Academie

Inschrijven nieuwsbrief

Inschrijven nieuwsbrief



Inschrijven nieuwsbrief

Omix Webtalks met Adjiedj Bakas - De onderwijsinrichting van morgen
Omix Webtalks met Adjiedj Bakas - De onderwijsinrichting van morgen
redactie
Omix Webtalks met Ben Tiggelaar - Leiderschap en verandering in het onderwijs.
Omix Webtalks met Ben Tiggelaar - Leiderschap en verandering in het onderwijs.
redactie
ICT kennis leerlingen praktijkonderwijs
ICT kennis leerlingen praktijkonderwijs
redactie
[extra-breed-algemeen-kolom2]



21st century skills
computational thinking
digitale geletterdheid

 

Mis geen bijdragen

Inschrijven nieuwsbrief

Volg wij-leren.nl

Volg ons op LinkedIn Volg ons op twitter Volg ons op facebook Volg ons op instagram Volg ons op pinterest