Achtste toespraak tot mijn studenten, najaar 1976.

Een idee is wetenschappelijk vruchtbaarder naarmate het effectiever orde op zaken stelt in de conceptuele chaos, die de veelheid der verschijnselen oproept. Sinterklaas is bv. geen vruchtbaar wetenschappelijk idee, want Hij roept meer problemen op, dan hij oplost. Ik geloof dan ook niet meer in Sinterklaas.

Ik geloof tegenwoordig wel weer in de Duivel, en zulks op goed-weten-schappelijke gronden. Jaren lang heb ik het niet gedaan, maar ik ben er toch weer toe overgegaan, toen ik zag, dat ik de Duivel beschouwen kon als de Schepper van het socialisme en van de gamma-wetenschappen. Dit is een wetenschappelijke vondst van belang, want het verklaart een heleboel.

Ik moest weer aan de Duivel denken, toen ik jongstleden woensdag na het avondeten de honden uitliet. Op de hoek van de Kuilen kwam een raar mannetje het Broek uitgemarcheerd. Hij droeg leren handschoenen en met zijn gebalde vuisten gesticuleerde hij ritmisch, maar ook wat schokkerig en krampachtig. Hij trof me als een kruising tussen een tamboer-maitre en een terrorist-in-opleiding,

De grootste wan de twee honden, die los liep, stoof donker-blaffend op de vreemde wandelaar af, die ijlings van marcheren naar achteloos lopen overging, de vuisten liet verslappen en de armen langs het lijf liet slingeren alsof er niets aan de hand was geweest. Maar zowel de honden als ik hadden de strijdmacht, die hij zoeven nog aanvoerde, zien oplossen in het Niets. Ziende, dat hij zijn werk naar bevrediging had volbracht, gaf mijr hond nog drie dreigende blaffen in de buurt van 's mans broek, bij wijze van waarschuwing de troep niet weer ten tonele te voeren, zodra hij zijn hielen gelicht had. Voldaan keerde hij bij mij terug, kwispelend naar mij en af en toe nog dreigend omkijkend naar zijn verslagen vijand.

Ik had de hond natuurlijk op zijn donder moeten geven, want zoiets kan echt niet: mensen zouden een hartverlamming kunnen krijgen als zo'n blaffend gevaarte op ze af komt stormen. Maar ik kon dat standje niet opbrengen, want ik vond het zelf zo'n onheilspellend mannetje dat ik als hond ook vast blaffend zijn pose had vernietigd. En zo bleef ik achter met de twee honden en het raadsel welke fantastische droom verstoord was.

Terwijl we doorwandelden en ik met de honden nog wat van gedachten wisselde over wat we net hadden meegemaakt, kreeg onze marcherende aanvoerder allengskens duidelijker de gedaante van een eng fanaticusje. De denkbeeldige troep, die eerst nog een fanfare had kunnen zijn, nam steeds duidelijker de vormen aan van een gewapende bende, van een angstaanjagend heilsleger, dat, opgezweept door de man met de leren vuistjes, te vuur en te zwaard een zijnsdunkens betere wereld zou stichten. Plotseling begreep ik, dat we een man waren tegengekomen, die duidelijk behekst was: de man met de leren vuistjes was van de Duivel bezeten!

Ik had dat nog nooit zo van nabij meegemaakt, maar het is —enfin: dat begrijp U wel: het is nu al bijna een week later en ik praat er nog over— een ervaring, die je niet in de koude kleren gaat zitten. Plotseling begreep ik de heksenweegschaal, en begreep ik, hoe wie daarop te licht bevonden werd, op de brandstapel terecht kwam. Ik denk, dat er voor beheksten wel weer weegschalen en brandstapels zullen komen. Als ik gevraagd word, zal ik zeggen, dat ze van mij met de gamma-wetenschappers mogen beginnen.


Negende toespraak tot mijn studenten, najaar 1976.

