Learning to Code vs. Coding to Learn (Michael Trucano)

In deze blog, die ik vond via Larry Cuban, stelt Michael Trucano, een onderwijsexpert bij de Wereldbank, een paar belangrijke vragen over leren coderen en programmeren, die relevant zijn voor de Nederlandse situatie. Ook in Nederland horen we de roep om de 21ste-eeuwse vaardigheid coderen als verplicht vak op school in te voeren.

Schermafdruk 2016-04-29 15.12.46Over de vraag of alle kinderen zouden moeten leren programmeren wordt heel verschillend gedacht met zowel felle voorstanders als even felle tegenstanders. Voor een positief antwoord worden de volgende argumenten aangevoerd:

Kunnen coderen is een vaardigheid die relevant is voor de arbeidsmarkt. Het is maar de vraag of dat op de lange duur (‘2032’) ook geldt. Denk aan robots die kunnen programmeren, waardoor de behoefte aan programmeurs in de toekomst kleiner wordt.

Door te leren coderen leer je logisch nadenken en problemen oplossen. Dat is zeker een goed argument, maar daar tegenover stelt Yevgenyi Brikman: “Don’t learn to code, learn to think“.

Leren coderen kan helpen gelijke kansen te scheppen voor meisjes en jongens en kinderen met diverse sociaaleconomische achtergronden.

Trucano noemt nog een paar argumenten vóór coderen als verplicht vak. Hij loopt die een voor een langs en stelt daar telkens kritische vragen bij.

voor iedereen?Poster-ProgrammeerJeMeesterOfJuf

Er zijn goede argumenten om kinderen de mogelijkheid te bieden om te leren coderen en het is ook zinvol om alle kinderen tenminste te laten kennismaken met een manier van denken en problemen oplossen die inmiddels deel uitmaken van onze cultuur. Dat hoeft niet voor een beeldscherm te gebeuren. Onze kinderen moeten al veel te lang stilzitten op school. Veel leuker en inspirerender is het coderen te combineren met maken: ‘Maker Education’. In mijn eigen Maker+Klas en roboticalessen leren ze spelenderwijs coderen terwijl ze een robot bouwen.
Leren coderen kan zelfs tijdens de gymles. Op de site Levend Programmeren staat een spel waarvan de regels samen het algoritme vormen van een robot. Iedereen is in beweging en heeft veel plezier. Zo kan het dus ook.

We kunnen ons afvragen of leren coderen de enige manier is om jonge mensen te leren denken, problemen oplossen, creatief zijn en volwassen in de wereld staan. Literatuur (en in het algemeen plezier in lezen en schrijven), muziek maken, dansen, drama en sport zijn andere wegen waarlangs we het zelfde kunnen bereiken. Als we al die mogelijkheden op school bieden kunnen ze zelf kiezen wat het beste bij hen past.

  • Voor we coderen als verplicht vak in het curriculum opnemen doen we er goed aan de vragen te stellen waarmee Trucano zijn stuk eindigt:
  • Moeten we codeerles geven op school?
  • Wat verstaan we onder ‘coderen’ in onze context?
  • Wie moet die lessen geven en wie moeten het leren – een paar computernerds of iedereen?
  • Kunnen we ons deze lessen veroorloven? Of, omgekeerd, kunnen we ons veroorloven deze lessen niet te geven als andere scholen of scholen in andere landen dat wel doen?
  • Is het voldoende wanneer onze kinderen leren coderen, of gaat het er om dat ze de vaardigheden worden in ‘coderen om te leren’ – systematisch en gestructureerd denken? Daarmee wordt coderen relevant voor alles wat we in school leren.

Kortom, voor we overhaast coderen/programmeren opnemen in het kerncurriculum is het verstandig goed na te denken.

Larry Cuban on School Reform and Classroom Practice

Michael Trucano posted this on his blog December 8. 2015. From the World Bank blog: “Michael Trucano is the World Bank’s Senior Education & Technology Policy Specialist and Global Lead for Innovation in Education, serving as the organization’s focal point on issues at the intersection of technology use and education in middle- and low-income countries and emerging markets around the world. At a practical working level, Mike provides policy advice, research and technical assistance to governments seeking to utilize new information and communication technologies (ICTs) in their education systems. Over the past 18 years, Mike has been advisor on, evaluator of, and/or working-level participant in, educational technology initiatives in over 45 middle- and low-income countries.”

“Coding”, it is said by some, is the “new literacy”. The ability to write and understand computer code, some contend, is increasingly fundamental to understanding how to navigate one’s way through, to say nothing of succeeding…

View original post 1.543 woorden meer

About Dick van der Wateren

