Kinderen leren programmeren – Carrière én toffe levensles

      Reacties uitgeschakeld voor Kinderen leren programmeren – Carrière én toffe levensles

Kinderen leren programmeren

Kinderen zijn heel handig met nieuwe technologie. Ze leren snel nieuwe apparaten te gebruiken. Betekent dat ook dat kinderen weten hoe die technologie werkt? Is het nodig om ze vroeg te leren programmeren? Leren programmeren kan een leuke levensles zijn en niet per se een toekomstige carrièrekeuze.

In de jaren ’80 betekende het bezit van een computer meestal dat je een hobbyist was. Dat je bereid was om niet alleen andermans software te gebruiken, maar ook om zelf te experimenteren met programmeren. Wie in dat tijdperk opgroeide en bijvoorbeeld met BASIC of PASCAL leerde werken, leerde tegelijk een aantal waardevolle lessen. Lessen die een kind van nu niet meer automatisch meekrijgt door met een iPad te spelen.

Volgens mediacoach Gemma Steeman is het nog steeds zo dat kinderen veel sneller leren omgaan met computers dan volwassenen. “Ze leren door te experimenteren. Ze zijn niet bang om iets fout te doen en ontdekken daardoor heel snel de mogelijkheden die ze graag gebruiken.”

Dat betekent in de praktijk dat ze sneller dan hun ouders weten hoe ze apps moeten downloaden en opstarten. En natuurlijk vooral hoe ze al die spellen kunnen spelen. Toch is dit natuurlijk wat anders dan ‘weten hoe een computer werkt’.

Kinderen leren programmeren - Carrière én toffe levensles 1
Leren programmeren is een belangrijk onderdeel van ‘mediawijsheid’: de verzameling vaardigheden voor kinderen en volwassenen die helpen om media te gebruiken en te duiden.

Consequenties

Kinderen leren programmeren - Carrière én toffe levensles gemmaSteeman: “Kinderen weten ook niet hoe ze computers slim in kunnen zetten, bijvoorbeeld om taken beter of efficiënter uit te voeren. Ook weten ze niet wat de consequenties zijn van hun gedrag online. Dat komt ook door de ontwikkeling van de hersenen: ze zijn gewoon niet in staat om dat allemaal te overzien.” Want voor een kind is het gewoon niet te bevatten dat wat je op internet zet, er ook nooit meer van af kan. En vooral dat anderen (vreemden) het kunnen zien. Voor een kind is het begrip data volkomen abstract. Om nog maar te zwijgen van ‘big data’ en wat bedrijven allemaal kunnen door gegevens te verzamelen en te analyseren.

Belangrijk

Volgens Steeman is het leren programmeren geen manier om kinderen op weg te helpen in een carrière als programmeur. “Het schrijven van programma’s is iets wat steeds meer in lagelonenlanden gedaan wordt. Wie later een baan krijgt in de IT, wordt hoogstwaarschijnlijk geen programmeur.” Maar we leven in een wereld die volledig doordrongen is door digitale media. Je moet mee kunnen komen en hoe meer je begrijpt van de processen die al die media mogelijk maken, hoe beter.

Ook zijn er heel wat (toekomstige) banen waarbij kennis van programmeren nuttig is, zonder dat je daarvoor programmeur hoeft te zijn. Want hoewel het daadwerkelijke programmeerwerk van grote programma’s en games vaak wordt uitbesteed, gebeurt het plannen en het denkwerk van de ontwikkeling wel degelijk ook in ons land. Wie ergens werkt waar computerprogramma’s gebruikt of gemaakt worden, heeft dus erg veel aan kennis over de werking van die programma’s. Steeman zelf geeft aan dat ze erg veel heeft aan die kennis bij haar werk voor de website MediaWijsheid.nl. “Ik kan niet programmeren, maar wel computercode lezen en dat is bij het werken aan websites een groot voordeel.”

Kinderen leren programmeren - Carrière én toffe levensles 2
Het kunnen lezen van computercode helpt zeker als je websites ontwerpt of bijhoudt.

