De verbeelding van software

PDF Versie

Software maakt dingen mogelijk die
vroeger ondenkbaar waren. Alleen al
het idee dat je een apparaatje van nog
geen 100 gram bij je draagt waarmee
je met de hele wereld kunt communiceren
in tekst, beeld, en geluid.
Zaken als mobieltjes spreken tot de
verbeelding, en het is software die
deze verbeelding mogelijk maakt.

Productie van software is echter
geen simpele zaak: vaak gaan dingen
mis, en daarom is onderzoek in de
breedste zin naar de productie van
software noodzakelijk. Dat progressie
van software-onderzoek minder
snel gaat dan de toepassingen doen
vermoeden, wordt pijnlijk duidelijk als
we een citaat aanhalen uit 1975: "The
tar pit of software engineering will
continue to be sticky for a long time
to come. One can expect the human
race to continue attempting systems
just within or just beyond our reach;
and software systems are perhaps
the most intricate and complex of
man's handiworks. The management
of this complex craft will demand
our best use of new languages and
systems, our best adaptation of
proven engineering management
methods, liberal doses of common
sense, and ... humility to recognize
our fallibility and limitations." Aldus
Frederick Brooks, die voor zijn bijdragen
de 'Nobelprijs voor Informatica'
won (de Turing Award).

Brook's decennia oude analyse is tot
de dag van vandaag nog relevant,
daarom is het zo goed dat er met het
Jacquard onderzoeksprogramma een
stapje in de goede richting wordt
gezet. De meeste mensen kennen
de naam van dit programma van de
term Jacquard-motief. Maar wat is
nu het Jacquard-motief? Het doet
denken aan het Paisley motief dat uit
India komt en het jonge blad van een
dadelpalm verbeeldt. Rond de 1760-er
jaren waaide dat motief over naar het
Schotse textielstadje Paisley, waaraan
het zijn naam sindsdien aan dankt.
Jacquard heeft inderdaad met weven
te maken, en gelijktijdig met het
Paisley motief werd in de 1760-er jaren
ook Joseph-Marie Jacquard geboren.

Maar als je googled op Jacquard
motiefjes, vindt je geen afbeeldingen
met een onderliggend basismotief
zoals een dadelpalmblad of Noorse
trui. Er is namelijk helemaal geen
Jaquard-motief, gelijk een Schotse
ruit. Als we het woordenboek erop
naslaan, blijkt dat het om een toestel
gaat dat aan een weefgetouw zit om
ingewikkelde, veelkleurige patronen
te weven.

Dat patroon zou een Schotse ruit of
Paisley kunnen zijn, en dus kunnen
beiden een Jacquard-motief zijn. Dat
is bij software niet anders: dat is ook
een vaak complex en bont geschakeerd
hulpmiddel om ingewikkelde
(bedrijfs)processen mogelijk te
maken.

De parallellen tussen software
engineering en de weefindustrie
zijn treffend. De te weven patronen
werden aan de Jacquard-machine
gevoerd middels kartonnen kaartjes
met gaatjes erin, die de patronen
en hun kleurstelling voorprogrammeerden.
Dat is precies de ponskaart
die in de beginjaren van de software
engineering het middel was om
programma's op te slaan. De computer
voerde je toen ook een doos met
kaartjes om een ingewikkeld bedrijfsproces
te ondersteunen, of uberhaupt
mogelijk te maken.
Denk maar aan de acceptgiro's van
weleer waar ons betalingsverkeer
op stoelde.

Om te weven moest je uiteraard
eerst een weefprogramma schrijven.
Dat ging net als programmeren van
computers: een schets van het ontwerp
werd overgenomen op speciaal papier
waar het grid van de te weven stof al in
zat. Dat doet denken aan het speciale
papier met voorgedrukte kolommen
waar men met de hand Cobol op
noteerde. Dan werd pixel voor pixel
dat gridplaatje opnieuw ingekleurd
door een specialist. Bij veelkleurige
complexe plaatjes duurde dat werkje
dagen achtereen. Als dit gedigitaliseerde
ontwerp klaar was ging het
naar een kaartenponser, die het
ontwerp regel voor regel vertaalde in
een verzameling Jacquard-kaarten. Dat
doet denken aan zalen met datatypisten
die allerlei computerformulieren
converteerden naar ponskaarten.

Net als andere bedrijfsprocessen kun
je ook het Jacquard-motief preparatieproces
uitdrukken in software. En
dat is ook gebeurd met alle voordelen
van dien: fouten verwijderen voordat
je gaat weven, sterk verhoogde
productiviteit in het preparatieproces,
opslag van motieven op digitale
media, scannen van schetsen die je
geweven wilt hebben, previewen
van het eindresultaat op het scherm,
tot aan CAD/CAM omgevingen om
alles volledig te automatiseren. Het
resultaat: computer jacquard sokken
worden momenteel in China met een
snelheid van driehonderdduizend paar
per maand voor 29 dollarcent per paar
geproduceerd.

Een computer zonder software is niets
meer dan een veel te dure maar slechte
broodrooster. Pas als je die van de
juiste programmatuur voorziet kun je
kritische bedrijfsprocessen mogelijk
maken, hoog productief krijgen, en
ondersteunen. Zoals software voor
weefautomatisering. Software kan
inderdaad van alles wezen, en is
daarom net zo lastig te verbeelden als
het Jacquard-motief.

Je zou dus kunnen zeggen dat software
het Jacquard-motief van de informatietechnologie
is. Geeft dat een beeld?

Prof. dr. Chris Verhoef is hoogleraar
informatica aan de Vrije Universiteit in
Amsterdam. Hij schrijft regelmatig columns.

Meer weten over de wondere wereld van ICT 
in Jip en Janneke taal? Ga dan naar de
knipselkrant van Chris Verhoef