Ik sta voor de klas op het Eerste Christelijk Lyceum in Haarlem en begeleid dagelijks talentvolle en begaafde leerlingen die meer uitdaging nodig hebben, of coach leerlingen die een probleem hebben waar we samen een oplossing voor vinden. Daarnaast ontwikkel ik digitaal lesmateriaal en video's voor Flip de Klas. Buiten het onderwijs heb ik een jarenlange ervaring als aardwetenschapper (o.a. in Antarctica en Afrika) en wetenschapsvoorlichter. Werken met jongeren is mijn passie. Voor mij zijn pubers zo'n beetje de leukste mensen. Ze hebben een enorme levenslust, zijn creatief, hebben originele ideeën - soms op het bizarre af - en kunnen zich nog alle kanten op ontwikkelen. Ik beschouw het als een voorrecht aan die ontwikkeling te kunnen bijdragen.

6 Reacties to “Learning to Code vs. Coding to Learn (Michael Trucano)”

  1. De vraag is of de betekenis achter de betekenis van literacy goed begrepen wordt. Coderen en programmeren kun je beter vergelijken met kennis en vaardigheden van druktechniek, voer- en vaartuigentechniek, bouwkundige techniek, kortom; de inhoud en praktijk van techniek en technologie. Kun je beter autorijden als je precies weet hoe een verbrandingsmotor werkt?
    Kennis over techniek kan nooit kwaad, maar extrinsiek gemotiveerde programmeurs of codeslaven hebben niet per definitie mijn voorkeur als docent informatica. Met creativiteit, kritisch vermogen, metacognitie en het weten verwerven en beoordelen van wat belangrijk is op het geijkte moment, kom je verder.

    Like

  2. Het moet verder gaan dan alleen leren programmeren Computational Thinking daar gaat het om. Ik heb er een beetje onderzoek naar gedaan en contact gehad met Dr John Woolard van CAS en Southampton University. Het volgende is daaruit voortgekomen

    Computational Thinking is een manier van denken die veel verder gaat dan het maken van software en het toepassen daarvan in computersystemen. Computational Thinking biedt een raamwerk voor het beredeneren en oplossen van allerlei problemen . Deze wijze van denken wordt ondersteund door een substantiële hoeveelheid theoretische en praktische kennis en door technieken voor analyse, modelleren en probleemoplossing.
    Computer Science heeft vooral betrekking op hoe computers en computersystemen werken en hoe die ontworpen en geprogrammeerd zijn. Leerlingen die onderwezen worden in Computational Thinking verkrijgen inzicht in allerlei Computational Systemen ,of er nu wel of geen computers bij betrokken zijn. Computational Thinking heeft invloed op allerlei gebieden zoals bijvoorbeeld, chemie, taalkunde, psychologie, economie, wiskunde, astronomie. Het stelt de leerlingen in staat om problemen op te lossen, systemen te ontwerpen en de mogelijkheden en beperkingen van menselijke intelligentie en A.I. (Artificial Intelligence ) te leren kennen. Het is een kennisterrein waar alle leerlingen zich bewust van moeten zijn en waar ze enige vaardigheid in moeten hebben. Verder zullen leerlingen die in Computational Thinking zijn onderwezen beter in staat zijn om computational concepten te bedenken en begrijpen, dit maakt dat ze beter toegerust zijn om in de moderne huidige en toekomstige maatschappij te functioneren.
    Computer Science is een zeer praktisch gericht lesvak waarbinnen originaliteit en vindingrijkheid worden gestimuleerd. Van de leerlingen wordt verwacht dat ze de geleerde principes gebruiken om de systemen in hun leefwereld te begrijpen en om toepassingen te bedenken en te maken. De combinatie van aangeleerde principes, praktische toepassingen en gestimuleerde vindingrijkheid maakt van Computer Science een uitzonderlijk nuttig en zeer creatief lesvak.

    Onderwijs in het algemeen geeft leerlingen gereedschappen om zich in het dagelijkse leven staande te kunnen houden. Het bereidt jonge mensen voor op een wereld die nog niet bestaat en met technologie die nog niet uitgevonden is, dat stelt ons voor technische en ethische uitdagingen waar we ons nu nog niet van bewust kunnen zijn.
    Hierdoor moet het onderwijs ernaar streven om liever disciplines te onderwijzen met waarde voor de lange termijn dan vaardigheden met een korte houdbaarheid, hoewel de laatste zeker ook waardevol kunnen zijn.
    Een discipline wordt gekarakteriseerd door de volgende eigenschappen.:
    – Een kern met kennis, met daarin ideeën en concepten die ruim toepasbaar zijn en een raamwerk waarbinnen deze ideeën en concepten passen.
    – Een set technieken en methodes die toegepast worden om problemen op te lossen en om de kennis te verbreden en te verdiepen
    – Een manier van denken en werken die voor een andere blik op de wereld zorgt dan een andere discipline
    – Levensduuur : Hoewel het vak zich verder ontwikkelt zal de discipline niet gedateerd raken.
    – Onafhankelijk van technieken met korte houdbaarheid ( bijvoorbeeld wijzigingen in computer operatingsystem of hardware )
    Computer Science is een discipline met alle genoemde eigenschappen. Het omvat een kern met daarin theoretische computation kennis en breed toepasbare ideeeën (zoals het gebruik van relationele modellen om datastructuren te onderzoeken )
    Computer Science omvat technieken en methodes om problemen op te lossen en kennis te verdiepen en te verbreden (zoals abstractie en logica )
    Computer Science maakt gebruik van een unieke manier van denken en doen vergeleken met andere disciplines ( Computational Thinking )
    Computer Science heeft een lange levensduur ( de meeste van de ideeën en concepten van ca 20 jaar geleden zijn nog steeds valide )
    Computer Science principes kunnen onafhankelijk van een bepaalde technologie onderwezen worden.

    Computer Science is een discipline die een wezenlijk onderdeel uitmaakt van het Techniek veld.
    – Computer Science heeft zijn eigen theoretische fundament en omvat de toepassing van logica en redeneren
    – Computer Science maakt gebruik van een wetenschappelijke benadering van meten en experimenteren.
    – Computer Science omvat ontwerp, constructie en testen van allerlei voorwerpen en systemen die met een doel bedacht zijn.
    – Computer Science vereist kennis, waardering en toepassing van een breed techniekspectrum
    Samengevat, Computer Science voorziet leerlingen van kennis en inzicht in andere Techniek disciplines en Computer Science verschaffen leerlingen vaardigheden en kennis die toegepast kunnen worden om problemen in ander disciplines op te lossen.
    Hoewel onzichtbaar en niet beet te pakken behoren software systemen tot de grootste en meest complexe zaken die ooit door mensen bedacht en gemaakt zijn. Het huwelijk tussen hardware en software dat noodzakelijk is om computersystemen te bouwen heeft de complexiteit sterk verhoogd . Het web dat ontstaat door computersystemen met elkaar te verbinden verhoogd de complexiteit nog veel verder. Begrijpen en onder controle houden van dergelijke complexe systemen is de belangrijkste uitdaging binnen de Computer Science discipline. In een wereld waar computersystemen overal zijn binnengedrongen hebben mensen en gemeenschappen die hier het best voor opgeleid en uitgerust zijn een grote voorsprong.
    De combinatie van Computational Thinking, Computing principes en een Computational benadering van probleemoplossing is uitermate belangrijk. De mogelijkheid om deze combinatie in te zetten bij praktische problemen is en wordt essentieel om voor successen te zorgen in de wetenschap, engineering en bedrijfsleven in de 21ste eeuw.

    Computer Science en Informatie Technologie zijn complementair. Binnen Computer Science wordt de leerling onderwezen hoe een auteur te worden van Computational gereedschap (software) , IT onderwijst in hoe de gecreëerde gereedschappen te gebruiken.
    – Computer Science is een discipline die de wereld om ons heen onderzoekt en wil begrijpen zowel de natuurlijke als de kunstmatige wereld. Computer Science houdt zich vooral ,maar niet exclusief ,bezig met bestuderen , ontwerpen en implementatie van computersystemen en het begrijpen van de onderliggende principes.
    – Informatie Technologie houdt zich bezig met doelmatige toepassing van Computersystemen om bestaande problemen op te lossen, waaronder ook het identificeren van benodigdheden in het bedrijfsleven, de specificatie en installatie van hardware en software en de evaluatie van de bruikbaarheid.
    We willen dat onze kinderen een actieve rol spelen in de digitale wereld en deze ook begrijpen. We willen niet dat ze die wereld als een ondoorzichtige wereld zien met mysterieuze technologie die overal aanwezig is en die ze als passieve consumenten benaderen.
    Een goed begrip van Computational concepten zal de kinderen helpen om de systemen die ze gebruiken zo nuttig mogelijk te gebruiken en hoe ze problemen op kunnen lossen als er problemen zijn.
    Mensen die onderwezen zijn in Computational Thinking zijn in staat om na te denken over zaken die betrekking hebben op computation , zoals software patenten, identiteitsfraude. Genetica, electronisch stemmen.
    Iedere schoolverlater moet kennis genomen hebben van en in aanraking geweest zijn met Computing.

    Een aantal concepten binnen Computing komen regelmatig naar voren, het gaat daarbij om de navolgende.:
    – Programmeertalen, machines en computation
    – Data en data representatie
    – Communicatie en coördinatie
    – Abstractie en design
    Het heeft geen zin om deze onderwerpen afzonderlijk en op zichzelf staand te onderwijzen aan kinderen. Ze omvatten verbindende thema’s en kunnen door kinderen gemakkelijk herkend en gebruikt worden als ze aangeboden worden in concrete voorbeelden.

    Ik heb eea nog verder in detail uitgewerkt. Als daar belangstelling voor is, laat maar even weten.

    Liked by 1 persoon

  3. In mijn ogen zijn alle bovenstaande argumenten secundair. We moeten leerlingen niet leren programmeren om ze voor te bereiden op de arbeidsmarkt. We moeten leerlingen niet leren programmeren om ze beter problemen te leren oplossen. En we moeten leerlingen niet leren programmeren om ongelijkheden op te lossen. (Alhoewel al die doelen uiteraard nastrevenswaardig zijn.)

    We moeten leerlingen leren programmeren om dezelfde reden waarom we leerlingen natuurkunde, biologie, en scheikunde leren: de wereld om ons heen bestaat tegenwoordig voor een heel groot gedeelte uit software (en een beetje hardware), en het is belangrijk dat iedereen weet wat daar achter zit. Software en computers zijn geen magie, maar bestaan uit onderdelen die je kan begrijpen.

    Het verbrandingsmotor argument gaat niet op: we willen wel degelijk dat leerlingen weten dat er een motor in een auto zit, en dat die motor olie inneemt, en beweging oplevert. En we laten leerlingen met kleine motortjes spelen op school. Inderdaad hoef je niet alle details te weten, maar een kennismaking is noodzakelijk.

    Dus: we moeten alle leerlingen leren programmeren; we doen ze onrecht aan met ze die kennis te onthouden.

    Zie ook Simon Peyton Jones’ Ted talk over waarom iedereen moet leren programmeren: https://www.youtube.com/watch?v=Ia55clAtdMs

    Liked by 1 persoon

  4. Nog twee kleine dingen over dit stuk:

    – ik heb niet zo’n positieve connotatie bij het woord coderen; waarom niet programmeren gebruiken?

    – het argument dat robots leren programmeren lijkt sterk op het argument (vroeger) dat al het programmeren in India zou worden gedaan

    Programmeren betekent het oplossen van nieuwe problemen of het bereiken van nieuwe doelen. Als robots dat kunnen zullen we die robots moeten programmeren om nieuwe problemen op te lossen. Niets voor niets: problemen zullen nooit automatisch verdwijnen.

    Mag dit argument geschrapt worden uit vervolgstukken?

    Liked by 1 persoon

  5. Je normatieve stap is te groot, Johan. Veel leerlingen die met motortjes spelen of moeten spelen hebben geen idee hoe het werkt als ze hun rijbewijs halen. Je hoeft geen huis te kunnen bouwen om erin te wonen en geen drukker te worden om een boek te mogen en kunnen lezen, sterker nog; het lezen zelf en kritisch bewustzijn is vele malen belangrijker.

    Dat je selectief aandacht besteedt aan techniek, technologie en de invloed daarvan op ons zijn, lijkt me erg goed. Maar we moeten een helder onderscheid maken op basis van urgentie, causatie en volgordelijkheid. Dus als je onderwijs kunt verrijken met digitale verworvenheden is dat absoluut prima, maar een middel verplichtend tot doel verheffen is zelden constructief.

    Like

Trackbacks/Pingbacks

  1. Learning to Code vs. Coding to Learn (Michael T... - 6 mei 2016

    […] In deze blog, die ik vond via Larry Cuban, stelt Michael Trucano, een onderwijsexpert bij de Wereldbank, een paar belangrijke vragen over leren coderen en programmeren, die relevant zijn voor de Nederlandse situatie. Ook in Nederland horen we de roep om de 21ste-eeuwse vaardigheid coderen als verplicht vak op school in te voeren.  […]

    Like

Geef een reactie of deel je eigen ervaringen. Graag met je eigen naam ondertekenen, geen pseudoniemen. Anonieme reacties worden verwijderd.

Vul je gegevens in of klik op een icoon om in te loggen.

WordPress.com logo

Je reageert onder je WordPress.com account. Log uit / Bijwerken )

Twitter-afbeelding

Je reageert onder je Twitter account. Log uit / Bijwerken )

Facebook foto

Je reageert onder je Facebook account. Log uit / Bijwerken )

Google+ photo

Je reageert onder je Google+ account. Log uit / Bijwerken )

Verbinden met %s

%d bloggers op de volgende wijze: