Broncode is als bladmuziek
Herbert Blankesteijn
In februari is Microsoft door
de rechter in het antitrustproces veroordeeld tot het prijsgeven van delen van
de broncode van Windows XP. Wat is broncode en waarom speelt die hier zo'n
belangrijke rol?
Een computerprogramma is als
het ware een lijst opdrachten aan de machine. Hier is een programmaatje uit een
twintig jaar oud boekje over programmeren (Basic voor de ZX Spectrum):
10 REM Temperature Conversion
20 PRINT "deg F",
"deg C"
30 PRINT
40 INPUT "Enter deg
F", F
50 PRINT F, (F-32)*5/9
60 GO TO 40
Dit programma rekent graden
Fahrenheit om naar Celsius. In het geval van Windows gaat het al gauw om een
miljoen keer zoveel 'tekst'. Programmatekst als hierboven heet 'broncode'. Je
kunt eraan zien hoe een programma werkt.
Wie een commercieel
computerprogramma heeft, beschikt niet over deze broncode. Een programma op de
pc heeft voor de gebruiker de gedaante van een icoon. Zo'n icoon verwijst naar
een bestand (klik er maar eens op met de rechter muisknop en dan op
'Eigenschappen') waarvan de naam vaak eindigt op '.exe'. Dit bestand is een
soort vertaling van de broncode. De
programmeertaal is namelijk een hulpmiddel om het programmeren te
vergemakkelijken; de computer begrijpt alleen code die nog verder van de belevingswereld
van mensen afstaat.
Om een vergelijking te maken:
als het .exe-bestand op de pc zoiets is als de muziek op een audio-cd, dan is
de broncode de partituur. Heb je een muziek-cd, dan kun je naar de muziek
luisteren. Zelf musiceren, en er eventueel het een en ander aan veranderen, is
alleen mogelijk als je over de bladmuziek beschikt. Iets als 'op het gehoor de
muziek naspelen' heb je in de wereld van computerprogramma's ook. Het heet reverse
engineering (achteruit uitvinden) en het komt erop neer dat je iets maakt
wat precies zo werkt als het programma dat je wilt namaken. Maar daarvoor moet
je wel zelf kunnen programmeren, zoals je ook goed in muziek thuis moet zijn om
een stuk op het gehoor na te spelen.
In het proces tegen Microsoft
werken nu negen van de achttien oorspronkelijk procederende staten met Justitie
aan een schikking. Negen andere staten willen een echte straf, bijvoorbeeld een
verplichting voor Microsoft om een versie van Windows uit te brengen zonder
extra's als Internet Explorer en Mediaspeler. Het integreren van deze programma's
in Windows is de reden dat Microsoft wegens misbruik van monopoliemacht voor de
rechter is gesleept en schuldig bevonden.
Microsoft zegt dat het
technisch onmogelijk is Internet Explorer en Media Player uit Windows te
slopen. Dat is onzin: je kunt alles programmeren, het is maar hoe graag je dat
wilt. Daar komt bij dat de genoemde programma's hun leven zijn begonnen als
aparte software. Hoe dan ook, de rechter wil bewijs: 'Laat maar zien, hoe
technisch onmogelijk dat is.' En daarvoor is de broncode nodig.
Het ziet er niet naar uit dat
Microsoft alle broncode moet overdragen. En ook zal de broncode niet openbaar
gemaakt worden. Een deskundige zal een en ander beoordelen. Andere vragen die
leven over Windows zullen daarom waarschijnlijk niet worden beantwoord, zoals:
kan Microsoft via internet zien of er illegale software op je pc staat. Het
antwoord daarop is in de broncode verborgen. Vorige week werd bekend dat
Microsoft de mogelijkheid heeft om te zien welke muziek en films worden
afgespeeld in Windows Mediaspeler versie 8, die in Windows XP zit. Hierover
wordt een bestand bijgehouden op de pc van de gebruiker, volgens Microsoft om
te voorkomen dat de gebruiker informatie downloadt die hij al heeft. Maar het
bestand heeft de vorm van een cookie, en cookies zijn altijd bedoeld om via
internet te worden gelezen door websites.
Het doet je verlangen naar
een versie van Windows zonder gratis extra's, en met een bekende broncode.