Gerard Dummer

Alles over Onderwijs en ICT.

Browsing Posts published in 2017

In mijn blogpost van 16 februari 2017 over computational thinking benoem ik verschillende definities van computational thinking. Mijn eigen definitie voegde ik daar aan toe:

Het oplossen van problemen waarbij je gebruik maakt van de ideeën uit de informatica.

Later bedacht ik me nog dat dit nog niet compleet was want andersom geldt dit, zeker volgens uitgangspunt van Wing, ook. Wing het noemt dit het automatiseren van abstracties. Waarbij abstracties als het ware de denkkapstok is van de informatica. Als ik mijn eigen definite aanvul met dit uitgangspunt dan kom ik uit op:

Computational thinking is enerzijds het oplossen van problemen waarbij je gebruik maakt van de ideeën uit de informatica en anderzijds het gebruiken van informatica om problemen op te lossen.*

Als ik het heb over ideeën dan bedoel ik zaken zoals algoritmes en patronen. Als ik het heb over problemen dan kan dat slaan op een zakelijke insteek (zoals het uitvoeren van een project) als een creatieve insteek (zoals het maken van een kunstwerk).

Een volgende stap die ik wil zetten in mijn denkproces/zoekproces is het volgende: de voorbeelden die rondom computational thinking worden gegeven vind ik nogal hap-snap. Ik zie nog geen duidelijke lijn in de opbouw van computational thinking. Websites zoals CSunplugged bieden allerlei activiteiten aan maar die staan naar mijn idee nog niet in een lijn. Dat komt misschien omdat ik nog niet goed heb gekeken of mijn kennis nog niet groot genoeg is rondom dit onderwerp. Ik weet bijvoorbeeld ook nog niet of dit überhaupt moet of niet.

Als ik een vergelijking zou maken met rekenen-wiskunde dan lijkt het of de activiteiten die benoemd worden de ene keer gaan over sommen als 3 + 4 dan weer over 34 x 35 en dan weer over de vraag hoeveel seconden er in een dag zitten. Sommen die komen uit verschillende plekken van de leerlijn of zelfs uit verschillende leerlijnen.

De website van Kennisnet en de SLO over de leerlijn programmeren komt al meer in de richting. Zij hebben zich gebaseerd op de SLO die zich weer heeft laten inspireren door ISTE en CSTA. Tijd om me daar verder in te verdiepen.

Een idee dat ik ook heb over CT is om te kijken in hoeverre het zinvol is om dit te koppelen aan een taxonomie zoals die van Bloom. Omdat in de stukken die ik tot nu toe lees het vooral gaat over het onderdeel Computational en nog niet zozeer over het onderdeel Thinking. Een idee dat verder wordt ingegeven door het feit dat ik denk dat je eerst aspecten van computational thinking zou moeten herkennen voordat je in staat bent om er iets mee te doen. En dat idee wordt weer getriggerd doordat ik me in de afgelopen jaren ook bezig heb gehouden met de invoering van Wetenschap en Technologie (W&T) op onze Pabo. Een mooi document dat daarin een belangrijke rol speelt is die van Hanno van Keulen waarin hij laat zien hoeveel W&T in ons dagelijks leven een rol speelt. Bij veel voorbeelden die hij noemt is naar mijn idee moeiteloos CT te koppelen. Dat doet hij in zijn publicatie niet. Daarom ter afsluiting Linda Liukas die dat wel doet 🙂

 

*Aanvulling op mijn definitie van 14 maart 2017 op 12 januari 2018: ideeën zou beter vervangen kunnen worden door het begrip “fundamentele ideeën”. Dit sluit beter aan bij auteurs zoals Schwill (1994), Denning (2004) en Zendler en Spannagel (2008) die benadrukken dat computer science op school zich bezig moet houden met de fundamentele ideeën (of great principles of central concepts) omdat het veld zo dynamisch is.

Op 15 februari 2017 mocht ik een workshop verzorgen over computational thinking voor de basisscholen die mee hebben gedaan aan het traject Leren in de 21ste eeuw. In mijn workshop ben ik ingegaan op de vragen: wat is computational thinking, uit welke aspecten bestaat CT, waarom is het belangrijk en zijn we ook praktisch aan de slag gegaan hiermee. En dat alles in 50 minuten. Dat was dus wel keuzes maken. Hieronder de presentatie die ik voor de bijeenkomst gebruikt heb.



Waar ik tijdens de presentatie zelf achter kwam (had ik dus willen toevoegen) was dat er een mooi overzicht van Beat Döbeli Honegger ontbrak die computerscience (en indirect vind ik ook CT) mooi plaatst in een oplopend rijtje (zie dia 5) en die de redenen om met computerscience (en indirect vind ik dus nogmaals met CT) aan de slag te gaan (zie dia 16).

Op 23 maart zal ik nogmaals over CT praten, dan op het symposium ter gelegenheid van het afscheid van Dick de Wolff. Dan zal ik stilstaan bij de verschillende curricula die inmiddels zijn ontworpen rondom CT.

Het artikel van Wing (2006) is waarschijnlijk heet meest geciteerde artikel op dit moment als het gaat over het onderwerp computational thinking. Maar ook in 2008, 20110 en 2016 schrijft Wing over de ideeën en ontwikkelingen rondom computational thinking (CT).

Ik heb de verschillende artikelen van haar op een rijtje gezet en de (naar mijn idee) belangrijkste aspecten uitgehaald.

Definitie van computational thinking

Wing hanteert verschillende omschrijvingen om duidelijk te maken wat ze precies onder CT verstaat. In 2006 geeft ze aan dat CT te maken heeft met het oplossen van problemen, het ontwerpen van systemen en het begrijpen van menselijk gedrag door voor te borduren op de fundamentele concepten van computerscience (CS).

In 2010 omschrijft ze CT als het denkproces dat nodig is in het formuleren van problemen en hun oplossingen zodanig dat de oplossingen op zo’n manier worden weergegeven dat ze effectief uitgevoerd kunnen worden door een information-processing agent.

Informeel omschreven als de denkactiviteiten bij het formuleren van een probleem om te komen tot een computationele oplossing. De oplossing kan worden uitgevoerd door een persoon of een machine, of in de meeste gevallen door een combinatie van een persoon en machine.

Wing geeft aan dat CT het wiskundig en technisch denken combineert (Wing, 2006, 2008, 2010).

In mijn eigen woorden zou ik bovenstaande omschrijven als het oplossen van problemen waarbij je gebruik maakt van de ideeën uit de informatica.

Aspecten van CT

In het artikel van 2006 beschrijft Wing verschillende aspecten van CT die rechtstreeks voortkomen uit het programmeren zoals het herkennen van de voor- en nadelen van aliasing, de baten en kosten van indirect adressing en procedure call.

In het artikel van 2008 geeft ze aan dat de essentie van CT abstractie is. Dat komt terug in het artikel van 2010. De kern is om abstracties te kunnen definiëren waarbij gewerkt wordt met meerdere lagen en waarbij je de relatie tussen deze lagen ook moet kunnen begrijpen. Abstracties zijn de mentale gereedschappen van computing geeft Wing (2008) aan. En computing is het automatiseren van onze abstracties. In 2008 en 2010 geeft Wing aan dat abstractie gebruikt wordt om patronen te definiëren, te generaliseren op basis van gevallen en parameters. Het wordt gebruikt om de essentie weer te geven en irrelevante informatie weg te laten. Verschillende lagen van abstractie zorgt er voor dat we ons kunnen focussen op verschillende aspecten.

Er zijn een paar zaken die me hier bij opvallen. In 2006 zit Wing nog erg dicht aan tegen de concrete begrippen die gebruikt worden in de informatica. Een paar jaar later kiest ze als kapstok abstractie als belangrijkste aspect van CT. Alle andere aspecten worden hier van afgeleid. Wat ik hier opvallend aan vind is dat ik dit nu niet meer terugvind in de leerlijnen die nu worden geformuleerd rondom CT. Zo hanteert de leerlijn programmeren/ computational thinking van Kennisnet tien aspecten die zo op het eerste gezicht redelijk gelijk worden behandeld. Het eerste aspect (algoritmes) lijkt niet onder te doen van abstractie (begrip 7) of representatie (begrip 10).

Toepassingen in het onderwijs en wetenschap

Naar mijn idee het belangrijkste punt dat Wing noemt is de toepassingen van CT in onderwijs en wetenschap. Wing (2010, 2016) geeft aan dat computation erkent wordt als de derde pijler onder de wetenschap naast theorie en experimenten.
Ze noemt veel voorbeelden van disciplines die veranderd zijn en waarbij CT een belangrijke rol speelt: statistiek, biologie (onder andere doorzoeken van enorme hoeveelheid data op zoek naar patronen. Deze patronen worden dan weer gebruikt voor nieuw onderzoek bijvoorbeeld bij het ordenen van het menselijk DNA), economie (door computational gametheorieën), nanocomputing beïnvloedt de scheikunde en quantumcomputers beïnvloeden natuurkundigen (Wing, 2006), algoritmische geneeskunde, computational archeologie, financiën, journalistiek, recht, sociale wetenschappen, fotografie, digitale geesteswetenschappen, computermuziek (Wing, 2010).

In het artikel van 2016 geeft Wing aan dat CS-cursussen ook gegeven worden aan studenten die niet afstuderen in CS zelf. Deze cursussen focussen op de kernconcepten van CS. Wing (2016) vind het verrassend en verheugend om te zien dat ook in het middelbaar en basisonderwijs initiatieven zijn ontstaan. Ze noemt daarbij de ontwikkelingen in Engeland (CAS) en het opstarten van code.org in 2013. Als derde noemt Wing de snel toenemende belangstelling in het onderwijzen van CS op de basis- en middelbare school in Australië, Israël, Singapore en Zuid-Korea.

Computational Thinking in het dagelijks leven

Het minst sterk (maar misschien wel meest herkenbaar) vind ik de relatie die Wing legt met CT in het dagelijks leven. Bijvoorbeeld (Wing, 2006) bij het inpakken van een rugzak (prefetching and caching), het terugvinden van verloren handschoenen (back- tracking), het nadenken over huren of kopen van ski’s (online algoritmes), het kiezen van een rij in de supermarkt (performance modeling voor multi-server systemen), het blijven werken van je telefoon gedurende een stroomuitval (independence of failure en redundancy in design), doostroming van geslaagden op een dipoma-uitreiking (Wing, 2010) als voorbeeld van pipelining en het opbergen van LEGO-blokjes zodat je gemakkelijk een specifiek blokje terug kunt vinden (hashing).

Hoe moet je computational thinking aanleren?
Deze vraag stelt Wing (2008 en 2016) zichzelf. Ze vraagt zich af wat effectieve manieren zijn om CT aan te leren bij kinderen, wat de basisconcepten zouden moeten zijn (Wing, 2008, 2016), in welke volgorde moeten de concepten worden aangeboden, verschilt dit per leerling, welke tools (waaronder computers) zijn het meest bruikbaar voor het aanleren van concepten, wanneer zetten we deze tools in, hoe verhoudt informeel en formeel leren zich tot elkaar bij het aanleren van de concepten.

Ze verwijst hierbij vooral naar andere initiatieven zoals http://csprinciples.org, een serie workshops van de National Academies’ Computer Science and Telecommunications Board, CE21 van de NSF, Computing At School (CAS) in Groot-Brittannië, CS4HS, Carnegie Mellon Center for Computational Thinking, Exploring Computational Thinking van Google, Computer Science Unplugged en CSTA.

