Op een zaterdagmiddag in mei viel me plots te binnen dat het de volgende dag moederdag was, en dat ik nog niets had voor mijn moeder. Dus begon ik na te denken over wat ik haar kon geven? Waarom geen interactieve kaart voor moederdag Waarom geen interactieve kaart voor moederdag met behulp van de Scratch-software die ik net had ontwikkeld met mijn onderzoeksgroep aan het MIT Media Lab? We ontwikkelden ze om mensen hun eigen interactieve verhalen, games en animaties te laten creëren en ze vervolgens met elkaar te delen. Ik vond dit een kans om Scratch te gebruiken om een interactieve kaart voor mijn moeder te maken. Alvorens mijn eigen moederdagkaart te maken wou ik eens rondkijken op de website van Scratch. In de voorbije jaren hebben kinderen van 8 en ouder over de hele wereld hun projecten met elkaar gedeeld. Ik vroeg me af of iemand in die drie miljoen projecten er ooit aan had gedacht om moederdagkaarten te maken. In het zoekvak typte ik: ‘Moederdag’ en ik was blij verrast een lijst van tientallen kaarten voor moederdag te zien op de website van Scratch. Veel ervan alleen al in de afgelopen 24 uur door uitstellers zoals ikzelf. Ik begon ze door te nemen. (Muziek) Op de eerste stond een poesje dat haar moeder een gelukkige moederdag wenste. De maker voorzag zeer weloverwogen een replay voor haar moeder. Een ander was een interactief project waar, als je de muis over ‘Gelukkige Moederdag’ bewoog, er een speciale ‘Gelukkige Moederdag’ verscheen. (Muziek) In deze vertelde de maakster hoe ze via Google de datum van moederdag had gevonden. (Typen) Zodra ze dat wist, gaf ze een speciale moederdaggroet van hoeveel ze van haar moeder hield. Ik heb echt genoten van deze projecten en hun toepassing. Ik vond ze zo leuk dat ik, in plaats van mijn eigen project te maken, mijn moeder links naar een tiental van deze projecten doorstuurde. (Gelach) Ze reageerde precies zoals ik het hoopte. Ze schreef terug: “Ik ben zo trots op een zoon die de software maakte waarmee deze kinderen hun moederdagkaarten konden maken.” Dat maakte me gelukkig, maar ik ben zelfs nog blijer om een andere reden. Ik was blij omdat deze kinderen Scratch gebruikten op de manier die we hadden gehoopt. Terwijl ze hun interactieve kaarten maakten, kon je zien dat ze steeds vlotter omgingen in deze nieuwe technologieën. Wat bedoel ik met vlotter? Ze vonden een manier om zich te uiten en uiting te geven aan hun ideeën. Wanneer je vloeiend wordt met taal betekent dat dat je iets kunt noteren in je dagboek, iemand een mop vertellen of een vriend een brief schrijven. Het is vergelijkbaar met nieuwe technologieën. Door deze interactieve kaarten voor moederdag te schrijven, toonden deze kinderen aan dat zij vloeiend waren in nieuwe technologieën. Het zal jullie misschien niet erg verrassen omdat veel mensen het gevoel hebben dat jonge mensen vandaag allerlei dingen kunnen doen met technologie. We hebben allemaal de term ‘digital natives’ (geboren digitalen) wel eens gehoord. Ik ben nogal sceptisch over die term. Ik ben er niet zo zeker van dat we jonge mensen als ‘geboren digitalen’ moeten zien. Hoe gaan jongeren meestal met die nieuwe technologieën om? Vaak zie je ze zo, of zo. Ongetwijfeld zijn deze jonge mensen zeer vertrouwd met browsen, chatten, sms’en en gamen. Maar dat maakt niet dat je het vlot beheerst. Jonge mensen hebben vandaag de dag veel ervaring en een heleboel vertrouwdheid met het gebruik van die nieuwe technologieën, maar een stuk minder met het creëren met nieuwe technologieën en zichzelf te uiten met nieuwe technologieën. Het is bijna alsof ze wel kunnen lezen maar niet schrijven met de nieuwe technologieën. Ik wil jongeren helpen om vlot te worden in het schrijven met die nieuwe technologieën. Dat wil zeggen dat ze hun eigen computerprogramma's of code gaan schrijven. Meer en meer mensen beginnen het belang van leren programmeren in te zien. In de afgelopen jaren zijn er honderden nieuwe organisaties en websites die jonge mensen helpen om te leren programmeren. Online vind je sites zoals Codecademy en evenementen zoals CoderDojo en sites zoals ‘Meisjes Die Programmeren’, of ‘Zwarte Meisjes Programmeren’. Het lijkt erop dat iedereen gaat meedoen. Bij het begin van dit jaar Bij het begin van dit jaar nam burgemeester Michael Bloomberg van New York City zich voor om in 2012 te gaan leren programmeren. om in 2012 te gaan leren programmeren. Een paar maanden later besloot Estland dat alle kinderen in de lagere school moesten leren coderen. Dat leidde tot een debat in het Verenigd Koninkrijk of alle kinderen moesten leren programmeren. Het kan voor jullie raar lijken dat iedereen zou moeten leren programmeren. De meesten denken hierbij aan iets dat alleen door wat specialisten gedaan wordt. Beelden als dit komen dan voor de geest. Als het er zo zou uitzien, zou het alleen kunnen gebeuren door mensen met speciale wiskundige vaardigheden en een technologische achtergrond. Maar programmeren kan ook anders. Hier zie je zoals het gaat in Scratch. Bij Scratch hoef je alleen maar blokken samen te voegen. In dit geval neem je een beweegblok, steekt hem in een stapel en die stapels blokken besturen het gedrag van de verschillende personages in je spel of je verhaal. In dit geval is dat die grote vis. Nadat je het programma hebt gemaakt, kun je klikken op 'delen', en vervolgens je project delen met andere mensen, zodat ze het project kunnen gebruiken en ook beginnen werken aan het project. Natuurlijk is het maken van een vissenspel niet het enige dat je kunt doen met Scratch. Er zijn miljoenen projecten op de website van Scratch. Het gaat van animatiefilmpjes naar schoolwetenschap-projecten animatie-soaps, virtuele constructiekits, recreaties van klassieke videogames, politieke opiniepeilingen, trigonometrielessen, interactieve illustraties, en ja,ook interactieve kaarten voor moederdag. Op allerlei manieren kunnen mensen zich hiermee uitdrukken en hun ideeën delen met de wereld. Niet alleen op het scherm. Je kunt ook programmeren voor interactie met de fysieke wereld om je heen. Hier is een voorbeeld uit Hongkong. Enkele kinderen maakten een spel en bouwden vervolgens hun eigen fysische interfaceapparaat. Een lichtsensor detecteert het gat in de plank. Door de echte zaag te bewegen detecteert de lichtsensor het gat, controleert zo de virtuele zaag op het scherm en zaagt de boom om. We blijven zoeken naar nieuwe manieren om de fysieke wereld en de virtuele wereld samen te brengen en verbinding te maken met de wereld om ons heen. Dit is een voorbeeld van een nieuwe versie van Scratch die we in de komende maanden gaan vrijgeven. We zijn op zoek naar manieren om je in nieuwe richtingen te duwen. Hier is een voorbeeld. Het maakt gebruik van een webcam. Als ik mijn hand beweeg, kan ik de ballonnen laten springen of het beestje verplaatsen. Een beetje zoals Microsoft Kinect, waar je via gebaren interageert met de wereld. Maar in plaats van alleen maar iemand anders spel te spelen, maak je zelf spelen. Bij het spel van iemand anders kan je ‘erin’ kijken en zien hoe de stapels blokken het spel controleren. Een nieuw blok vertelt je hoeveel videobeweging er is. Na zoveel videobeweging doet het de ballon barsten. Op dezelfde manier als de camera informatie invoert in Scratch, kan dat ook via de microfoon. Hier is een voorbeeld van een project met een microfoon. Jullie gaan allemaal dit spel controleren door jullie stem. (Krekels zingen) (Geroep) (Gesmak) (Gelach) (Applaus) Als kinderen aan deze projecten werken, leren ze programmeren, maar nog belangrijker, ze programmeren om te leren. Omdat ze, terwijl ze code leren, ook vele andere dingen leren, Het biedt vele nieuwe mogelijkheden om te leren. Vergelijk het met lezen en schrijven. Wanneer je leert lezen en schrijven, opent dat mogelijkheden voor je om veel andere dingen te leren. Wanneer je leert lezen, kun je daarna lezen om te leren. Dat geldt ook voor programmeren. Als je leert programmeren, kun je programmeren om te leren. Sommige zaken liggen nogal voor de hand. Je leert over hoe computers werken. Maar dat is maar het begin. Leren programmeren opent de poort naar veel andere dingen. Ik geef een voorbeeld. Hier is een ander project. Ik zag dit in een computerclub. Dit zijn naschoolse leercentra waar we begonnen om jonge mensen uit arme gemeenschappen zich creatief te leren uiten met nieuwe technologieën. Een paar jaar geleden zag ik in een van de clubhuizen een 13-jarige jongen die met onze Scratch-software een spel als dit aan het maken was. Hij was erg blij en trots op zijn spel, maar hij wilde meer. Hij wilde de score bijhouden. In dit spel waar de grote vis de kleine opeet, wilde hij de score bijhouden. Telkens de grote vis een kleine opeet, gaat de score omhoog. Hij wilde dat bijhouden, maar wist niet hoe. Dus toonde ik het hem. In Scratch kan je een variabele definiëren. Ik noem het ‘score’. Die maakt wat nieuwe blokken voor je, en een klein scorebord dat de score bijhoudt. Telkens ik klik op ‘verander score,’ verhoogt het de score. Ik toonde dat aan het clublid -- laten we hem Victor noemen. Victor wist dadelijk wat hem te doen stond zodra hij het doorhad. Hij nam het blok, zette het in het programma precies waar de grote vis de kleine opeet. Elke keer de grote vis een kleine opeet, verhoogt de score met 1. En het werkt. Toen hij dit zag, was hij zo opgewonden, dat hij zijn hand naar mij uitstak en “Dank je, dank je, dank je” zei. Ik vroeg me af hoe vaak leraren door hun studenten worden bedankt als ze hen variabelen leren gebruiken? (Gelach) Niet vaak, omdat kinderen er het nut niet van inzien. Ze hebben er geen toepassing voor. Maar in Scratch leer je die dingen op een werkelijk zinvolle en motiverende manier toepassen, Je begrijpt dan de reden voor het leren van variabelen. De kinderen gaan er dieper op in en leren het beter. Victor had zeker op school al geleerd over variabelen, maar niet echt – hij had er geen aandacht aan gegeven. Nu had hij een reden om te leren over variabelen. Als je dus leert door te programmeren en programmeert om te leren, leer je in een zinvolle context. Dat is de beste manier om iets te leren. Met projecten als deze leren kinderen als Victor belangrijke concepten zoals variabelen, maar dat is nog maar het begin. Terwijl Victor aan dit project werkte en de scripts maakte, leerde hij ook over het ontwerpproces. Hoe beginnen met een vaag idee en komen tot een volwaardig, goed functionerend project zoals je hier ziet. Hij leerde allerlei basisprincipes van ontwerp, over hoe experimenteren met nieuwe ideeën, hoe starten met complexe ideeën en ze in eenvoudigere onderdelen opsplitsen, hoe samenwerken met andere mensen voor je project, hoe de fouten vinden en oplossen wanneer dingen misgaan, hoe blijven volhouden en frustraties overwinnen wanneer de dingen niet zo goed werken. Nu zijn dat belangrijke vaardigheden die niet alleen relevant zijn bij het coderen. Ze zijn relevant voor allerlei activiteiten. Zal Victor opgroeien tot programmeur of een professionele computerwetenschapper? Waarschijnlijk niet, maar ongeacht wat hij gaat doen, zullen deze ontwerpvaardigheden hem van pas komen. Of hij nu een marketingmanager, een monteur of een gemeenschapsorganisator wordt, deze ideeën zijn nuttig voor iedereen. Het is nuttig om na te denken over die analogie met taal. Wanneer je vlot leert lezen en schrijven, doe je dat niet alleen maar om een professioneel schrijver te worden. Zeer weinig mensen worden professionele schrijvers. Maar het is voor iedereen nuttig om te leren lezen en schrijven. Dat geldt ook voor programmeren. De meeste mensen worden geen professionele computerwetenschappers of programmeurs, maar die vaardigheden van creatief denken, systematisch redeneren, samenwerken -- die vaardigheden ontwikkel je met Scratch -- zijn dingen die mensen kunnen gebruiken, wat ze ook gaan doen. Niet alleen voor je job. Programmeren kan je ook helpen om je ideeën en gevoelens in je persoonlijke leven uit te drukken. Ik eindig met nog een voorbeeld. Toen ik mijn moeder die moederdagkaarten had gestuurd, besloot ze dat ze Scratch wilde leren. Dit project maakte ze voor mijn verjaardag en stuurde me een Scratch Gelukkige Verjaardags-kaart. Dit project gaat geen prijzen voor ontwerp winnen en je mag er zeker van zijn dat mijn 83-jarige moeder geen opleiding tot professionele programmeur of computerwetenschapper heeft genoten. Maar dit project stelde haar in staat iets te zeggen aan iemand waar ze om geeft, nieuwe dingen te leren, haar creativiteit te botvieren en nieuwe manieren om zichzelf uit te drukken te ontwikkelen. Als we zien dat Michael Bloomberg leert programmeren, dat alle kinderen van Estland leren programmeren en dat zelfs mijn moeder het heeft geleerd, vinden jullie dan niet dat het tijd wordt om het ook eens te proberen? Als je erin geïnteresseerd bent, ga dan eens naar de Scratch-website. Het is scratch.mit.edu. Probeer het eens. Dank u zeer. (Applaus)