App-development in het onderwijs

Via iPhoneclub.nl kwam ik een interessante presentatie tegen over App-development in het onderwijs. Hogeschool Zuyd heeft dit studiejaar voor het eerst het ontwikkelen van een app als opdracht opgenomen. Aan de hand van een opdracht van een verkeersorganisatie uit Limburg hebben zij een app ontwikkeld genaamd de BobShaker. Volgens de docenten was deze opdracht zeer succesvol: leerlingen waren gemotiveerd en zij werkten zo hard dat ze aan andere vakken niet meer toekwamen!

De presentatie laat goed zien hoe deze opdracht tot stand is gekomen. Ik denk dat dit ook voor het informatica op het VO een goede kandidaat kan zijn voor de eindopdracht. De opdracht zal uiteraard iets minder complex moeten zijn, maar door de opdracht op deze manier te formuleren zul je gemotiveerde leerlingen krijgen, én – daar ben ik van overtuigd – een heel mooi eindresultaat!

Wat denken jullie? Is dit geschikt?

Modelleren is het nieuwe programmeren

Arend Rensink, professor aan Universiteit Twente, gaf een lezing over modelleren. Modelleren kan op twee verschillende manier gebruikt worden, namelijk om software te genereren/transformeren en om software te verifiëren. Met het doel om interesse te wekken voor kerninformatica biedt de Universiteit Twente hulp aan bij profielwerkstukken via de Twente Academy.

Wat maakt modelleren nou interessant? Via een model is het mogelijk om software te verifiëren, dit wordt model checking genoemd. Een model checker wordt gebruikt om aan de hand van een model een software systeem te testen. Hiervoor wordt van het gewenste gedrag een model gemaakt, waarna de uitvoer van het programma wordt vergeleken met dit model. De model checker geeft nu aan of de antwoorden correct zijn en geeft indien incorrect een tegenvoorbeeld.

Naast het testen van correctheid aan de hand van een model kun je ook programmeren door het maken van een model. Vanuit het model kan dan code gegenereerd worden. Dit kan bijvoorbeeld GROOVE door een graaf te maken welke het probleem modelleert. Eén van de werkstukthema’s gaat hiermee aan de slag door het oplossen van puzzels. De leerling creëert een graaf welke de speltoestand vertegenwoordigd en hij definieert de verschillende acties die plaats kunnen vinden. Hierna kan het programma alle mogelijke oplossingen aangeven en de volledige oplossingsruimte kan ook worden onderzocht (tevens in de vorm van een graaf).

Deze manier van werken maakt het voor een leerling mogelijk om een lastig probleem aan te pakken en op te lossen. Wel twijfel ik aan de eenvoudigheid van de gebruikte tools en of je op deze manier een leerling niet enkel leert werken met de tool. Arend geeft echter aan dat leerlingen vrij snel aan de slag konden met de tools. Erg sterk aan de opdrachten vind ik dat leerlingen gedwongen wordt om na te denken over de essentie van een puzzel. Wat zijn nu de essentiële concepten en acties in het spel? Hierdoor valt dit ook prima te scharen onder Computational Thinking.

Gebruik Phidgets met een Arduino

Veel scholen hebben de MP3-speler module voor het vak NLT gebruikt. In deze module wordt gebruik gemaakt van Phidgets. Het leuke van de sensoren die hierbij horen is dat je deze ook kunt gebruiken in combinatie met de Arduino! Als de sensoren al op school aanwezig zijn, kunt u dus geld besparen.

Door een kabeltje van een Phidget door te knippen kun je de sensor op de volgende manier aansluiten op de Arduino:
Rood: 5V
Zwart: GND
Wit: Analoge ingang naar keuze
De sensoren geven vervolgens een waarde tussen 0 en 1024 terug.

Wilt u ook het gemak van het aansluiten behouden? Dan zijn er ook Shields beschikbaar waarop de molex-stekkers van de Phidgets direct zijn aan te sluiten:

Noot: de genoemde shields zijn niet door mij getest, wel heb ik de Phidgets los aangesloten en getest met een Arduino