LVS
Digitale toetsen
Professionalisering
Blended learning E-learning trends en ontwikkelingen
Rekenen
Dyscalculie Verbeteren rekenvaardigheid mbo
Taal
Game Interactieve Fictie Vroege ontwikkeling geletterdheid ICT-vroege geletterdheid Verhaalbegrip kleuters met ICT
Leren
Adaptieve software Blended learning Cognitieve balans Onderzoekend leren Kwaliteit leermateriaal Effectiever onderwijs Edutainment Blended learning effect E-portfolio’s Burgerschap games Verbeteren leerprestaties ICT differentiatie Programmeren 2 Programmeren 1 Mythe van leerstijlen
Lezen
Lezen met lees-app Ontluikende geletterdheid ICT oplossing problemen lezen Digitale leeskilometers groep 3
Middelen
Computerapplicaties Digitaal schoolbord ICT-beleidsplan Leren in 2020 - 1 ICT in kindcentra Leren in 2020 - 2 Onderwijs en ICT Werking en beperking
Problemen
Cyberpesten Digitale dementie Digitale media en kinderhersenen Problematisch internetgedrag Kleuters en iPads
ICT
Digitale leermiddelen Digitale geletterdheid vo ICT-innovatie Tablet in het onderwijs Nieuwsgierigheid computergames Integreren in klassenpraktijk Buitenschoolse mediagebruik Jonge kinderen en tabletgebruik Digitale gymles Opleiding ICT beheerder
Verder kijken
ict onderwijs digitale vaardigheden ICT rekenen software internet informatie zoeken kennis learning analytics samenwerkend leren metacognitieve vaardigheden tutor scaffolding multimedia beeld geluid audio multimedia geheugen ict multimedia geheugen ict effectief leren multimedia geheugen ict effectief leren bronnen multimedia geheugen zelfsturing ict opbrengstgericht werken digitaal leerlingvolgsysteem professionalisering ict praktijk serious games beroepsonderwijs synchroon coachen opleiding leraren tekst schrijven outline tool toetsen leerlingvolgsysteem opbrengsten TPACK ICT integratie onderwijs typen schrijven typecursus lezen videovoorbeelden ict effect animatie leerproces instructie video

 

Leren denken als een programmeur

Marléone Goudswaard

Ontwikkelaar en adviseur bij CED-groep

 

m.goudswaard@cedgroep.nl

  Geplaatst op 17 februari 2017

Goudswaard, M. (2017) Leren denken als een programmeur.
Geraadpleegd op 29-04-2017,
van http://wij-leren.nl/leerlijn-denken-als-een-programmeur.php

Deel 2: De vijf denkprocessen in één leerlijn

Leerlijnen vormen de ruggengraat van het onderwijs. Ze zijn onmisbaar bij het realiseren van hoge en doelgerichte onderwijsopbrengsten.

Met behulp van een leerlijn kan je het denken als een programmeur inbedden in de dagelijkse lespraktijk, en er gericht ‘tools’ bij kiezen.


Afbeelding 1: Er zijn veel leuke programmeertools voor het onderwijs gemaakt. Kinderen ervaren de lol van het ontwikkelen. Een leerlijn geeft richtlijnen voor het aanbod.

Voor denken als een programmeur heeft de CED-Groep een doorgaande lijn ontwikkeld. De nadruk ligt in de lijn op de denkprocessen. Programmeren is daarom niet als een apart onderdeel, maar voorbeeldmatig opgenomen. 

De leerlijn bevat doelstellingen voor de onder-, midden en bovenbouw van het primair onderwijs, op de volgende vijf onderdelen:

  • Patroonherkenning
  • Algoritme
  • Abstractie
  • Decompositie
  • Data en classificatie

Wil je echt goed met de leerlijn kunnen werken in de klas, dan is het belangrijk om de essentie van de vijf onderdelen in de leerlijn goed te begrijpen: om welk denkproces gaat het precies en wat is de functie ervan? We beginnen onze verkenning bij patroonherkenning.

Patroonherkenning

Afbeelding 2: Patronen zijn overal om ons heen: letters en cijfers bestaan uit een aantal vormen zoals de lange stok en het rondje, muziek heeft een ritme, een dag heeft een vaste indeling in ochtend, middag, avond en nacht en we kennen vier seizoenen. Jonge kinderen maken al vroeg kennis met deze patronen.

Naarmate kinderen zich ontwikkelen, zijn zij in staat om steeds ingewikkeldere patronen te herkennen. Zoals spellingregels of rekenkundige oplossingen die volgens een vast patroon doorlopen. Dat is heel handig, want als je dit soort patronen herkent, kun je ook gebruik maken van oplossingen die al eerder zijn bedacht.

Barcode en QR code

Afbeelding 3