Verleden week heb ik mijn twijfels geuit over de zg. "gamma-wetenschappen" of wat in het Engels zo sprekend met "the soft sciences" wordt aangeduid. Als informatici dienen wij van deze beweging niet alleen op de hoogte te zijn, wij dienen er zelfs voor op onze hoede te zijn, verantwoordelijk als deze beweging is voor het geestelijk rottingsproces, dat zich aan de zelfkant van de informatica afspeelt. Je vraagt je in gemoede af hoe dit heeft kunnen gebeuren; het is niet onmogelijk, dat alleen de verbale overeenkomst in warrige hoofden het idee heeft doen pastvatten, dat "software" voor de "soft sciences" een vanzelfsprekend werkterrein zou zijn. Vergist U zich niet: in weerwil van de naam is "software engineering" een "hard science" bij uitstek!

Laat mij me tot een enkel symptoom van het gesignaleerde rottingsproces beperken: "Software metrics", geschreven door Tom Gilb en in 1976 verschenen bij "Studentliiteratur ab." te Lund, Zweden. Onthoudend dat goede wijn geen krans behoeft, citeren wij eerst wat gebral van de achterkant:

"Software metrics is shown to be simple and straightforward, as well as resulting in a consistent money and time saving. This is the immediate future of the computing profession. This is the key to control over large software projects. This is the turning point where programming and software system design moves from individual art to an engineering profession. There can be no question about where we are going. The only question is, are you going with us?"

De rhetorische vraag waarmee dit citaat eindigt, is een fijn staaltje van chantage, dat als zodanig het onthouden waard is.

Vol hoop slaan we het boek open. In het begin stoten we al op de uitdrukking "to measure all the critical factors" een pagina verder gaat het over "measuring all critical software concepts". De uitdrukking "to measure a concept" is natuurlijk abominabel, even kunnen we het nog beschouwen als slordig woordgebruik, als hij zijn eerste hoofdstuk begint met de analogie van de meting van een physische grootheid. Bij doorlezen moeten wij evenwel tot de conclusie komen, dat de auteur van het idee van de meting van een physische grootheid geen snars begrepen heeft. Hij gaat voorbij aan het feit, dat een physische grootheid —of het nu spanningsverschil, kracht of trage massa is— ten eerste slechts ingevoerd kan worden bij gratie van experimenteel verifieerbare eigenschappen, en ten tweede zo goed gedefinieerd moet zijn, dat a priori vastgesteld kan worden, of een voorgestelde meetprocedure adequaat zal zijn of niet. Maar mijnheer Gilb definieert zijn "concepts" niet: hij geeft slechts een procedure om tot een getalwaarde te komen. Om U een idee te geven over wat mijnheer Gilb een definitie noemt, citeer ik:

"Definition: Logical complexity is a measure of the degree of decision-making logic in the system."

Het is duidelijk dat dit concept van "logical complexity" weinig experimenteel verifieerbare eigenschappen bezit. Het is ook duidelijk, dat deze definitie nauwelijks de voorgestelde meetprocedure kan rechtvaardigen nog ontzenuwen. Voor Uw informatie, de "absolute logical complexity" van een programma is het totale aantal IF-statements, de "relative complexity" krijg je door dit aantal te delen door het totals aantal statements. Vier-en-twintig bladzijden later wordt U toevertrouwd dat:

"Structural complexity [is] a measure of the degree of simplicity of relationships between subsystems."

De procedure om tot een getal te komen zal ik U besparen.

Ik heb U hierboven slechts twee van zijn ongeveer vier dozijn "metrics" genoemd. Stuk voor stuk zijn ze van nog minder allooi dan het zg. "Intelligentie Quotient", waarvan vele psychologen en helaas nog veel meer leken denken, dat het intelligentie "meet". Alle zijn ze gebaseerd op de misconceptie, die ook alle idiote engquetes schraagt, nl. dat het quotient van twee grote aantallen wel zinvol moet zijn, omdat individuele afwijkingen of onnauwkeurigheden dan wel uitgemiddeld zijn. Het middelen van onzin om tot de hoogste wijsheid te komen.

Maar past U op! Managers van grote software projecten zijn grote voorstanders van "conversational program development", waarin geen programmeur meer schrijft maar een direct aangesloten toetsenbord bedient. De reden is, dat dan het systeem en passant voor elke programmeur de zg. "programmer quality metrics" kan bijhouden, getallen, waarop dan later promotiebeslissingen gefundeerd kunnen worden. En denkt U alstublieft niet, dat ik hier een 1984-schrikbeel schilder: ik beschrijf de werkelijkheid van vandaag, in bv. MIT. Een misschien geruststellende gedachte is, dat deze schandelijke praktijk in MIT beperkt lijkt te zijn tot zijn.... Alfred P. Sloan School of Management.


