Programmeer je bewegingen
Spelenderwijs programmeren: Schrijf met behulp van een pseudocode een programma voor een dansbeweging.
Overzicht
- Dit is een les voor spelenderwijs programmeren die is ontwikkeld voor hybride leren. Je hebt voor deze les geen LEGO® Education SPIKE™ Prime set, LEGO stenen of software nodig.
- In deze les schrijven de leerlingen een pseudocode die beschrijft hoe je een bepaalde dansbeweging moet uitvoeren. Ze wisselen hun pseudocode uit met een klasgenoot.
Je kunt deze les geven:
- Als inleidende les bij de module Life hacks
- Voor of na de les Breakdance om de leerlingen zo kennis te laten maken of te laten oefenen met het schrijven van een pseudocode
- Voor de les De coach om de basis te leggen voor het open project aan het eind van de module waarmee de leerervaring van de leerlingen kan worden uitgebreid
- In het gedeelte Bijkomende hulpmiddelen van dit lesplan vind je een lespresentatie. Gebruik deze presentatie als leidraad en ondersteuning wanneer de leerlingen met de 5E’s aan de slag gaan.
Programmeerconcepten
- Algoritme: Een reeks stapsgewijze instructies voor het voltooien van een taak.
- Bug: Een programmeerfout. Debuggen is het verhelpen van fouten.
- Ontleden: Een code opsplitsen in kleinere delen of problemen.
- Pseudocode: Een overzicht met de stappen van een algoritme dat wordt uitgeschreven voordat het op een computer wordt geprogrammeerd. Aan de hand van een pseudocode kunnen programmeurs problemen (bugs) eenvoudiger vaststellen en verhelpen, en programmeerstappen ontleden.
Activeren
(10 minuten)
Breng een kort gesprek op gang om erachter te komen wat je leerlingen al weten over programmeren.
- Tijdens dit gesprek kun je het met je leerlingen over code en programmeren hebben, zodat iedereen weet waar het over gaat.
Stel vragen als:
- Wat is een code? (Mogelijke antwoorden: iets dat wordt gebruikt om een machine of robot te vertellen een bepaalde taak uit te voeren, of iets leuks of creatiefs, zoals het programmeren van een spel op de computer.)
- Ken je andere woorden die met programmeren te maken hebben? (Leerlingen die al ervaring hebben met programmeren, zullen misschien woorden opperen als: algoritme, pseudocode of bugs. Laat deze leerlingen hun kennis met klasgenoten delen.)
- Hoe ziet een code eruit? (Mogelijke antwoorden: blokken, tekst, getallen)
- Leg uit dat een code een reeks instructies is.
Laat de leerlingen de eerste pagina van Activeren in de lespresentatie zien.
- Op deze pagina staat een voorbeeld van een handklapspelletje.
Ga verder met het gesprek door vragen te stellen als:
- Wat zie je op de afbeelding? (Mogelijke antwoorden: ze spelen een handklapspelletje.)
- Welke handklapspelletjes ken je? (Laat een of twee leerlingen deze vraag beantwoorden.)
- Hoe zou je iemand anders uitleggen hoe je dat spelletje moet spelen? (Laat een of twee leerlingen hun ideeën delen.)
- Hoe zou de ideale reeks instructies eruit zien? (Moedig de leerlingen aan te bepalen waaraan de ideale reeks instructies moet voldoen. Bijvoorbeeld: duidelijk, overzichtelijk en in de goede volgorde.)
- Vertel de leerlingen dat ze, doordat ze instructies hebben gegeven over hoe je een bepaald spel speelt, hebben geoefend met het maken van een algoritme. Leg uit dat een algoritme een reeks stapsgewijze instructies is voor het voltooien van een taak.
Laat de leerlingen de tweede pagina van Activeren in de lespresentatie zien.
- Op deze pagina staat een voorbeeld van een uitgeschreven reeks instructies, oftewel een code. Choreografen maken tekeningen om danspasjes uit te werken, coaches maken gebruik van schetsen en woorden om speltactieken op te schrijven en bladmuziek bevat muzieknoten zodat muzikanten weten wat en hoe ze moeten spelen.
Breng het gesprek weer op gang aan de hand van de onderstaande vragen, zodat de leerlingen het verband zien tussen echte ‘code’ die niet op een computer staat en de pseudocode die ze tijdens deze les zullen schrijven:
- Wat valt je op aan de tekening van de choreograaf? (Mogelijke antwoorden: de vier vakken staan voor de volgorde van de bewegingen en de pijl geeft aan hoe je moet bewegen. Stap 1 en 4 zijn hetzelfde.)
- Wat valt je op aan de schets van de coach? (Mogelijke antwoorden: de X’en en cirkels staan voor spelers en de pijlen geven bewegingen aan)
- Wat valt je op aan de muzieknoten? (Mogelijke antwoorden: het nummer is ‘Twinkle Twinkle Kleine Ster’. De rondjes zijn hele noten)
- Wat hebben deze instructies/algoritmes met elkaar gemeen? (Laat de leerlingen hun eerder opgestelde criteria voor de ideale reeks instructies aanvullen.)
- Waarom zijn deze uitgeschreven instructies nuttig voor een choreograaf, coach en muzikant? (Laat de leerlingen er zelf achter komen dat deze instructies hen helpen tijdens de voorbereiding en dat ze hierdoor eventuele fouten kunnen ontdekken.)
Laat de leerlingen de derde pagina van Activeren in de lespresentatie zien.
- Op deze pagina staat een voorbeeld van een SPIKE Prime code uit de les Breakdance, die bij de module Life hacks hoort. Deze programmeerstack drijft de SPIKE Prime breakdancer aan.
Speel de video bovenaan de pagina van het lesplan af, zodat de leerlingen de breakdancerobot in actie kunnen zien. Breng het gesprek vervolgens weer op gang met discussiepunten als:
- Dit is de programmeerstack voor de breakdancerobot.
- Bekijk de code. Wat gaat de robot doen? (De stappen zijn hieronder uitgeschreven als pseudocode. Je kunt een speels element aan de les toevoegen door de leerlingen de bewegingen van de robot te laten nadoen.)
- Hoe zou je deze dansbeweging noemen? (Moedig de leerlingen aan om zelf leuke namen voor de dansbeweging te bedenken en om alvast te oefenen met het bedenken van een naam voor hun eigen dansbeweging, die ze later in de les als pseudocode zullen gaan schrijven.)
- Hoe zou je deze code als algoritme op papier uitwerken? (Laat een of twee leerlingen vertellen hoe ze de code met woorden of afbeeldingen zouden uitwerken.)
- Vertel de leerlingen dat ze, doordat ze de code in hun eigen woorden hebben uitgelegd, hebben geoefend met het maken van een algoritme en het schrijven van een pseudocode.
Voorbeeldoplossing pseudocode
Er zijn verschillende manieren om deze programmeerstack in woorden uit te leggen. Dit is een van de mogelijkheden:
- Het programma krijgt een Go!
- Motor D en F draaien die kant op en maken één rotatie
- De motoren wachten 1 seconde
- De motoren herhalen de bewegingen tien keer
Hybride leertips voor de fase Activeren
Synchroon
- Breng tijdens de les een virtueel klassikaal gesprek op gang. Zorg ervoor dat je zelf zo min mogelijk aan het woord bent. Moedig de leerlingen aan om zelf vragen te stellen en antwoorden te geven. Gebruik een online stemtool of chatfunctie om iedereen bij het gesprek te betrekken.
Asynchroon
- Laat de pagina’s in de lespresentatie zien die bij Activeren horen en bepaal of de leerlingen hun antwoorden alleen met jou moeten delen of op een discussieforum voor de hele klas moeten zetten. Een online discussieforum is ideaal om klasgenoten met elkaar in discussie te laten gaan zonder dat iedereen op hetzelfde moment aanwezig hoeft te zijn.
Onderzoeken
(15 minuten)
Laat de leerlingen de pagina Onderzoeken in de lespresentatie bekijken. Deze helpt hen deze uitdaging te voltooien.
Je kunt ze aan de hand van onderstaande stappen op weg helpen:
Stap 1: Laat de leerlingen allemaal een dansbeweging bedenken die ze iemand anders zouden kunnen leren.
Stap 2: Laat de leerlingen opschrijven welke stappen je moet uitvoeren om de dansbeweging te maken. Leg uit dat dit hun pseudocode wordt.
Stap 3: Verdeel de leerlingen in tweetallen. Leg uit dat een van de twee zijn of haar pseudocode met de ander moet delen. Deze laatste moet de stappen van de pseudocode vervolgens nauwkeurig uitvoeren. Laat de leerlingen vervolgens van rol wisselen.
Je kunt hier ook een klassenactiviteit van maken. Laat alle leerlingen hun eigen pseudocode schrijven voor het maken van een dansbeweging en laat ze hun pseudocode vervolgens om de beurt met hun klasgenoten delen. De andere leerlingen moeten de dansbeweging proberen uit te voeren.
Hybride leertips voor de fase Onderzoeken
Maak hier een groepsactiviteit van. Leerlingen vinden het geweldig om samen met klasgenoten te mogen werken.
Synchroon
- Als de leerlingen de les online volgen, kun je er een groepsactiviteit van maken waarbij één leerling zijn pseudocode met de rest van de klas deelt. Je kunt de leerlingen ook opsplitsen in kleinere groepjes en ze in aparte break-outrooms hun pseudocode met een klasgenoot of in kleine groepjes laten delen.
Asynchroon
- Moedig de leerlingen aan om met de hulp van een gezinslid thuis een eigen werkplek te creëren waar ze de activiteiten kunnen uitvoeren. Een goed verlicht, vlak en netjes opgeruimd oppervlak is de ideale werkplek. Houd er rekening mee dat iedere leerling een andere thuissituatie heeft.
Uitleggen
(10 minuten)
- Laat de leerlingen, zodra ze de programmeeruitdaging hebben voltooid, hun ervaring delen met een klasgenoot.
- Op de pagina Uitleggen in de lespresentatie staan voorbeeldzinnen die de leerlingen kunnen gebruiken wanneer ze feedback geven of willen krijgen.
- Herinner de leerlingen eraan dat ze elkaar aankijken, op een vriendelijke toon praten en specifieke voorbeelden geven wanneer ze feedback geven. Moedig ze aan om na te denken over manieren waarop ze hun werk kunnen verbeteren aan de hand van de feedback die ze hebben ontvangen.
Deze voorbeeldzinnen kun je gebruiken als je feedback geeft:
- Ik ben echt onder de indruk van...
- Ik wil graag meer weten over...
- Ik had hetzelfde idee...
- Ik had een ander idee...
- Ik stel voor...
Deze voorbeeldzinnen kun je gebruiken als je feedback wilt krijgen:
- Welke instructies waren duidelijk?
- Wat kan ik nog verbeteren?
- Welke problemen kunnen worden verholpen?
Nadat de leerlingen elkaar feedback hebben gegeven, vraag je ze om uit te leggen welke raakvlakken er zijn tussen deze activiteit en programmeren.
Stel vragen als:
- Op welk vlak lijkt deze activiteit op programmeren? (Mogelijke antwoorden: we schrijven instructies op die iemand anders moet volgen, net zoals een code die de computer moet volgen.)
- Waarom is het slim om een pseudocode te schrijven? (Mogelijke antwoorden: zo kun je de code controleren en eventuele fouten verhelpen voordat je hem op je computer invoert)
- Waar moet je bij het schrijven van een pseudocode goed op letten? (Mogelijke antwoorden: de details, de stappen moeten in de juiste volgorde staan)
Hybride leertips voor de fase Uitleggen
Synchroon
- Als de leerlingen de les online volgen, kun je samen met hen de voorbeeldzinnen voor feedback op de pagina Uitleggen in de lespresentatie bekijken en de leerlingen in kleine groepjes opsplitsen zodat ze elkaar in break-outrooms feedback kunnen geven.
- Neem een kijkje in de verschillende break-outrooms en laat de leerlingen een voorbeeld van de gegeven feedback delen zodat je kunt controleren of ze alles goed hebben begrepen.
- Beantwoord eventuele vragen en ga direct in op misvattingen om de leerlingen meer inzicht in het huidige concept te geven.
Asynchroon
- Moedig de leerlingen aan om hun mening over de ontvangen feedback met de klas te delen of er een opmerking over te plaatsen in de groepschat.
Uitbreiden
(5 minuten)
- Laat de leerlingen manieren bedenken waarop ze hun pseudocode zouden kunnen verbeteren of laat ze nog wat meer met deze activiteit oefenen door ze andere bewegingen te laten programmeren (zoals hun ochtendroutine, een sportwedstrijd, een recept)
Stel vragen als:
- Hoe zou je je pseudocode verbeteren?
- Wat zou je anders doen als je deze activiteit nog een keer zou uitvoeren?
- Voor welke andere activiteiten zou je een pseudocode kunnen schrijven?
Als er voldoende tijd is, kun je de pagina Uitbreiden in de lespresentatie laten zien. Op deze pagina staan LEGO Education SPIKE app programmeerblokken.
Breng het gesprek weer op gang met deze discussiepunten:
- Waar worden deze programmeerblokken voor gebruikt? (Mogelijke antwoorden: om dezelfde actie tien keer te herhalen; om één seconde te wachten voordat de actie wordt uitgevoerd; als er een bepaalde actie wordt uitgevoerd, wordt er ook een andere actie uitgevoerd)
- Laat de leerlingen een voorbeeld geven van een herhaling, een wachten op- en een als-dan-opdracht in de code van hun dansbewegingen.
Hybride leertips voor de fase Uitbreiden
Geef de leerlingen de mogelijkheid om hun werk te delen en te zien wat klasgenoten hebben gedaan.
Synchroon
- Plan een online klassikaal moment in waarop de leerlingen elkaar kunnen vertellen hoe ze hun uitvindingen zouden kunnen verbeteren.
Asynchroon
- Maak een virtuele galerij zodat de leerlingen elkaars werk kunnen bekijken. Moedig ze aan om foto’s en filmpjes van hun werk te plaatsen en ook de creaties van hun klasgenoten te bekijken.
Evalueren
(5 minuten)
- Laat iedere leerling een voorbeeld geven van de stapsgewijze instructies in hun pseudocode (bijvoorbeeld het algoritme) en laat ze ook een voorbeeld geven van een probleem in hun pseudocode dat ze hebben verholpen.
Laat de leerlingen hun eigen prestaties beoordelen. Gebruik onderstaande suggesties of bedenk zelf een manier om de eigen prestaties te beoordelen.
- Steek één hand in de lucht als je nog wat hulp nodig hebt bij het schrijven van een pseudocode en het oplossen van problemen in een programma.
- Steek twee handen in de lucht als je kunt uitleggen hoe je een pseudocode schrijft en fouten in een programma oplost.
- Zwaai met je handen door de lucht als je anderen kunt uitleggen hoe je een pseudocode schrijft en fouten in een programma oplost.
Hybride leertips voor de fase Evalueren
Je kunt op veel verschillende manieren evalueren: een schriftelijke opdracht, een opgenomen of livepresentatie of een tekening waarmee de leerlingen laten zien hoe goed ze de opdracht hebben begrepen.
Synchroon
- Breng tijdens de les een virtueel klassikaal gesprek op gang.
Asynchroon
- Laat de leerlingen hun eigen werk evalueren door ze een schriftelijke opdracht, een presentatie of een tekening te laten plaatsen waarmee ze laten zien hoe goed ze de opdracht hebben begrepen.
Ondersteuning voor de leraar
De leerlingen:
- Maken en volgen een reeks stapsgewijze instructies van een pseudocode
- Stellen problemen in hun pseudocode vast, splitsen ze in kleinere delen op en verhelpen ze
- Lespresentatie (zie Bijkomende hulpmiddelen)
- Papier (2 vellen per leerling)
- Schrijf- en tekenmateriaal (pennen, potloden, markeerstiften)