Ontdek wat de geheime code is op de poster van de Marnix Academie! In deze les ontdekken de leerlingen hoe computers denken en hoe programmeurs werken. Ze maken kennis met de begrippen pixel, binaire code en algoritme en leren (de)coderen en debuggen als een programmeur. Lesdoelen De leerlingen kunnen uitleggen wat pixels, binaire codes en algoritmes zijn. De leerlingen kunnen een eenvoudig algoritme uitvoeren en ontwerpen. De leerlingen kunnen een binaire code omzetten in eenvoudige beelden en andersom. De leerlingen kunnen fouten die ze maken bij het (de)coderen opsporen en oplossen (debuggen). Aansluiting op leerplankader computational thinking SLO (Op 12-1-2018 ontleend aan http://curriculumvandetoekomst.slo.nl/21e-eeuwsevaardigheden/digitale-geletterdheid/computational-thinking/voorbeeldmatig-leerplankader) (Her)formuleren van een probleem zodat een computer het kan oplossen Gegevens analyseren: logisch ordenen en analyseren van gegevens, begrijpen van gegevens, vinden van patronen, trekken van conclusies Algoritmes en procedures: gebruiken van een serie geordende stappen om een probleem op te lossen of een bepaald doel te bereiken Eenvoudige algoritmes zelf ontwerpen en fouten hierin verbeteren (debuggen) Kenmerk Lb_codes2018 Blad 1/5
Voorbereidingen Knip de poster volgens de stippellijnen in vierkanten. Verdeel de klas in tweetallen en geef elk tweetal een vierkant (er zijn extra vierkanten voor tweetallen die eerder klaar zijn). Let op: u kunt de vierkanten in volgorde uitdelen, zodat na het decoderen meteen duidelijk wordt wat de zin is. Of deel de vierkanten door elkaar uit zodat de leerlingen moeten uitzoeken in welke volgorde de letters horen. Zorg eventueel voor computers of laptops (zie fase Codes kraken ). Kopieer bijgevoegd werkblad voor elk tweetal. Knip het blad in tweeën. Achtergrondinformatie Een pixel is een enkele gekleurde punt op het beeldscherm van een computer, tablet of telefoon. Veel pixels bij elkaar vormen samen een beeld. Alles wat op het scherm te zien is, is opgebouwd uit pixels. Denk aan foto s, maar ook aan letters en cijfers. Als we naar een simpele zwart-witte afbeelding kijken op een beeldscherm dan bestaat deze uit pixels die worden weergegeven met nullen en enen (binaire code). Computers denken en communiceren namelijk in 1 en 0: "aan" en "uit". Een 1 betekent dat het pixel zwart is, 0 betekent dat de pixel wit is. De code in deze lesbrief is op deze manier opgebouwd. In het echt zijn afbeeldingen veel complexer dan dit, bijvoorbeeld vanwege de kleuren. Een algoritme is een serie geordende instructies of regels die stap voor stap worden uitgevoerd om een probleem op te lossen of een doel te bereiken. In dit geval is de cijfercode die de leerlingen gebruikt hebben een voorbeeld van een algoritme. Fouten opsporen en oplossen bij het uitvoeren of ontwerpen van een algoritme noemen we debuggen. Door algoritmes (zo snel en zoveel mogelijk) te testen ontdekken programmeurs waar de fouten zitten. Blad 2/5
Lesbeschrijving Inleiding (5 minuten) Vertel de leerlingen dat de poster een geheime code bevat. Het is aan de leerlingen om deze te kraken. Dit doen ze door te denken als een computer. Als ze de code gekraakt hebben, gaan ze zelf een nieuwe code schrijven. Codes kraken (10 minuten) Maak tweetallen en geef elk tweetal een vierkant. Vraag de leerlingen of ze de code die hierop staat zo al kunnen kraken. Laat degenen die dat denken te kunnen aan de slag gaan. Leg aan de anderen uit dat een computer denkt in nullen en enen: 0 betekent uit, 1 betekent aan. Hoe zou dit bij deze code zichtbaar worden? Leg indien nodig uit dat de code aangeeft hoe vaak een hokje aan (ingekleurd) of uit (niet ingekleurd) is. Let op: het eerste nummer van de regel geeft altijd uit weer. Als daar een 0 staat betekent dat dus dat er geen hokjes uit staan (en dus aan). Zijn alle codes gekraakt? Welke letters zijn er nu gevormd? En welke zin kan daarmee gemaakt worden? Het goede antwoord is: Kom naar het ontdeklab! Variant: Micro:Bit Heeft u voldoende computers of laptops? Dan kunnen de leerlingen met de codes ook een Micro:Bit programmeren. De Micro:Bit is een minicomputer met een scherm van 5x5 LEDlampjes. De uitgedeelde vierkanten zijn ook opgebouwd uit 5x5 vakjes. Met de codes kunnen de leerlingen de LEDjes aan en uit zetten. Het leukste is als de leerlingen een echte Micro:Bit kunnen programmeren maar het kan ook virtueel. Dit werkt als volgt: Ga naar https://makecode.microbit.org Klik in de middenbalk op Basis en sleep de code Toon lichtjes naar rechts. Zet in Toon lichtjes de juiste LEDjes aan volgens de code. Klik op Invoer en kies een startsein, bv Wanneer knop A wordt ingedrukt. Sleep deze naar rechts en plak hem aan/boven Toon lichtjes. Test links of je virtuele Micro:Bit werkt door op de A-knop te klikken. Echt aan de slag met de Micro:Bit? Kom naar het Ontdeklab! Blad 3/5
Codes maken (10 minuten) Laat de leerlingen, nu ze de code begrijpen, zelf een tekening maken (van een letter, cijfer of plaatje) en deze omzetten in een code. Geef daarvoor elk tweetal het werkblad (in tweeën geknipt). Elke leerling maakt eerst een tekening en zet deze om in een code. Daarna vouwen ze de tekening naar achteren (of knippen hem af) en geven de code aan de ander. Die probeert de code te kraken en om te zetten in een tekening. Door de eerste tekening weer naar voren te vouwen kunnen ze zien of het klopt. Blijkt er een foutje in de code te zitten? Geen probleem. Laat ze de code aanpassen. Fouten opsporen en oplossen heet debuggen en gebeurt heel vaak bij programmeren. Fouten maken hoort erbij! Afsluiting (5 minuten) Leg de kinderen uit dat ze bezig zijn geweest met programmeren. Leg uit dat alle beelden op een beeldscherm zijn opgebouwd uit pixels. Een pixel kan aan of uit staan (binaire code). De code die ze gebruikt hebben om aan te geven of een hokje aan of uit staat is een voorbeeld van een algoritme (zie achtergrondinformatie). Deze lesbrief is geïnspireerd op: http://www.csunplugged.nl & Computer science unplugged, Tim Bell, Ian H. Witten en Mike Fellows, 2010, p. 18-26. Blad 4/5
Maak je eigen code! Leerling 1 Maak links een tekening. Zet deze om in een code. Vouw je tekening naar achter. Geef dan je code aan een andere leerling. Die zet de code om in een tekening rechts. Klaar? Vouw de linker tekening weer naar voren om te zien of het klopt. Vouw het linkerdeel naar achteren. Tekening Code Tekening Kniplijn Leerling 2 Maak links een tekening. Zet deze om in een code. Vouw je tekening naar achter. Geef dan je code aan een andere leerling. Die zet de code om in een tekening rechts. Klaar? Vouw de linker tekening weer naar voren om te zien of het klopt. Vouw het linkerdeel naar achteren. Tekening Code Tekening Blad 5/5