Tiende toespraak tot mijn studenten, najaar 1976.

Management science is helaas niet de enige gamma-wetenschap, waarvoor ik U als toekomstige informatici moet waarschuwen; psychologie is een andere.

De ontdekking, dat programmeren zo moeilijk was, dat we het collectief eigenlijk niet konden, viel in de zestiger jaren. Het was juist in de tijd, dat FORTRAN, COBOL en ALGOL 60 algemeen ingang vonden, programmeertalen die ieder voor zich juist ontworpen waren om programmeren makkelijker te maken dan het voordien was. Deze ontdekking was een koude douche, te meer omdat de meesten van ons zich nog de prehistorie der programmering herinnerden en terecht doordrongen waren van hoe'n enorme verbetering deze programmeertalen waren.

De conclusia, dat in het hele proces de mens wel eens een relatief zwakke schakel wezen kon, drong zich onontkoombaar op. Het is dan ook niet verwonderlijk, dat op het IFIP Congres in 1965 te New York Peter Naur spreekt over "The place of programming in a world of problems, tools and people.", dat Stanley Gill spreekt over "The changing basis of programming." en ik spreek over "Programming considered as a human activity." Ik citeer uit deze artikelen:

"For good or bad, the characteristics of the programming language will shape the thinking of people and their conception of problems."

"Another practical problem, which is now beginning to loom very large indeed and offers little prospect of a satisfactory solution, is that of checking the correctness of a large program."

"In the design of programming languages one can let oneself be guided primarily by considering "what machines can do". [...] it seems just as important to take into consideration "what Man can think"."

Het is na het voarafgaande begrijpelijk, dat we toen gekeken hebben wat psychologen ons te bieden hadden. Dat was helaas haast niets; het werk van wiskundigen als Hadamard en Polya was relevanter. Het probleem met de psychologen was, dat het merendeel was blijven steken in de studie van het rattengedrag en nauwelijks licht kon werpen op de vraag hoe een mensenhoofd een heel moeilijk probleem oplost. Dit onvermogen is historisch goed verklaarbaar: het gros van de psychologen heeft nog nooit een heel moeilijk probleem gezien, laat staan opgeslot. We hadden met evenveel kans op succes een dove kunnen vragen onze piano te stemmen. De ellende is, dat vandaagde-dag de dove —on-gevraagd!— nu precies dat probeert.

Voor het IFIP Congres 1977 in Toronto is een artikel aangeboden onder de titel "Computer Programming as Cognitive Process.". De auteur komt van de afdeling Onderwijs Research van een niet nader aan te duiden buitenlandse universiteit. U hoeft niet te weten wat een "cognitive process" is, de auteur weet dat waarschijnlijk zelf ook niet zo precies, want op pagina 3 heeft hij het over "programming languages as cognitive processes". Ik citeer uit de samenvatting:

"It is argued that the evolution of computer languages reflects some of the general characteristics of human cognitive potential."

Tja, omdat programmeertalen voor mensen door mensen ontworpen zijn, lijkt dit niet een verbijsterende conclusie; de auteur heeft er vijf kantjes voor nodig, en, alsof er geen theorie van berekenbare functies bestaat, komt hij tot de diepzinnige uitspraak dat zaken als iteratie en recursie "are psychological rather than computational necessities", en merkt hij op "In some narrow sense, our programming capability transcends human computational power." Prachtig gezegd, maar wat betekent het? Zo leutert het artikel door, totdat hij aan het einde onder meer voorspelt "the development of languages which approach the flexibility and power of natural languages", een voorspelling die mooi klinkt, zolang je niet probeert je af te vragen, wat er nu eigenlijk voorspeld wordt.

Ik heb een beetje van die onzin geciteerd omdat U zonder dat zou kunnen denken, dat ik overdrijf. Ik doe dat echt niet. Leest U maar eens wat artikelen uit de "Journal of Man-Machine Studies": dan zult U zien dat, nadat een dove de piano heeft gestemd, andere doven niet zullen horen hoe vals hij is.


transcribed by Carl Ludwigson
revised Thu, 15 Nov 2007