Ontwerp Collegebeschrijving "Inleiding tot de kunst van het programmeren."

Het is de bedoeling van dit college, dat de student vertrouwd wordt met een aspect van de taak van de programmeur, dat hij nl. leert voor gegeven opgaven opgaven hand in hand een rekenproces te concipieren en een algoritme te schrijven, die dit rekenproces kan oproepen. Het college is niet een opleiding in het gebruik van specifieke programmeertalen of machines, integendeel: het beoogt de student vertrouwd te maken met een begrippenarsenaal, dat hem in staat stelle rekenproces en algorithme te structureren op een wijze, die herkenbaar zal blijven, ongeacht het specifieke gereedschap, dat hij later komt te bespelen. Ik wil hem een stijlbesef bijbrengen, dat bij het maken van "grote programma's" er beslissend voor is of de opgave überhaupt tot een goed einde gebracht kan worden en dat bij "kleine programma's" sneller tot een beter programma leidt.

Ik heb dit college nu (voorjaar 1969) tweemaal gegeven. Ik verwacht dat de (in het verleden wel aangestipte) problemen die specifiek zijn voor grote programma's, in de komende jaren meer op de achtergrond zullen raken –en we llicht het onderwerp van een apart college worden– en dat dit college, om een hogere "vertrouwdheidsgraad" te bereiken, meer kleine voorbeelden zal behandelen en van meer oefenmateriaal voorzien zal worden.

Ter vermijding van misverstand: dit college gaat niet in de eerste plaats over rekenmachines, noch over programma's, maar over de activiteit programmeren. Om valse verwachtingen te voorkomen: ik kan geen recepten geven die een gebrek aan inventiviteit kunnen compenseren, ik kan slechts proberen de student vertrouwd te maken met een ideaal van logische hanteerbaarheid.

Als voorkennis verwacht ik niet meer dan het algemene college "Algorithmen" uit het vierde semester.

Tenslotte: voor wie is dit college bestemd? Ik zou zeggen, voor allen, die verwachten later met automatische rekenmachines te maken te zullen krijgen. (Diep in mijn hart hoop ik meer, want het eigenlijke, onuitgesproken onderwerp van dit college is zoiets als "Hoe tem je complexiteit?" en dat dit toevallig op de programmeurstaak is toegespitst is alleen maar een gevolg van mijn verleden!)


E.W.Dijkstra