app, noot, mies

Programmeren moet een schoolvak worden, bepleit Joris van Mens. Er is een steeds groter tekort aan getalenteerde IT’ers. Bovendien leert programmeren je logisch na te denken

‘Everybody in this country should learn how to program a computer, because it teaches you how to think.” Met dit citaat van Steve Jobs, de Captain America onder de technologiesuperhelden, begint het promofilmpje van code.org dat programmeren als schoolvak wil introduceren in Amerika. Bill Gates en Mark Zuckerberg (ook niet minder dan Batman en de Hulk, om de vergelijking maar even door te zetten) passeren even later de revue en vertellen over de eerste stukjes code die ze schreven, de maatschappelijke relevantie van programmeren, de grote behoefte die er is aan goede programmeurs en ook het vele geld dat er met programmeren te verdienen is. Om het geheel wat hipper te maken wordt ook Will.I.Am (Robin hooguit) nog om zijn mening gevraagd. „Great coders are today’s rockstars”, vindt hij. „That’s it!”, voegt hij er na een korte pauze aan toe met een zelfvoldaan lachje dat verraadt dat hij toch niet ontevreden is met zijn eigen carrièrekeuze.

Oprichter van code.org is Hadi Partovi, zelf ook programmeur met een MSc in Computer Science van Harvard, internetondernemer en investeerder in jonge technologiebedrijven. Programmeren is niet alleen iets voor de super smart kids in their parents’ basement, meent hij. Scholen zouden programmeren als essentiële vaardigheid moeten onderwijzen – net als lezen en schrijven – en iedereen zou er ten minste een basale kennis van moeten hebben. Volgens Hadi’s cijfers zal er in Amerika in 2020 vraag zijn naar zo’n 1,4 miljoen programmeurs, terwijl er maar 400.000 afgestudeerde informaticastudenten zullen rondlopen om de plekken op te vullen. Het onderwijs is al in 150 jaar niet meer veranderd; dit is het moment om programmeren toe te voegen aan het curriculum, aldus Hadi. Zouden we dit ook in Nederland moeten bepleiten?

Programmeren is niet moeilijk

Uit economisch oogpunt lijkt het antwoord duidelijk: ja. Er is in Nederland een steeds groter tekort aan vooral hoogopgeleide informatici. IT is een van de weinige economische succesverhalen van het moment, de vraag naar getalenteerde computerjongens stijgt constant maar het aantal studenten blijft laag. Door meer leerlingen in het middelbaar onderwijs in aanraking te laten komen met programmeren zal dat probleem verminderen.

Als schoolvak zal programmeren, in tegenstelling tot wat veel mensen denken, niet moeilijker zijn dan andere vakken. Als je op de middelbare school de citroenzuurcyclus uit kon leggen of met bellum, belli en bello lange teksten kon vertalen, dan was een stukje programmeren ook wel gelukt. Zoals Gabe Newell (oprichter van spelfabrikant Valve) vertelt in een filmpje van code.org wat het eerste stukje code dat hij schreef – en met hem elke beginnende programmeur – een programmaatje dat de tekst ‘Hello World!’ liet zien op het scherm. In Python, een van de meest gebruikte programmeertalen van het moment, schrijf je daarvoor: print „Hello, World!”. Geen rocket science. Het is de je m’appelle van het programmeren, en vanaf daar leer je ook de comment ça va en voor je het weet heb je je eerste stukje software in elkaar geknutseld.

Blokjes logica

Maar waar een basaal Frans je helpt de biefstuk te bestellen in plaats van de varkensingewanden, is een basale kennis van programmeren van minder praktisch nut. Na een paar lessen programmeren in de onderbouw is het onwaarschijnlijk dat je ooit een praktisch inzetbaar stuk software zult schrijven. Maar goed, het kennen van de citroenzuurcyclus of de eigenschappen van een parallellogram zijn van nog twijfelachtiger praktische waarde en toch worden ze gedoceerd aan tienduizenden leerlingen per jaar. Het voegt toe aan je algemene kennis, je begrip van de wereld, en met de rol die technologie in ons dagelijks leven speelt, lijkt programmeren dan ook niet te kunnen ontbreken. Bovendien reikt het nut van programmeren misschien nog wel verder dan dat van biologie of zelfs Frans, want om Jobs nogmaals te citeren: „it teaches you how to think”.

Het mooie van programmeren is namelijk dat het een combinatie is van logica en creativiteit. Je bouwt een machine. Niet met schroeven en olie, maar met blokjes logica die je uitschrijft in tekst en aan elkaar koppelt. Een rotor en een hamer en een V- snaar, elk onderdeel bouw je los, je test of het werkt, en je plugt het in het systeem volgens de blauwdruk die je in je hoofd hebt zitten. Je apparaat wordt steeds groter en op een gegeven moment is het een brommend, bijna autonoom gevaarte dat precies doet wat je van tevoren in gedachten had. Of met een heleboel lawaai tot stilstand komt als je op een bepaald knopje drukt, omdat je ergens in het begin het verkeerde type moertje hebt gebruikt. Je laat het samenwerken met andere machines, vervangt de zwakke plekken en stemt de cilinders nog eens af. Het uitdenken van het ontwerp, het opbreken in kleine, logische stappen en het in elkaar schrijven van alle kleine radertjes.

Niet alleen leert het je logisch problemen aan te pakken, het geeft vooral ontzettend veel voldoening. Uren vliegen voorbij, je bent in het moment als een zenboeddhist en in de late avond kijk je met trots naar je bouwwerk, rood oplichtend in de avondzon, of het lichtje van onder je muis. Van een idee in je hoofd naar een glanzend gestroomlijnde machine. Dat gun ik nou iedereen.