Het is gewoon leuk!

Veel tv-series en films leren ons dat programmeren betekent: schermen vol onbegrijpelijke wiskundig ogende formules. Maar dat is een vooroordeel. Programmeren is het oplossen van een puzzel. En dankzij allerlei leuke, grafische lesmethoden, is het voor kinderen net zo goed een spel als een les.

Hour of Code bijvoorbeeld is een wereldwijde introductie voor kinderen om te leren programmeren met ‘Hopscotch’. In een uur spelen leren ze hoe ze niet alleen computers kunnen gebruiken, maar vooral hoe ze deze naar hun hand kunnen zetten. Door bouwsteentjes te verslepen, laten ze bekende figuren zoals Anna en Elsa uit ‘Frozen’ of de bekende Angry Birds bewegen. Hopscotch is dé taal voor kinderen op dit moment, die juist door zijn directe grafische feedback meteen laat zien wat een commando of functie doet.

Voor de kinderen die hier echt lol in hebben, zijn er allerlei vervolgprojecten. Het hoeft niet op te houden bij één uur.

Kinderen leren programmeren - Carrière én toffe levensles 3
Grote studio’s zoals Disney lenen bekende figuren aan deze educatieve site.

Levensles

Maar de belangrijkste reden om kinderen (eenvoudige) programma’s te laten maken, is dat het een manier van denken aanleert die ze de rest van hun leven kunnen gebruiken. Programmeren is namelijk vooral een levensles: om een computerprogramma te maken, leer je om een probleem op een gestructureerde manier op te lossen. Je begint met een formuleren van het probleem en om dat probleem op te lossen, moet je het in stukjes ophakken. Als je ‘probleem’ bijvoorbeeld is: een eenvoudig huisje tekenen op het scherm, dan kun je dit opdelen in delen: hoe teken je een vierkant? Een rechthoek? Een driehoek? Hoe zorg ik ervoor dat de driehoek op het vierkant staat en dat de rechthoek op de plaats komt waar de deur moet zijn?

Deze manier van problemen oplossen overstijgt het schrijven van computerprogramma’s. Wie een feest organiseert en een groep moet aansturen, moet ook leren om het geheel te overzien en dat in subtaken te verdelen. En het is juist deze manier van analytisch denken die kinderen op een speelse en natuurlijke manier kunnen leren door de computer naar hun hand te zetten.

Wanneer

Volgens Steeman kunnen kinderen vanaf een jaar of zes al heel wat leren, dankzij speciale programma’s. Deze zijn er op gericht om kinderen op een visuele en aantrekkelijke manier te leren om eenvoudige programma’s te maken. De kinderen zullen dit niet als ‘programmeren’ ervaren, maar als een spel waarbij ze de computer opdrachten geven die direct resultaat op het scherm toveren. Veel van dit soort programma’s hebben een duidelijke relatie met de wat oudere programmeertaal LOGO (zie kader). Voor de iPad is er bijvoorbeeld de app Daisy the Dinosaur. Met deze app leren kinderen kleine programma’s schrijven die het figuurtje Daisy over het scherm laten bewegen. Helaas is de Daisy-app wel Engelstalig.

Op de website van Kennisnet.nl vinden we Ko de Kraker. Net als bij Daisy geeft het kind opdrachten aan het vogeltje Ko, die dankzij correcte programma’s zijn geliefde nootjes kan eten.

Kinderen leren programmeren - Carrière én toffe levensles 5
Ko de Kraker is een vogeltje dat nootjes wil eten. Kinderen schrijven programma’s om hem te helpen.

LOGO

Een aantal computerveteranen zal vast even opveren bij het lezen van die naam. LOGO, ontwikkeld in de jaren zestig door Seymour Papert. LOGO werd speciaal voor kinderen bedacht. Het belangrijkste kenmerk is de schildpad-cursor die met eenvoudige commando’s is aan te sturen. Commando’s geven direct resultaat. ‘FORWARD 100’ zorgt bijvoorbeeld voor een lijn van 100 pixels in de kijkrichting van de schildpad.