Voor de precieze uitwerking van computational thinking in het onderwijs moet je dus niet bij Wing zelf zijn maar bij alle andere de initiatieven die ze noemt. Nog maar eens verder kijken dus!

Studente Suzanne Wierstra van de pabo van Hogeschool Utrecht heeft voor haar project Wetenschap en Technologie (onderzoekend en ontwerpend leren) bij de kleuters onder andere de BeeBot ingezet. De BeeBot had op haar kleuters een grote aantrekkingskracht. Ze zijn volop aan het experimenteren geweest en aan het ontwerpen.

Zo maakten de kleuters allerlei parcouren voor de BeeBot om af te leggen.


BeeBot_kleuters_onderzoekend_ontwerpend_leren

BeeBot_kleuters_onderzoekend_ontwerpend_leren

BeeBot_kleuters_onderzoekend_ontwerpend_leren

Maakten ze allerlei bouwwerken waar ze de BeeBot overheen konden laten gaan.

BeeBot_kleuters_onderzoekend_ontwerpend_leren

BeeBot_kleuters_onderzoekend_ontwerpend_leren

BeeBot_kleuters_onderzoekend_ontwerpend_leren

En hebben ze getest hoe sterk de BeeBot was!

BeeBot_kleuters_onderzoekend_ontwerpend_leren

BeeBot_kleuters_onderzoekend_ontwerpend_leren

Al met al een creativiteit waar ik vrolijk van wordt!

Afgelopen weken hebben studenten van de Pabo van Hogeschool Utrecht hun Wetenschap en Technologie projecten gepresenteerd. De meest uiteenlopende onderwerpen kwamen langs voor de meest uiteenlopende doelgroepen. Ook ICT moest worden verwerkt in de projecten. Veel studenten hebben ICT ingezet ter ondersteuning van onderzoekend leren. Maar er zijn ook studenten geweest die in het kader van ontwerpend leren met ICT aan de slag zijn gegaan. Een paar presentaties ging over de inzet van de BeeBot. Zo is Emily van Hees bij de kleuters aan de slag gegaan met de BeeBot. Zij heeft in vier lessen de leerlingen de basisvaardigheden van programmeren gelegd.

Eerst het principe uitgelegd met hoepels in de speelzaal, daarna op de computer een spelletje over hetzelfde onderwerp, in les 3 werd er geoefend met de BeeBot zelf en in les 4 werd er getest en bijgesteld. In de presentatie zelf zijn verschillende verantwoordingen te vinden over het hoe en waarom van deze opzet.

Ik vind dat ze in deze opzet unplugged activiteiten, ontwerpactiviteiten en computational thinking mooi met elkaar heeft verweven.

De afgelopen maanden hebben vierdejaars studenten van de Pabo van Hogeschool Utrecht die mee hebben gedaan aan de minor Wereldvakken gewerkt aan het maken van een educatieve documentaire. Gisteren hebben we met studenten en collega’s een documentairefestival gehouden om elkaars werk te bewonderen. We hebben er van genoten. Onder het genot van popcorn en cola (of voor de gezonde variant: worteltjes en perensap) kwamen onderwerpen langs als Kamp Amersfoort, De Nieuwe Hollandse Waterlinie, Spookverhalen in Hilversum en Schuilkerken in Utrecht.

Je kunt ze allemaal bekijken in de afspeellijst hieronder! Veel plezier.

Tips die ik voor volgend jaar meeneem trouwens bij deze opdracht is om aandacht te besteden aan plaatsbepaling in de documentaires. Dus waar speelt iets zich af. Dat kwam nu nog niet goed uit de verf. Ook wil ik nog meer aandacht besteden aan storytelling. Dat was nu al goed maar kan volgens mij nog meer uitgebuit worden.