Sun gelooft in de kracht van ‘open source’ software-ontwikkeling. Maar voor echte openheid is het wel essentieel dat er duidelijke afspraken worden gemaakt over standaarden, schrijft Hans Appel.
Al direct vanaf de oprichting heeft Sun Microsystems een onwankelbaar geloof en vertrouwen gehad in openheid, in het vrijelijk beschikbaar stellen van software-specificaties opdat zoveel mogelijk innovaties op zoveel mogelijk plaatsen, sneller en tegen lagere kosten kunnen plaatsvinden. In dat opzicht geloven wij ook in de kracht van ‘open source’ software-ontwikkeling. Voor echte openheid is het echter essentieel dat er duidelijk afspraken worden gemaakt over standaarden.
Afspraken waaraan iedereen zich dient te houden en waarbij naleving en coördinatie door een onafhankelijke instantie worden geregeld. Dit om een wildgroei van varianten, zoals in het verleden bij Unix wel is gebeurd, tegen te gaan. Dit model, momenteel in grote lijnen ook toegepast bij de ontwikkeling en standaardisatie van Java, combineert de kracht van horizontale ontwikkeling met de noodzakelijke waarborging van kwaliteit. De vrijelijk, of tegen zeer geringe kosten beschikbare besturingssoftware kan dan vervolgens weer de basis vormen voor commerciële applicaties. Daarop vindt dan vervolgens de concurrentie plaats. Concurrentie die eveneens noodzakelijk is voor innovatie en vooruitgang.
Bedrijfskritische applicaties
Zodra applicaties mede verantwoordelijkheid gaan dragen voor het reilen en zeilen van een bedrijf, met andere woorden: zodra applicaties bedrijfskritisch zijn, zal elke afnemer niet alleen willen dat de software aan bepaalde eisen voldoet en zich bewezen heeft, maar ook dat er een leverancier achter staat die zich voor het goed functioneren garant stelt. Die als aanspreekpunt dienst doet. Commercieel, verticaal ontwikkelde software blijft daarom essentieel. Het aangehaalde voorbeeld van slechte (verticale) softwarekwaliteit, de reboot-ziekte, is inderdaad een extreme vorm van proprietary ontwikkelde software, maar er zijn evengoed talloze voorbeelden te bedenken van kwalitatief zeer hoogwaardige verticaal ontwikkelde software of van slechte horizontaal ontwikkelde software.
Linux
Een besturingssysteem staat per definitie heel dichtbij de elektronica van een computersysteem. Het moet de elektronische bouwstenen zeer efficiënt besturen en alle unieke (specifieke) mogelijkheden ondersteunen. Op die manier zorgt het voor dingen zoals dynamic reconfiguration en alternate pathing om maar eens twee voorbeelden te noemen. Die functies zijn nodig om aan eisen van high availability en high security te voldoen. Eisen en garanties die in een mission critical omgeving worden gesteld.
Zulke onderwerpen zijn zo complex en ingrijpend voor hardware en besturingssysteem dat hiervoor gemiddeld een ontwikkeltijd nodig is van een jaar of drie. Ik zie nog niet dat dit soort functies efficiënt en adequaat in een besturingssysteem als Linux ontwikkeld worden.
Wanneer Henk Klöpping (Computable, 16 oktober) stelt dat de keuze van de technologisten binnen een paar jaar ook doordringt op de werkplekken van niet-technologisten, notabene ‘in een niet te stuiten golf’, getuigt hij wel van een erg blind geloof in technologie. Waarbij de wens ongetwijfeld de vader van de gedachte is. De praktijk is echter weerbarstiger. Vijfennegentig van de honderd door technologisten met liefde omarmde vindingen breken nooit echt door. Ik kan hem aanraden het boek Crossing the Chasm van de Amerikaanse auteur Geoffrey Moore daar maar eens op na te slaan.
Desondanks zou ik open source computing zeker niet willen afdoen als een speeltje voor techneuten, maar de conclusie dat het de toekomst is van software-ontwikkeling gaat mij te ver.
Hans Appel,
marketing manager
Sun Microsystems Nederland