Computercode heeft iets magisch. Simpele nulletjes en eentjes worden aangestuurd door regels en veranderen vervolgens in al het prachtigs dat je op je beeldscherm ziet. Een programmeur schrijft een code die een weerslag is van hoe zij de wereld ziet. Samuel Arbesman laat ons in The magic of code de wonderen en wonderlijkheden van programmeren zien. Hij hoopt daarmee dat meer mensen zich aangetrokken zullen voelen tot programmeren en dat we het meer in ons voordeel gaan benutten. We worden omgeven door computers en code. Dus laten we ons daar diep in onderdompelen, is zijn boodschap.
wonderen van rekenkracht
Digitale rekenkracht is overal om ons heen. Met de huidige AI-revolutie wordt onze omgang met computers nog intenser. Natuurlijk is er alle reden tot bezorgdheid, maar laten we vooral ook onze nieuwsgierigheid en verwondering omarmen. Het lijkt alsof je je met AI niet meer druk hoeft te maken over het schrijven van code. Maar met het ambacht van coderen gaat er een wereld voor je open.
Software is de overgang tussen de fysieke en de tekstuele wereld. Abstractie en een taalkundige logica zorgen ervoor dat kleine stukjes combineren tot een groter geheel, waardoor de onderliggende deeltjes vervolgens genegeerd kunnen worden. Coderen is als recepten schrijven, maar het is ook een manier om meer te weten te komen over het probleem dat je probeert op te lossen. Software kent een rijke geschiedenis. Elk stukje software is gebouwd op een kathedraal van code. Deze fascinerende esthetiek van code zou een plek moeten krijgen in musea, zoals die er nu al zijn in Silicon Valley.
Digitale alchemie
Er gaat een creatieve kracht uit van woorden. Er is magie in verhalen. Dat zie je terug in computercode. Programmeurs spreken ook over demonen, tovenaars en draken. De naamgeving in code is belangrijk, want een naam kan nog lang voortbestaan. Technologie wordt vaak gezien als iets uit een magische wereld. Een smartphone opent deuren en brengt werelden bij elkaar.
In open-sourcesoftware komt het magische van programmeren het duidelijkst naar voren. Programmeurs vinden elkaar en werken aan bestaande verhalen, bestaande software, om het zich eigen te maken en hun eigen verhalen te creëren. De oorspronkelijke ontwerpers kunnen versteld staan van wat een volgende generatie programmeurs met hun werk doet. Zo zijn veel computertalen levende talen die uitgroeien tot datgene waar men op dat moment behoefte aan heeft.
De linguïstiek van machines
Programmeertalen moeten zowel door mensen als door machines gelezen kunnen worden. Daarom is een programmeertaal vaak mooi, rommelig en krachtig tegelijk. In programmeertalen zie je ook de persoonlijke en culturele stijl van de ontwerpers terug. Elke programmeertaal is een poging om een einde te maken aan de beperkingen van een vorige taal.
Tal van programmeurs zijn op zoek naar de heilige graal van programmeertalen, die verscholen ligt in de vele mogelijkheden van programmeren. Dat maakt het universum van programmeertalen zo spectaculair. Met AI wordt het nog eenvoudiger om code te creëren. Uit eenvoudige prompts kan een heel universum ontstaan. Coderen is niet langer alleen weggelegd voor een elite die de taal verstaat.
Fietsen voor de geest
Steve Jobs maakte ooit de vergelijking dat computers hetzelfde zijn als fietsen voor de geest. Met een fiets gebruik je minder energie om je voort te bewegen dan het meest efficiënte dier op aarde, de condor. Met een fiets kun je zo efficiënt mogelijk gaan waar je heen wilt. Computers, was zijn visie, zouden ook dit doel moeten nastreven.
Maar onze simulaties van de wereld zijn niet letterlijk de wereld. De gave van computercoding is dat je dit soort modelwerelden kunt creëren. Dat vraagt om een stukje nederigheid. De digitale wereld en de fysieke wereld komen wel dichter bij elkaar, bijvoorbeeld via synthetische biologie, waarbij AI helpt om de puzzelstukjes van eiwitsynthese sneller bij elkaar te brengen. Kunstmatig leven komt dichterbij, met AI als vraagbaak en digitale vriend in onze binnenzak.
De immense wereld van rekenkracht
Arbesman is een enthousiaste verteller die vol verhalen zit. Van kinds af aan is hij gefascineerd door computers en programmeren. Bij hem is programmeren een liefhebberij gebleven. Hij heeft biologie gestudeerd en vooral veel geschreven. De Thora en andere Joodse geschriften zijn hem dierbaar en komen (iets te) vaak voorbij in het verhaal.
Maar The magic of code is een origineel boek dat op plezierige wijze de wereld van programmeren dichter bij de mensen wil brengen. Parallellen tussen programmeren en het dagelijkse leven maken het beeldend. Arbesman toont bovenal hoe de mensheid zich heeft ontwikkeld, met programmeren als een gereedschap om het denken een stapje verder te helpen. Ik heb het met plezier gelezen.
Over Freija van Duijne
Freija van Duijne was van 2013 tot 2018 voorzitter van de Dutch Future Society. Zij heeft meer dan tien jaar werkervaring als toekomstverkenner en strateeg in diverse overheidsorganisaties. Freija werkt vanuit haar bedrijf Future Motions en geeft trainingen en lezingen op gebied van toekomstverkennen.