Bij patroonherkenning gaat het om het herkennen van gemeenschappelijke patronen in problemen, processen, oplossingen of data. Twee concrete voorbeelden van patroonherkenning  in technologische oplossingen die de meeste kinderen wel zullen herkennen, zijn:

  • de barcode;
  • de QR code.

Met kinderen kun je onderzoeken doen naar de patronen. Waaruit bestaan ze, waaraan kun je ze herkennen?


Afbeelding 4

Lesidee patronen


Lesidee in kleurraster

Onderzoek als een rechercheur de vingerafdrukken van alle kinderen in de klas.
De afdrukken zijn uniek, geen afdruk is hetzelfde. En toch zien we allemaal dat het een vingerafdruk is.

  • Waar herken je een vingerafdruk aan?
  • Wat is het patroon?
  • Hoe zou de rechercheur een scanner kunnen ontwerpen die de vingerafdrukken herkent?

Patronen bestaan niet alleen in concrete dingen zoals een barcode, QR code of vingerafdruk, maar ook in gebeurtenissen of acties die elkaar opvolgen. Zoals periodes en gebeurtenissen in de geschiedenis, stromingen in de kunst, een schaakspel, of zelfs bij een ruzie op het schoolplein.

Patronen zijn ook te vinden in informatie zelf, zoals de netnummers in een telefoonnummer, postcodes of de opbouw van het kenteken op de auto. Er zijn dus genoeg aanknopingspunten om de aandacht van kinderen te richten op patronen in hun dagelijkse omgeving.

Algoritme

Afbeelding 5: Bij een algoritme leren kinderen om heel precies te zijn in hun instructies. Want dan alleen kan een computer de opdrachten uitvoeren.

Een algoritme is een ondubbelzinnige instructie, of een precies stappenplan om een probleem op te lossen of een doel te bereiken.

Een algoritme wordt wel eens vergeleken met een recept: als je een recept voor chocoladecake opvolgt, levert je dat een chocoladecake op.

In theorie lijkt dat aardig.

  • Maar waarom mislukt mijn cake dan toch?
  • En is die van jou goed gelukt?
  • Er staat ‘op smaak brengen…’
  • ‘voeg een eetlepel suiker toe…’
  • en wat dacht u van ‘een snufje zout’?

Deze instructies zijn niet heel precies. Bovendien worden er stappen overgeslagen, zoals een instructie voor hoe je een oven voorverwarmt.

Lesidee algoritme

Dit lesidee hoort bij het stukje over cake en de foto van eitje breken.


Lesidee in kleurraster

Laat kinderen in groepjes met hetzelfde recept aan de slag gaan. Bespreek met de kinderen hoe ze het hebben aangepakt en wat de resultaten zijn.

Welke overeenkomsten en verschillen zien de kinderen?

Op welke manier kan het recept aangepast worden zodat de resultaten meer op elkaar lijken?


Snelle oplossing


Afbeelding 6: Akinator is de digitale genie uit de fles. Hij raadt het personage dat kinderen in hun hoofd hebben door vragen te stellen. 

Met vaste instructies en precieze stappenplannen lossen geprogrammeerde apparaten vraagstukken snel en effectief op. Als je weet dat in technologie deze routines zijn toegepast, helpt je dat beter begrijpen hoe een apparaat werkt.

De kinderen dagen akinator graag uit en hopen dat hij een keer de mist in gaat. Maar weten ze ook hoe akinator het raadt?

Bij jonge kinderen kun je ook al denken aan eenvoudige voorlopers van algoritmen, zoals het sorteren van blokjes van klein naar groot of het in volgorde vertellen bij dagritmekaarten.

Om een algoritme te kunnen bedenken, moet je wel eerst een patroon herkennen. Bij patroonherkenning noemden we als voorbeeld een ruzie op het plein. Als kinderen een patroon herkennen in de ruzies, zouden we ze ook kunnen uitdagen om een algoritme te bedenken voor het goed oplossen ervan.

Kunnen ze van dit ingewikkelde, sociale proces een stroomschema maken?

Abstractie

Abstractie komt van het Latijnse woord Abstraheren, wat ‘weglaten’ betekent. Het is het denkproces waarbij je boven de concrete werkelijkheid uitstijgt en bedenkt welke onderdelen essentieel zijn en welke je weglaat.

Zo maakte Plato onderscheid tussen de concrete, waarneembare en veranderlijke wereld van alledag, en de in zijn ogen ‘echte’ werkelijkheid, die bestaat uit abstracties, onveranderlijk is, en waarin ruimte en tijd niet bestaan.


