Raspberry Pi HANDBOEK
De enige gids die je nodig hebt om meer uit de mini-pc te halen
164
PAGINA’S VOL • hardware • projecten • smart-home
€ 12,99
AP
HET ULTIEME RASPBERRY PI HANDBOEK DE ENIGE GIDS DIE JE NODIG HEBT OM MEER UIT DE MINI-PC TE HALEN
HET ULTIEME
Overzicht van alle modellen Raspberry Pi
HET ULTIEME
Raspberry Pi HANDBOEK
Het is tijd om meer te halen uit je geweldige Raspberry Pi – we zullen je gids zijn in een wereld vol leuke projecten en met boeiende leermomenten
De basis
Hardware
We zorgen dat je binnen de kortste keren een werkende Pi hebt, als dat nog niet zo is
Je apps moeten ergens mee werken: hardware om je vingers bij af te likken
8
34
10 12 16 18 20 22 24 28
De geschiedenis van de Pi: hoe het allemaal begon Installeer het besturingssystem Raspbian op de sd-kaart De eerste instellingen met behulp van de set-upwizard Hoe je programma’s installeert en ook weer verwijderd Installeer andere besturingssystemen met NOOBS De grote Fedora en Ubuntu op de kleine Pi installeren Wat je naast een Pi nog aan randapparatuur nodig hebt Leer toveren met de commandline-tools Bescherm je kwetsbare sd-kaart voor een langer leven
35 36 37 38 39 40 42 50 51
4
Raspberry Pi 3B+ en 3A+ de laatste telgen van de familie Raspberry Pi 3 Ietsjes minder, maar net zo fijn Raspberry Pi 2 Zonder wifi en bluetooth Raspberry Pi B+ De Pi 1 revamped met 40 pinnen Raspberry Pi Zero W Een kleintje met netwerkaspiraties Rasperry Pi Zero Gewoon een kleine Pi Pi Zero (W) HAT’s: uitbreidingen voor je Pi Zero Hot HAT’s: de belangrijkste add-on-uitbreidingen Raspberry Pi 7”-touchscreen om een Pi-tablet te maken Pi-top: maak van je Raspberry Pi een laptop
Projecten
Programmeren Troubleshooting
Duik meteen in de Piprojecten om ideeĂŤn op te doen voor leuke dingen
Om alles uit je Pi te halen kun je niet om programmeren heen: een overzicht
Natuurlijk kan er ook een keer iets fout gaan, maar dan is de oplossing snel nabij
54
128
148
64 74 86 90 94 98 100 104 108 112 116 118 120 122
Negen van de beste projecten om meer met je Pi te doen Gebruik de Raspberry Pi voor slimme smart-home projecten Met een Super-Pi zijn andere apparaten overbodig Rekenen op de Pi met Mathematica Maak van je Pi een printserver met behulp van CUPS Ontvang berichten van je Pi via WhatsApp Laat je Pi’s met elkaar communiceren via MQTT Maak van je Pi een mediacenter met Kodi Draai WordPress op je eigen Pi-webserver Speel oude consolegames met RetroPie en een gamecontroller Je eigen cloud op een Pi-NAS met OpenMediaVault Experimenteer met de Sense HAT Maak een luchtvochtigheidsmeter De Pi als Twitter-bot Bitcoin-kluis voor je digitale geld
138 144
Programmeer-academie: de basisprincipes met Python en PHP Scripting-talen: overzicht van de beschikbare talen Build je eigen distro: maak je eigen Linux-distributie
150
Wat te doen als de Raspberry Pi niet wil opstarten Oplossingen voor de 20 meest voorkomende problemen
5
Het begin: hoe Voordat je dieper dit wondertje van de techniek induikt, krijg je eerst wat achtergrondinformatie over de Raspberry Pi voorwaarden verbieden om hun programmacode te veranderen. Ook al heb je dik voor je besturingssysteem betaald, je mag het niet openbreken om te zien hoe het in elkaar zit. Die twee factoren zorgen ervoor dat de meeste mensen geen idee hebben wat er in een computer gebeurt, ondanks dat die overal om ons heen zijn.
Geboorte van de Raspberry Pi
N
ormaal gesproken denk je bij een computer aan een gesloten kast. Je klikt een menu open, activeert een pictogram met de muis en het programma doet wat je het opdraagt. Of in ieder geval wat de maker ervan wil dat het doet. Voor de meeste computergebruikers betekent dit dat ze software van anderen gebruiken en niet leren om zelf oplossingen voor problemen te bedenken. Natuurlijk hebben de moderne grafische interfaces de computers voor een groot publiek toegankelijk gemaakt, maar het is zo dat die gebruikers maar een fractie gebruiken van de mogelijkheden die hun computer biedt. Een andere factor die mensen ervan weerhoudt om onder de motorkap van hun computer te kijken en te ontdekken hoe die eigenlijk werkt, is dat het feit dat Windows en macOS je in hun licentie-
Op dat moment verscheen onze held op het toneel: Eben Upton. Hij was hoofd opleiding van de afdeling computerwetenschappen van St John’s College in Cambridge en ook medeverantwoordelijk voor het toelatingsbeleid. In die jaren viel hem het dalende kennisniveau van de nieuwe lichtingen studenten op. Hoe meer tijd universiteiten verspillen met het op niveau brengen van de basiskennis van studenten, des te minder tijd er over blijft voor het echte coole werk. Een lager kennisniveau van afgestudeerde studenten betekent automatisch ook een lager niveau van nieuwe werknemers in de computerindustrie. En dat betekent weer dat werkgevers meer tijd en moeite moeten stoppen in het vinden van geschikte mensen voor hun vacatures. Daarom besloten Eben Upton, Robert Mullins en andere gelijkgestemden om dat probleem aan te pakken door een computer te bedenken die goedkoop, ‘hackbaar’ en vrij van rechten is. Het apparaat moest alles kunnen wat een normale desktop-pc kan, maar dan voor een fractie van de prijs. Hun geesteskind was natuurlijk de Raspberry Pi. De Raspberry Pi was vanaf het moment dat hij in februari 2012 uitgebracht werd een enorme hit. De eerste drie jaar werden er al vijf miljoen van verkocht en in 2018 waren dat er al 20 miljoen!.
De BBC Micro De Raspberry Pi is niet de eerste computer die in Engeland gelanceerd werd om het computeronderwijs te stimuleren. In 1981 bracht Acorn Computers in samenwerking met het BBC Computer Literacy Project de BBC Micro op de markt. Die was beschikbaar in twee versies: Model A en Model B. Hij was ontworpen om kinderen te leren computers te gebruiken aan de hand van het televisieprogramma The Computer Programme van de BBC. Het grootste verschil tussen de twee modellen is de prijs. In 1981 ging Model A voor 235 pond over de toonbank, terwijl de krachtigere Model B het lieve sommetje van 335 pond kostte. De BBC Micro was een enorm succes. Een hele generatie Engelse kinderen groeide voor een groot deel door die microcomputer groeide op met een hands-on kennis van programmeren. Historisch gezien is het interessant dat de chip die het hart van de Raspberry Pi vormt, gebaseerd is op het ontwerp van een van de bedrijven die voortgekomen zijn uit Acorn Computers: ARM Holdings in Cambridge.
8
Een BBC Micro Model B zou nu meer dan 1100 pond (1240 euro) kosten – een heel verschil met de 39 euro voor een Pi.
De basis | Hoe de Pi ontstond
de Pi ontstond Het eerste model van de Raspberry Pi Sd-kaartlezer
De Raspberry Pi heeft geen opslagruimte. Je moet dus een eigen sd-kaart gebruiken om het besturingssysteem en bestanden op te slaan. Het mooie daarvan is dat je alleen hoeft te betalen voor de opslagruimte die je gebruikt. Je kunt voor 10 euro een kaartje kopen van 16 GB en voor 80 euro een van 128 GB.
RCA video-out
Voor oude televisies is er een composietvideo-connector. Die zit er nu niet meer op en is vervangen door dezelfde aansluiting, maar dan via de 3,5mm-jackplug of via de onboard-pinnen op de Pi Zero.
3,5-mm audio-out
Gebruik deze om een luidsprekerset op aan te sluiten. Dan heb je meteen een goedkoop hifisysteem.
Usb-poorten
De originele Pi Model B heeft twee usb-poorten, genoeg voor een toetsenbord en een muis. De nieuwere modellen hebben vier poorten (B+, Pi 2, 3 en 3+) of maar één, zoals de Pi Zero en de A+.
System-on-Chip
Deze kleine chip is het knapste en ook belangrijkste onderdeel. Hij bevat een ARM II-processor en een Videocore 4-gpu. Het RAM zit bovenop de System-on-Chip (SoC). Model A heeft 256 MB aan geheugen, Model B heeft 512 MB ter beschikking.
Power-connector
De Raspberry Pi gebruikt voor zijn voeding een standaard 5V micro-usb-connector. Dat betekent dat je goedkoop aan een adapter kunt komen. Als je een Android-telefoon hebt, dan heb je waarschijnlijk al een geschikte adapter in huis.
HDMI-out
De ontwerpers gingen ervan uit dat de meeste mensen de Raspberry Pi zullen aansluiten op een televisie of een monitor. Daarom is er een HDMIaansluiting voor een moderne tv of voor een monitor.
Ethernet
Sluit de Raspberry Pi rechtstreeks op internet aan – tenzij je een Model A of een Pi Zero hebt natuurlijk, want daar zit geen netwerkpoort op. In dat geval moet je wifi gebruiken, waarvan de snelheid vaak minder is.
Raspberry Pi 3+ of B+? Tegenwoordig bestaat er een hele reeks aan verschillende Pi’s: Model A+, B+, Compute Module, Pi 2, Pi 3, Pi 3+, Zero, Zero W. Het is in wezen echter allemaal dezelfde computer, de belangrijkste verschillen zijn de prijs, het beschikbare werkgeheugen en de aansluitingen. Afgezien daarvan draaien ze allemaal op dezelfde software.
Model B+, de Zero en Zero W hebben 512 MB aan RAM, Model A+ heeft slechts 256 MB en de Pi 2, 3 en 3+ hebben 1 GB. Model A+ en de Zero hebben maar één usb-poort, terwijl Model B+, de Pi 2, de Pi 3 en 3+ er vier hebben. Alle Pi’s hebben een ethernetpoort, behalve Model A+, de Zero en de Zero W. De prijzen varië-
ren van 39 euro voor de Pi 3+ tot 5,25 euro voor de Pi Zero. Als je moet kiezen, dan heeft de Pi 3+ de voorkeur, want die is simpelweg de snelste. Model A+ en de Zero zijn goed voor simpele projectjes en drukken daar de kosten van. Maar voor een paar euro meer kun je beter toch de sterke en veelzijdige Pi 3+ nemen.
9
32
Hardware Er bestaan meerdere Raspberry Pi’s, die je ook nog eens kunt uitbreiden
34 35 36 37 38 39 40 42 50 51
Raspberry Pi 3B+ en 3A+
De laatste telgen van een geslacht
Raspberry Pi 3
De Pi eindelijk 64-bit
Raspberry Pi 2
Ook krachtig, maar zonder wifi en bluetooth
Raspberry Pi B+
De Pi 1 voorzien van 40 pinnen
Raspberry Pi Zero W
Kleine Pi met netwerkaspiraties
Rasperry Pi Zero
Kleintje Pi
Zero (W) HATs
Haal meer uit je Pi Zero
Hot HAT’s
De belangrijkste uitbreidingen voor de Pi
Raspberry Pi 7”-touchscreen
Je kunt er zelfs een Pi-tablet mee maken
Pi-top
Een Raspberry Pi-laptop
33
52
Projecten Zet je Pi maar eens aan het werk
50 64 74 86 90 94 98
Negen van de beste projecten
Een keur aan projecten om meer met je Pi te doen
Het slimme huis
Gebruik de Raspberry Pi voor smart-home projecten
Bouw een Super-Pi
Met een Pi zijn een heleboel andere apparaten overbodig
Rekenen op de Pi
Mathematica is niet zomaar een wiskundeprogramma
Maak een printserver
Met CUPS en een Pi maak je je printer draadloos
WhatsApp op de Pi
Ontvang berichten van je Pi en geef hem opdrachten
Laat je Pi’s met elkaar praten
Communicatie met MQTT voor een IoT-netwerk
100 Maak een mediacenter
Kodi kan al je films, muziek en foto’s op tv afspelen
104 Host je eigen WordPress
Laat je eigen webserver draaien
108 Retrogamen voor een prikkie
Speel oude consolegames met RetroPie
112 Je bestanden in een eigen cloud
Maak een goedkope NAS met OpenMediaVault
116 Experimenteer met de Sense HAT
Een add-on vol met sensoren voor temperatuur en meer
118 Maak een luchtvochtigheidsmeter
De leds van de Sense HAT voor een grafische weergave
120 De Pi als Twitter-bot
Laat de Pi twitteren als er thuis iets (niet) loos is
122 Bitcoin-kluis voor je digitale geld Maak van je Pi een cold-wallet
53
RASPBERRY Pi De beste projecten We hebben een aantal experts eens een tijdje op zolder opgesloten – en met deze negen projecten kwamen ze weer naar beneden
D
e Raspberry Pi is in de loop van de jaren steeds krachtiger geworden. Sinds de introductie in 2012 zijn er al meer dan 20 miljoen Pi’s verkocht. We presenteren hier een aantal van de beste projecten voor de Raspberry Pi. Of je nu een beginner bent of een oude rot, of gewoon iemand die iets meer wil doen met zijn Pi, met deze projecten kun je je Pi – en je hersens – flink laten werken. We hebben een Raspberry Pi 3 gebruikt, maar de meeste projecten zullen ook werken met andere Pi-versies, waaronder de originele Model B en de Pi 2 en 3+. We geven aan wat compatibel is met welke versie en wat je voor elke versie nodig hebt. Sommige projecten hebben te maken met software, hardware en programmeren. Andere gaan over het maken van een
eigentijds WordPress-blog of het zetten van de eerste stappen in de wondere wereld van robotica. Als je een Pi 3 of 3+ hebt, probeer er dan eens een volledige desktopversie van Ubuntu op te laten draaien. Dat is gewoon indrukwekkend om te zien. De Raspberry Pi is echt een wereldwijd fenomeen geworden. Hij is zo populair dat hij de Commodore 64 heeft ingehaald als derde best verkopende personal computer na de Mac en de pc. En het eind van de Pi-revolutie onder leiderschap van Eben Upton en de Raspberry Pi Foundation is nog niet in zicht. Dus als je die boot niet wilt missen, werp je dan op deze projecten om de broodnodige Pi- en Linux-kennis op te doen. Ook dat laatste is een belangrijk punt. Je leert hier namelijk ook veel over Linux en andere opensource software, en die kennis kun je ook goed gebruiken bij desktop- en serversystemen.
Stort je op deze projecten om de broodnodige Pi- en Linux-kennis op te doen 54
Projecten | De beste projecten
Maak een blog
GESCHIKT VOOR
Lucht je hart eens lekker – begin een WordPress-blog op je Raspberry Pi met Apache, mySQL en PHP
V
oor een blog heb je geen zware hardware nodig. Met een Raspberry Pi kun je een gelikte responsieve blog ontwerpen op basis van het opensource pakket WordPress. We gebruiken daar Apache, mariaDB en PHP voor, wat eveneens opensource projecten zijn. Begin met een verse installatie van Raspbian op een Pi die met het lokale netwerk verbonden is. Daarna installeer je de webserver Apache: sudo apt-get update sudo apt-get upgrade -y sudo apt-get install apache2 -y Tijdens het installeren zet Apache standaard een bestand index.html in de webdirectory (/var/www/html/index.html) als test. Open de browser op de Pi en typ als adres http://localhost in. Als het goed is, krijg je dan het testscherm van Apache2 te zien. OK, de webserver werkt. Dan is het tijd om PHP te installeren. PHP werkt als een zogenaamde preprocessor. Dat betekent dat wanneer de server van een browser een verzoek krijgt voor een bepaalde webpagina, PHP dan uitzoekt wat er op die pagina moet verschijnen en die pagina dan vervolgens naar de browser stuurt. In plaats van statische inhoud kan PHP dus inhoud leveren die aangepast is aan de omstandigheden. Na het installatiecommando sudo apt-get install php -y kun je PHP testen. Met de editor nano maak je index.php aan: sudo nano /var/www/html/index.php Zet daar het volgende in: <?php echo “hallo wereld”; ?> Sla het op met Ctrl+X en Y. Verwijder het bestand index.html: sudo rm /var/www/html/index.html Ververs de pagina in je browser. Je moet dan de woorden ‘hallo wereld’ te zien krijgen. Als dat niet het geval is, kun je Apache herstarten met: sudo service apache2 restart Installeer daarna de database mySQL en herstart Apache sudo apt-get install mysql-server php-mysql -y sudo service apache2 restart Vervolgens is WordPress aan de beurt, Maak eerst /var/www/html/ leeg, haal dan dan WordPress binnen, pak het bestand uit en kopieer alles naar de juiste plek, en verwijder vervolgens de overbodige tijdelijke wordpress-directory en het .tar.gz-bestand: cd /var/www/html/ sudo rm * sudo wget https://wordpress.org/latest.tar.gz sudo tar xzf latest.tar.gz sudo mv wordpress/* . sudo rm -rf wordpress latest.tar.gz Verander de eigenaar van al die bestanden in de Apache-gebruiker: sudo chown -R www-data: . WordPress heeft een database nodig om de content in op te slaan: sudo mysql_secure_installation
Je moet dan een root-wachtwoord opgeven. Daarmee wordt het root-wachtwoord voor de database bedoeld, niet dat voor Raspbian. Maar dat heb je nog niet, dus druk je op Enter voor geen wachtwoord. Druk vervolgens op Y en Enter om een wachtwoord in te stellen. Schrijf dat zorgvuldig op, want je hebt het straks weer nodig (let op de hoofd- en kleine letters). Antwoord op de volgende vier vragen steeds met Y. Daarna moet je als root inloggen om de database aan te maken: sudo mysql -uroot -p Geef het wachtwoord op dat je aangemaakt hebt. Je krijgt dan een andere prompt te zien: MariaDB [(none)]> . Voer de volgende commando’s uit: create database wordpress; GRANT ALL PRIVILEGES ON wordpress.* TO ‘root’@’localhost’ IDENTIFIED BY ‘wachtwoord’; NB: je moet in het bovenstaande commando wachtwoord vervangen door je eigen wachtwoord. Verlaat de MariaDB-prompt nu met Ctrl+D. Open de browser op je Pi en ga naar http://localhost. Je krijgt dan het installatiescherm van WordPress te zien. Kies je taal en vul de rest als volgt in: Databasenaam: wordpress, Gebruikersnaam: root, Wachtwoord: je eigen wachtwoord, Hostnaam: localhost, Tabelprefix: wp. Klik op ‘De installatie uitvoeren’ en vul het formulier in. Druk op ‘WordPress installeren’. Klik daarna op Inloggen en gebruik het account dat je net hebt aangemaakt. Je komt dan in het Dashboard. Volg de stappen die je daar ziet. Je kunt altijd terug via http://localhost/wp-admin. Om vanaf een andere computer op WordPress in te loggen, vervang je localhost door het IP-adres van de Pi. Je kunt dat IP-adres vinden met het commando hostname -I .
alle Pi’s beste op Pi 2/3
Wat je voor dit project nodig hebt Raspberry Pi 1, 2 of 3 of Zero Raspbian Wifi- of netwerkverbinding
Je kunt je website in WordPress vormgeven met thema’s en plug-ins. Raadpleeg daarbij de documentatie van WordPress op https://nl.wordpress.org.
Wat is WordPress? WordPress is een contentmanagementsysteem (CMS) om een eigen blogsite mee op te zetten. Andere voorbeelden van dergelijke systemen zijn Drupal en Joomla, maar WordPress is veruit het populairst. Omdat WordPress opensource is, is het gratis te gebruiken. Door de grote ondersteuning van een enor-
me community wordt het kerndeel goed bijgewerkt en up-to-date gehouden. WordPress werkt met plug-ins om de functionaliteit verder uit te breiden. Er is een groot aantal plugins beschikbaar voor allerlei verschillende toepassingsmogelijkheden.
Omdat de lay-out met behulp van sjablonen ook makkelijk aan te passen is, is het ook voor een beginnende webdesigner relstief makkelijk om snel een eigen persoonlijke website online te hebben die er behoorlijk gelikt uitziet. Op pagina 104 staat een uitgebreide workshop voor het werken met WordPress.
55
126
Programmeren Ook jij kunt een developer worden
128 Programmeer-academie
Basisprincipes aan de hand van Python en PHP
138 Scripting-talen
Overzicht van de beschikbare programmeertalen
144 Build je eigen distro
Maak je eigen Linux-distributie
127
Programmeren op school D
e politiek in Nederland loopt op dit moment nog achter wat betreft het aanpassen van het curriculum aan de eisen van de moderne tijd. Zo is er op de basisscholen nog geen verplicht vak techniek, wel verplichte lessen over wetenschap en techniek. In 2012 introduceerde de Koninklijke Nederlandse Academie van Wetenschappen (KNAW) de term ‘digitale geletterdheid’. Deze omvat de gebieden ICT- basisvaardigheden, mediawijsheid, computervaardigheden en informatievaardigheden. Als adviesorgaan van de regering pleit de KNAW sinds die tijd voor een nieuw, verplicht vak in de onderbouw van havo/vwo en grondige vernieuwing van het keuzevak Informatica in de bovenbouw. Tussen november 2014 en april 2017 is door het hele onderwijsveld nagedacht over het onderwijs van de toekomst. Op 20 april 2017 keurde de Tweede Kamer de curriculumherziening voor het primair en voortgezet onderwijs goed. In 2018 hebben ontwikkelteams nagedacht over een concrete invulling van de vakgebieden (‘bouwstenen’) uit het curriculum, waar digitale geletterdheid er één van is. In het voorjaar van 2019 ronden de ontwikkelteams hun werk af. De bouwstenen zullen medio 2019 naar de Tweede Kamer gestuurd worden. Dat ontwerp wordt vervolgens in de praktijk getest, zodat scholen vanaf het schooljaar 2020/2021 met een geactualiseerd formeel curriculum aan de slag moeten kunnen. Overigens zijn er in Nederland al heel veel mensen en bedrijven bezig met het produceren van lesmateriaal en andere leermiddelen voor het onderwijs in ICT en programmeren. Onderwijsbeurs NOT heeft op de beurs in januari 2019 dan bijvoorbeeld ook een apart ‘Programmeerplein’ ingericht.
Pionier Engeland
Leerkansen Eigenlijk is er in deze tijd geen excuus om niet te leren programmeren. Er bestaan zoveel initiatieven en leerpakketten, en ook online is er een overvloed aan gratis programmeercursussen en documentatie over de talen. Neem bijvoorbeeld het officiële Raspberry Pi tijdschrift MagPi (www.raspberrypi.org/magpi), dat je als pdf gratis kunt downloaden. Het staat iedere maand vol met programmeercursussen, projecten en code. En we mogen Scratch niet vergeten te noemen. Die programmeeromgeving is helemaal gericht op (jonge) kinderen. Een oude computer is goed te refurbishen met een Linux-distributie – dan heb je het ideale platform om
Pistore.nl. Die heeft dezelfde specificaties als een Pi 3B+, alleen zonder ethernetpoort en met maar één usb-poort. Daardoor is hij een slagje kleiner. En met het onboard wifi kun je makkelijk internet op. De Pi-organisatie heeft er zelfs nog een officiële behuizing voor ontworpen. Je hebt natuurlijk dan nog wel een monitor of televisie met HDMI-aansluiting nodig, een toetsenbord met muis en een microSD-kaartje. Je kunt ook kiezen voor een duurdere oplossing, zoals de vooraan in dit blad genoemde Pi-top laptop of de pi-topCEED desktop-kit. De FUZE Workstation hanteert een vergelijkbaar concept (zie www.fuze.co.uk). Daarmee kun je je Pi in een meer traditionele maar wel omvangrijkere behuizing stoppen. Daarnaast kun je kiezen voor een omvangrijk en gevarieerd assortiment aan behuizingen voor de kleine Pi.
Zou het niet geweldig zijn als leerlingen naast bijvoorbeeld Chinees ook Python leren?
Hoe het programmeeronderwijs in de praktijk vormgegeven kan worden, is mooi te zien aan het voorbeeld van Groot-Brittannië. In 2012 is de Raspberry Pi in Engeland ontstaan uit pure wanhoop van academici over het gebrek aan programmeeronderwijs op de Engelse scholen. De nieuwe studenten die instroomden voor het vak Informatica aan de universiteiten bleken nauwelijks te weten hoe een computer in elkaar zit en hoe hardware en software met elkaar samenwerken. In september 2014 startte daar een baanbrekend initiatief, waarbij programmeren werd opgenomen in het nationale curriculum. Toen het initiatief in 2013 werd aangekondigd, gaf de toenmalige staatssecretaris van Onderwijs toe dat het bestaande ICT-curriculum verouderd was. Het besef was er dat programmeervaardigheden een belangrijke plaats verdienen in het onderwijs aan jonge kinderen. Dat er veel vraag was naar programmeer-skills bleek al uit het feit dat de Britse industrie net als de onze steeds meer moeite had en heeft om geschikte kandidaten voor technische banen te vinden.
134
Met de FUZE Workstation heb je alles wat je nodig hebt om met registers te spelen of met de GPIO aan de slag te kunnen.
te leren programmeren. Alle software die je nodig hebt is gratis. Distributies als Mint en Ubuntu zijn makkelijk genoeg voor beginners. Ben je gewend aan Raspbian en de Raspbian-desktop, dan kun je die vertrouwde omgeving ook op je pc zetten, want de Pi Foundation heeft een speciale pc-distributie op zijn downloadpagina staan met de naam ‘Debian with Raspberry Pi Desktop’. Die is net als Raspbian, Ubuntu en Mint ook op Debian gebaseerd. Helemaal ideaal om te leren programmeren is natuurlijk de kleine, goedkope en ultraportable Raspberry Pi met zijn eigen Raspbian-distributie. Die laatste kun je tegenwoordig in drie smaken downloaden: als lichtgewicht ‘Lite’-versie, ‘with desktop’ en ‘with desktop and recommended software’. Als je weinig geld te besteden hebt, dan kun je voor 28 euro al een Pi 3 model A+ kopen bij
Micro:bit
Over klein gesproken: tegelijkertijd met het nieuwe curriculum deelde de BBC in 2016 in Groot-Brittannië ongeveer een miljoen Micro:bit-computers uit aan leerlingen uit groep 7. Dit initiatief is inmiddels uitgebreid tot een wereldwijd project (zie https://microbit.org/ nl). De Micro:bits zijn nog kleiner dan een Pi en hebben als enige output een 5 × 5 ledmatrix. In tegenstelling tot de Pi kunnen die kleintjes niet als standalone computers fungeren. Je moet ze programmeren met een normale computer (of een Pi). Microsoft heeft de website voor de BBC Micro:bit ontworpen om de web-based code-editors te hosten voor alle 1 miljoen Micro:bits en leverde ook twee programmeertalen: Microsoft Touch Develop, een op tekst gebaseerde taal, en Microsoft Block Editor, een grafische programmeertaal. Behalve met die talen kun je ze ook programmeren met C++, Python, JavaScript en Blocks.
Programmeren | Basisprincipes De apparaten zelf hebben naast de leds ook een bewegingssensor, een versnellingsmeter, bluetooth en twee programmeerbare knoppen. Er zijn ook vijf ronde GPIO-aansluitingen voor het aansluiten van extra elektronica. Daarnaast heeft het apparaat een 20-pins connector aan de rand waarmee je hem aan de Pi of een ander apparaat kunt koppelen, zodat die computers als paar kunnen opereren. Dat pairen is sowieso nodig, om met de buitenwereld te kunnen communiceren. De Micro:bit kost 23 euro (pistore.nl). De Micro:bit en vooral de combinatie van dit apparaat met de Pi levert gebruikers veel meer mogelijkheden, maar ten tijde van zijn introductie was er veel twijfel of het ook maar in de buurt zou komen van de opwinding bij de lancering van de BBC Micro in 1982. In die tijd waren homecomputers nieuw en opwindend, terwijl de kinderen van tegenwoordig van computers een constante stroom aan vermaak verwachten in de vorm van kattenvideo’s of sociaal commentaar in 140 tekens. Niet alle kinderen zullen enthousiast genoeg zijn om ermee te programmeren. Maar alles wat de drempel om met programmeren te beginnen verlaagt, krijgt onze zegen.
Blijf bij de les Het lesprogramma bestaat uit drie fasen. De eerste fase, voor vijf- en zesjarigen, behandelt algoritmes in hele algemene zin. Algoritmes worden beschreven in termen van recepten en schema’s, om het concept van het formaliseren van instructies te introduceren. De tweede fase (leeftijd 7-11) introduceert kernconcepten zoals lussen en variabelen. Daarnaast leren ze webservices te
De Cortex MO ARM-processor vormt het hart van de op een batterij werkende Micro:bit.
gebruiken en hoe ze gegevens moeten verzamelen. In de laatste fase, voor leerlingen van 11 tot 14 jaar, moeten ze tenminste twee programmeertalen leren, en moeten ze binair rekenen, booleaanse wiskunde, functies en datatypen begrijpen. Leerlingen krijgen ook inzicht in de relatie tussen hardware en software. Tijdens het curriculum leren de leerlingen de belangrijke skills van online privacy en informatiebeveiliging. Juist de skills die bij het ontbreken ervan
vaak tot beschamende blunders van bedrijven of overheden hebben geleid. Alles bij elkaar is het een behoorlijk ambitieus project, maar misschien was zo’n radicale stap wel nodig om het tekort aan vaardigheden op dat gebied aan te pakken. Hopelijk zal dit initiatief ook leiden tot de zo noodzakelijke diversificatie onder de programmeurs. Als dat lukt, en leerlingen leren Python naast bijvoorbeeld Chinees of Kohonen of Knuth naast Kant bestuderen, dat zou pas geweldig zijn.
Programmeerclubs Er zijn in Groot-Brittannië meer dan 5000 zogeheten Code Clubs actief die door vrijwilligers geleid worden. Code Club, onderdeel van de Raspberry Pi Foundation, zorgt voor de materialen, en scholen (of andere inkomsten) zorgen voor de ruimte en andere benodigdheden voor deze buitenschoolse activiteit. Het lesprogramma van Code Club is gericht op kinderen van 9 tot en met 11 jaar en bestaat uit programmeren met Scratch, webdesign (HTML en CSS), en volwaardig programmeren met Python. Het fenomeen Code Club verspreidt zich buiten Groot-Brittannië, van Brazilië tot Zuid-Korea. De materialen zijn al vertaald in 28 talen en dat aantal groeit nog steeds. In Nederland zijn er zo’n 30 en in België 20 Code Clubs aangemeld. Mensen die er de tijd en kennis voor hebben, kunnen zich aanmelden als begeleider. Alle workshops zijn kant-en-klaar. Code Club heeft ook drie speciale modules voor leraren. Meer informatie kun je vinden op www.codeclub.org. In Nederland en België zijn er ook heel veel, vooral lokale initiatieven. Daarnaast is bij ons het eveneens internationaal opererende CoderDojo (https://coderdojo.nl) bekend. Die community wil kinderen buiten schooltijden leren programmeren op een informele en speelse manier. De activiteiten worden eveneens helemaal gratis door vrijwilligers verzorgd.
Op deze kaart staan de CoderDojo-clubs in Nederland en België. Dat kunnen er op dit moment alleen maar meer zijn geworden.
135