Daarnaast is het een krachtige taal waarbij de programmeur feitelijk zijn eigen commando’s maakt die steeds complexere taken uitvoeren.

Het volgende simpele programma laat de schildpad een cirkel tekenen:

TO CIRCLE

REPEAT 360 [FORWARD 1 RIGHT 1]

END

Vanaf dat moment ‘kent’ de computer het nieuwe commando ‘circle’ dat ook weer in een nieuw programma te gebruiken is. Heel krachtig en heel overzichtelijk.

Kinderen leren programmeren - Carrière én toffe levensles 6
Met MSWLogo (gratis) kun je al snel mooie ‘turtle graphics’ maken.

Simpel

Daarnaast is op dit moment Scratch heel populair: op de site kunnen kinderen programmeren met bouwsteentjes die ze in een venster slepen. Ook hier gaat het om grafische feedback: animaties en simpele spellen.

Toch is het een misverstand om te denken dat kinderen (zeker als ze een jaar of 10, 11 zijn) heel simpele talen moeten leren. Kijk maar eens wat kinderen inmiddels allemaal aan complexe dingen kunnen bouwen in het spel Minecraft. Ze zijn zeker in staat om complexere talen onder de knie te krijgen. We noemden LOGO al. Ook Microsofts Small Basic richt zich volledig op kinderen. Maar ook een ‘volwassen’ taal is een leuke uitdaging.

Kinderen leren programmeren - Carrière én toffe levensles 7
Small Basic is een versimpelde, gratis versie van BASIC, speciaal voor kinderen.

Python

Op deze site staat een compleet lesprogramma voor de basisschool, waarin kinderen de taal Python leren. Deze scripttaal (ontwikkeld door Nederlander Guido van Rossum), is eenvoudig te leren en wordt ook in het echt gebruikt. Een perfecte brug dus tussen het klaslokaal en digitale wereld, maar uiteraard niet geschikt voor de allerjongsten.

Dit soort lespakketten zijn minder geschikt voor thuis. Maar volgens Steeman is het een goed idee als ouders samen met school en buitenschoolse opvang in gesprek gaan over programmeren. “Ik ben er niet voor om het verplicht in lesprogramma’s op te nemen. Het is echter wel belangrijk dat elk kind er even mee in aanraking komt en als hij of zij dat wil er ook meer mee kan doen. Ouders en scholen kunnen elkaar daar denk ik goed in ondersteunen.”

Direct effect

Hoewel Python niet meteen allerlei grafisch vuurwerk produceert, heeft het als groot voordeel dat het een geïnterpreteerde taal is. Dat wil zeggen dat je het resultaat meteen kan zien.

print(“Hallo wereld”)

>> Hallo wereld

print(3*2)

>> 6

print(“3*2”)

>> 3*2

Dit is natuurlijk in een leeromgeving heel belangrijk omdat de leerling meteen het resultaat van zijn instructies ziet. Dat is ook de reden dat talen als C++ niet kindvriendelijk zijn. Afgezien van de complexiteit is het ook lastig om programma’s steeds te moeten compileren voor je kan zien wat ze doen.

Amsterdam investeert in jonge programmeurs

Als onderdeel van een plan van de gemeente Amsterdam om in de toekomst te behoren tot de top 3 van Europese steden met startups, wil de gemeente investeren in het opleiden van jongeren in deze sector. Daartoe zouden er ‘coding academies’ moeten worden opgericht waar jongeren en zzp-ers leren coderen en programmeren. Verder zou de gemeente wel op zoek zijn om initiatieven te ondersteunen die erop gericht zijn dat coderen op basisscholen, middelbare scholen en universiteiten even standaard worden als rekenen en taal.

Verder lezen?

Daisy the Dinosaur (iOS)

Ko de Kraker

Microsoft Small Basic

Hour of Code

Microsoft Windows Logo (gratis Windows-versie van LOGO)

ACSLogo (gratis OS X-versie van LOGO)

Hopscotch (iOS)

Kodable (iOS)

Robomind