Afbeelding 7: Een rode bal is een afspiegeling van twee vormaspecten: de kleur ‘rood’ en de vorm ‘rond’. Iedere bal maakt deel uit van de abstractie ‘bal’. Of de bal groot of klein is, in een bak ligt bij andere ballen of los op de grond ligt, in de lucht zweeft of over de grond rolt, dat maakt niet uit voor de abstractie ‘bal’.

Om abstractie te bereiken stelde Plato de vraag ‘Wat zijn fundamentele dingen waaruit de werkelijkheid bestaat?’ En dat is ook de vraag die ICT ontwikkelaars zichzelf stellen. Ze vormen een model van alle activiteiten, componenten en informatie die relevant is voor het te bouwen systeem.

Bijvoorbeeld voor het ventilatiesysteem in een auto is de temperatuursensor op de motor essentieel.

Abstractie in de klas

Afbeelding 8: In de onderbouw zijn de abstracties nog enkelvoudig en zichtbaar.

In de onderbouw oefenen kinderen al om voorwerpen te herkennen naar bijvoorbeeld vorm. Ze leren dat zowel een sinaasappel als een pizza cirkels zijn, ook al is de ene vorm bol en de ander plat.

Kinderen maken al vrij snel kennis met abstracties als het tekenen van een som of het maken van een woordweb.

In de midden- en bovenbouw kunnen kinderen steeds complexere situaties abstraheren, waarbij zij ook de onderlinge relaties tussen de essentiële onderdelen laten zien.

Bijvoorbeeld de kinderen van groep 8 maken een schema van het James Bond spel met afgooiers en balophalers, schuilplaatsen en thuisbasis, roofobjecten en puntentelling.

Decompositie

Sommige problemen of vraagstukken zijn zo complex, dat je ze niet op kunt lossen. Als je het probleem opdeelt in een heel veel kleine problemen, kun je die één voor één oplossen. En uiteindelijk heb je dan het grote probleem ook opgelost. Dit proces is decompositie.

Het groene laken

Afbeelding 9

Programmeur Wim Ligtendag noemt decompositie ‘het groene laken’, het operatiekleed met één klein gaatje erin. Een term die hij en zijn compagnon Ynze Baumfalk gebruiken om uit te leggen dat je het grootste deel van het probleem afdekt, op één stukje na. Dit stukje ga je goed bestuderen en oplossen.

Dit lijkt misschien een lastig onderdeel om in de klas te oefenen. Toch is decompositie te verbinden aan concrete voorwerpen en situaties. Om dit te illustreren, ziet u hier een paar leerdoelen voor decompositie uit de leerlijn ‘Denken als een programmeur’.


Afbeelding 10

Data en classificatie

Het laatste onderdeel van de leerlijn heeft betrekking op het leren herkennen van typen data en het ordenen van die gegevens in groepen.

Dit zullen leerkrachten in de onderbouw meteen herkennen. Met kleuters wordt er volop gegroepeerd en gesorteerd, bijvoorbeeld figuren van dezelfde vorm of kleur bij elkaar leggen, boerderij en wilde dieren onderscheiden en kleding en voorwerpen bij seizoenen sorteren.

Complexere vormen van ordenen

Bij de oudere kinderen kan het accent verlegd worden naar het zelf bedenken van categorieën waarmee dingen gesorteerd kunnen worden, naar andere typen data (bijvoorbeeld waar/ niet waar) en naar complexere vormen van ordenen.

Een voorbeeld hiervan is het ordenen van objecten op meerdere kenmerken; één object behoort dan tot meerdere groepen.


Afbeelding 11: Het ordenen van objecten op meerdere kenmerken is vergelijkbaar met de Matroesjka poppetjes. Eén poppetje past in één of meerdere andere poppetjes, die meer kunnen omvatten.

Objecten

Andersom is het mogelijk om met kinderen te kijken naar de abstracte vormen van objecten. Bijvoorbeeld: ‘Een kat en een koe zijn beide zoogdieren.’

Alles wat geldt voor een zoogdier, is van toepassing op zowel de kat als het zoogdier: ‘Zoogdieren zijn warmbloedig, dus een kat een koe zijn warmbloedig.’ Een zoogdier is een abstract object, het bestaat niet zelfstandig.


Afbeelding 12

Classificeren

Afbeelding 13: Hoe begin je met een puzzel? Sorteer je puzzelstukjes op kleur? Of haal je misschien de kantstukjes eruit? Classificeren heeft veel raakvlakken met organiseren. Je bedenkt voor het ordenen al wat een handige indeling is, afhankelijk van wat er uiteindelijk mee gedaan gaat worden.

Het meest duidelijk is deze vergelijking door te denken aan je digitale postvak en agenda. Deze staan vol mogelijkheden om je berichten, afspraken en taken te classificeren: met gekleurde vlaggen, vaste en zelfbedachte categorieën, taken, herinneringen. Dit heeft alleen zin als je vooraf bedenkt wat voor jou een handige manier is die je uiteindelijk helpt om je taken beter en op tijd te doen.

