Wie software bouwt, bepaalt voor een deel hoe anderen werken en leven. Maar hoeveel weten programmeurs eigenlijk van die anderen? Tijdens haar lezing Vierkante Ogen op de Tweakers Developers Summit staat Felienne Hermans stil bij de blinde vlekken in haar vak. De hoogleraar Vakdidactiek van de Informatica aan de Vrije Universiteit Amsterdam en docent informatica aan de Open Schoolgemeenschap Bijlmer vertelt over toegankelijkheid, leren programmeren en de vraag wat AI daarbij overneemt.
'Van al dat computeren krijg je vierkante ogen.' Ouders waarschuwden er vroeger graag voor. Ze zagen kinderen achter een scherm verdwijnen, ten koste van buitenspelen en bij vriendjes aanbellen. Volgens Felienne Hermans gaat de invloed van computers inmiddels veel verder dan het aantal uren achter dat scherm.
"Bijna alles wat we doen, verloopt tegenwoordig via software. Een huis zoeken, daten, het nieuws volgen… software geeft steeds meer vorm aan hoe we de wereld ervaren. En de mensen die deze techniek ontwikkelen, krijgen daarmee veel macht in handen. De vraag is dus niet alleen of we te veel computeren, maar ook: van wie zijn die vierkante ogen waar we steeds vaker doorheen kijken? En hoe kijken zij naar de wereld?"
Die vraag staat ook centraal in haar boek Vierkante Ogen. Hermans kent het plezier van programmeren sinds haar vader eind jaren tachtig een computer in huis haalde. Een idee met een paar regels code tot leven brengen vond ze meteen geweldig. Tekenen en breien deed ze ook graag. "Mijn moeder dacht alleen dat ik met IT waarschijnlijk meer succes zou hebben dan met mijn breiwerkjes."
Hedy veranderde haar kijk op het vak
Lange tijd geloofde Hermans dat een goede technische oplossing voldoende was om programmeren voor iedereen toegankelijk te maken. In 2019 ontwikkelde ze Hedy. Bestaande programmeertalen waren voor veel kinderen te ingewikkeld, terwijl alternatieven vaak te kinderachtig waren. Haar eigen taal moest gratis zijn, in verschillende talen beschikbaar en ook bruikbaar voor blinden en slechtzienden.
Haar eigen taal moest gratis zijn, in verschillende talen beschikbaar en ook bruikbaar voor blinden en slechtzienden.
Toen ze een stappenplan publiceerde waarmee andere programmeurs hun talen inclusiever konden maken, verwachtte ze enthousiaste reacties. Die waren soms ronduit vijandig. "Ik werd uitgescholden op sociale media omdat ik 'woke' naar de informatica bracht. Door deze nare reacties begon mijn beeld van de informaticawereld te kantelen. Ik dacht dat we als programmeurs allemaal graag problemen willen oplossen, maar blijkbaar waren we het er niet over eens welke problemen belangrijk waren. Daarom richt ik me nu steeds meer op hoe we informatici kunnen opleiden die inclusiviteit en de maatschappelijke gevolgen van hun werk wél belangrijk vinden."
Dat vraagt volgens haar om een bredere opleiding. Programmeurs krijgen volop algoritmes, wiskunde en frameworks voorgeschoteld. De sociale kant van hun werk blijft daarbij achter. Hermans zou het 'informatiedieet' graag aanvullen met techniekfilosofie, sociologie en ethiek. "Niet als garnering, maar als volwaardige onderdelen van de maaltijd."
Een functie van Hedy zou ze ook graag terugzien in professionele tools: programmeren in de eigen taal. Waarom geldt Engels zo vaak als vanzelfsprekende voorwaarde? "Bij Hedy kunnen kinderen in hun eigen taal programmeren, omdat ik niet vind dat Engels kunnen spreken een voorwaarde moet zijn om te leren programmeren. Maar eigenlijk geldt die vraag net zo goed voor professionele programmeurs. Waarom accepteren we zo vanzelfsprekend dat vrijwel alle programmeertalen, documentatie en tools Engelstalig zijn? Daarmee maken we programmeren onnodig minder toegankelijk voor een enorme groep mensen."
Twee ouders passen prima in een database
Hoe een technische keuze uitpakt voor gebruikers, wordt snel duidelijk bij een ogenschijnlijk eenvoudig datamodel rondom ouderschap. Een systeem biedt bij een kind ruimte voor twee ouders. Dat lijkt logisch, totdat er twee moeders en een betrokken biologische vader zijn. Of pleegouders én biologische ouders.
"Dan passen die relaties ineens niet meer in de database. En dat wordt een probleem"Zo zie je hoe een technische beslissing een maatschappelijke beslissing wordt."
wanneer die gegevens worden gebruikt om te bepalen wie informatie van school ontvangt of wie toestemming mag geven. Een simpele keuze voor twee invoervelden bepaalt ineens welke gezinsrelaties het systeem kan herkennen. Zo zie je hoe een technische beslissing een maatschappelijke beslissing wordt."
Ook de aanname dat iedereen een moderne smartphone heeft, kan mensen uitsluiten. Een QR-code scannen, een app installeren of iets op de telefoon bevestigen is voor de maker misschien vanzelfsprekend. Een gebruiker kan een ongeschikt toestel hebben, te weinig opslagruimte of geen geld voor mobiel internet. Zonder alternatief wordt de handige oplossing een gesloten deur.
Die beperkingen blijven gemakkelijk buiten beeld als de testgroep op het ontwikkelteam lijkt. Hermans vindt dat developers actief moeten zoeken naar mensen die minder digitaal vaardig zijn of al bij de eerste stap afhaken. Juist zij ontbreken vaak in gebruikersonderzoek."Je kunt nog zo goed zijn in het bouwen van software, maar daarmee weet je niet automatisch hoe andere mensen leven of welke problemen ze tegenkomen. Je kunt niet verwachten dat iedereen zich aanpast aan jouw systeem. Je moet zelf moeite doen om hun wereld te begrijpen."
Voor Hermans begint dat contact vroeg in het ontwerp. Wie pas aan het einde naar de gebruiker gaat, kan technisch iets knaps hebben gebouwd waar niemand op zat te wachten. Efficiëntie is bovendien niet voor iedereen het belangrijkste; autonomie, flexibiliteit of menselijk contact kunnen zwaarder wegen.
Een junior leert niet meer vanzelf door meters te maken
Naast de vraag voor wie developers bouwen, houdt Hermans zich bezig met de vraag hoe zij hun vak leren. Ze heeft bezwaar tegen het bekende advies om vooral veel te programmeren. Uren maken betekent niet automatisch dat een beginner ook gericht vooruitgaat.
"We weten dat gericht oefenen veel effectiever kan zijn. Je kunt bijvoorbeeld de syntax van een programmeertaal los oefenen van het bedenken van algoritmes. Als je een junior begeleidt, moet je dus niet verwachten dat die vanzelf beter wordt door maar genoeg uren te programmeren. Je moet nadenken over wat iemand op dat moment probeert te leren, en hoe je daarbij kunt helpen. Dat is iets anders dan alleen zeggen wat er mis is met de code."
Een taalmodel kan overtuigende code produceren waar van alles aan mankeert.
Met AI wordt die vraag naar begrip extra relevant. Een taalmodel kan overtuigende code produceren waar van alles aan mankeert. Wie de basis niet kent, kan moeilijk beoordelen of een oplossing deugt. Daarom zou Hermans beginners niet aanraden meteen alles door AI te laten schrijven. "Dat is een beetje alsof je wilt leren rekenen, maar vanaf de eerste les alleen maar een rekenmachine gebruikt. Je krijgt misschien wel de goede antwoorden, maar je hebt geen flauw benul hoe je daar zelf terechtkomt. Daarom vind ik het belangrijk dat beginners de basis blijven leren: hoe variabelen, condities en loops werken, hoe je algoritmes opbouwt en hoe je fouten opspoort. Anders ben je volledig afhankelijk van wat de AI je voorschotelt."
Betere programmeur of betere chatbotgebruiker?
Werkende code vertelt volgens Hermans maar een deel van het verhaal. Haar belangrijkste toets is of iemand na het gebruik van AI iets kan wat daarvoor niet lukte. Kan diegene een lastig concept vervolgens zelfstandig toepassen? Of moet diegene voor iedere volgende stap opnieuw de chatbot inschakelen? Om dat vast te stellen, moet een begeleider verder kijken dan het eindresultaat. Hermans wil weten welke ontwerpkeuzes iemand heeft gemaakt, waarom een oplossing werkt en of diegene de kennis kan toepassen op een nieuw probleem. Daaruit blijkt of AI het leren heeft ondersteund.
Hermans ziet mogelijkheden voor AI als persoonlijke tutor: een assistent die vragen stelt, hints geeft en passende oefeningen aanbiedt voor onderdelen waarmee iemand moeite heeft. Tegelijk vindt ze dat de wenselijkheid van AI in het onderwijs te gemakkelijk wordt overgeslagen. "Er wordt gedaan alsof AI in het onderwijs onvermijdelijk is en wij ons daar maar aan moeten aanpassen. Terwijl technologie niet neutraal is. Als je AI in het klaslokaal introduceert, maak je ook keuzes over hoe leerlingen leren, hoe de relatie tussen leerling en docent eruitziet en welke rol technologie in ons leven krijgt."
Daar komt haar vraag over de invloed van software terug: wie bepaalt hoe technologie wordt gebruikt en welke waarden daarbij tellen? Op de Developers Summit wil Hermans bezoekers laten nadenken over de macht die met hun vak gepaard gaat. Ook wie al twintig jaar programmeert, kan zich afvragen wiens wereld hij eigenlijk begrijpt.
En voor wie door alle AI-discussies vergeet waarom programmeren ooit zo aantrekkelijk was, heeft ze nog een reden om zelf te blijven leren. "Leer het omdat het leuk is! Het zou zonde zijn als we door AI vergeten hoeveel plezier er zit in zelf ontdekken hoe iets werkt. Het is een vak waarin je eindeloos kunt blijven ontdekken, experimenteren en spelen. Als je die basis eenmaal hebt, kan AI best een handig hulpmiddel zijn. Maar als je vanaf het begin alles voor je laat doen, geef je niet alleen het werk, maar ook de voldoening uit handen."
Dev Summit 2026: koop nu je kaartje voor de Tweakers Dev Summit 2026 en verdiep je in het complete programma!
Ook met andere ogen naar het vak van programmeur kijken (en luisteren)? Koop dan nu een kaartje. De kaartverkoop verloopt beter dan verwacht, dus wacht niet als je erbij wilt zijn. Meer informatie over het programma, workshops en de andere sprekers vind je op de aparte Dev Summit-website. We zien je heel graag eind oktober!
:strip_icc():strip_exif()/u/116600/crop5be04a1ae3ded_cropped.jpeg?f=community)
:strip_icc():strip_exif()/u/1822858/crop63851bcaeea32_cropped.jpg?f=community)
:strip_icc():strip_exif()/u/6764/cergorach.jpg?f=community)
:strip_icc():strip_exif()/u/5364/drillingforbrains_60x60.jpg?f=community)
/u/201305/Pig.png?f=community)
:strip_icc():strip_exif()/u/817359/crop57df9045aeeb8_cropped.jpeg?f=community)
:strip_icc():strip_exif()/u/57655/SuperTeamLogo.jpg?f=community)