Voor de een betekent dit dat aan alle afspraken op de andere schoollocatie een herinnering toegevoegd wordt 15 minuten van tevoren in verband met de reistijd. Voor de ander betekent dit dat alle privé afspraken een oranje markering krijgen, en de werkafspraken blauw.

Leren denken als een programmeur

In dit artikel heb je kennis kunnen maken met een vijftal denkprocessen die essentieel zijn voor het werk van een programmeur:

  • patroonherkenning
  • algoritmen
  • decompositie
  • abstractie
  • data en classificatie

De leerdoelen uit de leerlijn ‘Denken als een programmeur’ kunnen verrijkend zijn voor het leren.

Leestip deel 1: digitale bouwvakkers

Ook al worden leerlingen niet allemaal zelf een digitale bouwvakker, als zij begrijpen hoe een programmeur denkt, zijn zij beter in staat om te begrijpen hoe digitale oplossingen in elkaar zitten. En als het nodig is, kunnen zij gereedschap van de programmeur lenen om complexe vraagstukken op te lossen. Door te denken als een programmeur.


Afbeelding 14

Met dank aan Wim Ligtendag (GISfabriek) en Jan Geert Hek (Qtopia).

Bronnen

Goudswaard, M. (2017) Leren denken als een programmeur.
Geraadpleegd op 29-04-2017,
van http://wij-leren.nl/leerlijn-denken-als-een-programmeur.php

Gerelateerd

Programmeren 1
Leren denken als een programmeur - Digitale bouwvakkers
Marléone Goudswaard
Effectiever onderwijs
Hoe gerichte inzet van ICT leidt tot effectiever onderwijs
Jos Cöp
Leren in 2020 - 2
Leermiddelen in 2020 - op weg naar een digitaal leerlandschap
Jos Cöp
Blended learning
Grenzen verleggen met blended learning
Sylvia Peters
Persoonlijk leren
Effectief differentiëren, individualiseren en personaliseren in de 21e eeuw
Jos Cöp
E-learning trends en ontwikkelingen
E-learning. Trends en ontwikkelingen
Wilfred Rubens
Digitale dementie
Digitale dementie - Manfred Spitzer
Machiel Karels

Virtual reality
Zijn Augmented Reality en Virtual Reality in het basisonderwijs effectief?
Adaptieve software
Wat biedt een adaptieve leeromgeving en welke rol heeft de leraar dan?
Welke ICT-vaardigheden zijn nodig voor leerlingen van het praktijkonderwijs?
Blended learning effect
Wat is het effect van blended lesmateriaal op onderwijsresultaten in het voortgezet onderwijs?
Cyberpesten en andere digitaal ongewenst gedrag
Wat zijn effectieve interventies om digitaal ongewenst gedrag in het onderwijs tegen te gaan?
Online-oefenprogramma's
Hoe en hoe vaak zou je een leerling moeten belonen in een online oefenprogramma om de leerling zo goed mogelijk te motiveren ...
Tablet in het onderwijs
Wat zijn de leeropbrengsten van tabletgebruik in de basisschool?
Jonge kinderen en tabletgebruik
Is het wenselijk om tabletgebruik door jonge kinderen af te stemmen op hun lichamelijke kenmerken of ontwikkeling?
Game Interactieve Fictie
Gebruik game Interactieve Fictie (IF) in het taalonderwijs
Digitale leeskilometers groep 3
Leesvaardig door digitale leeskilometers in groep 3: Differentiatie door inzet van ICT
Effecten digitaal leermiddel
Effecten van een digitaal leermiddel bij het leren lezen
Digitale gymles
Terugkijken met een tablet: De opbrengsten van de digitale gymles
Gebruik animaties po
Gebruik van animaties in basisonderwijs
Animaties taal po
Gebruik van animaties bij taal in basisonderwijs
Animaties rekenen po
Gebruik van animaties bij rekenen in het basisonderwijs
Animaties natuur po
Gebruik van animaties bij natuuronderwijs in het basisonderwijs
Computergames wiskunde
Gebruik van computergames bij wiskunde in het beroepsonderwijs
Invloed leeromgeving vo
Invloed van leeromgeving op motivatie, zelfregulering en prestaties van potentieel excellente studenten
Schrijf in voor de nieuwsbrief
Schrijf in voor de nieuwsbrief
Schrijf in voor de nieuwsbrief
Schrijf in voor de nieuwsbrief
[extra-breed-algemeen-kolom2]

Programmeren 2



Inschrijven nieuwsbrief


Volg wij-leren.nl

Volg ons op LinkedIn Volg ons op twitter Volg ons op facebook

Mis geen bijdragen.