Joel on Software

Joel on Software   Joel over Software

 

Andere "Joel on Software" artikelen in het Nederlands

Andere "Joel on Software" artikels in het Engels

Email de auteur (uitsluitend in het Engels)

 

Strategische Brief No. 5


Door Joel Spolsky
Vertaald door Jeroen van Oosten
Geredigeerd door Adriaan van den Brand
12. 6. 2002

Tijdens mijn studie heb ik 2 economievakken gevolgd: macro-economie en micro-economie. Macro-economie zat vol met theorieën als "lage werkeloosheid bevordert inflatie", hetgeen in de praktijk nooit standhield. Maar het micro-spul was gaaf en nuttig tegelijk. Het bevatte veel interessante concepten als vraag en aanbod die ook echt werken. Bijvoorbeeld: als je een concurrent hebt die zijn prijzen verlaagt, dan gaat de vraag naar jouw product omlaag tenzij je meegaat.

In de aflevering van vandaag laat ik zien hoe één van deze concepten de recente acties verklaart van sommige bekende computerbedrijven. Ondertussen viel mij het volgende op aan Open Source software: veel van de bedrijven die geld steken in het ontwikkelen van Open Source software doen dit omdat het voor hun strategisch belangrijk is, niet omdat ze plotseling niet meer in kapitalisme geloven en verliefd zijn geworden op vrijheid-van-meningsuiting.

Ieder product op de markt heeft vervangers en aanvullingen. Een vervanger is een ander product dat je misschien koopt als het eerste te duur is. Kip is een vervanger voor rundvlees. Als je een kippenboerderij hebt en de prijs van rundvlees gaat omhoog, willen meer mensen kip eten en zul je dus meer verkopen.

Een aanvulling is een product dat je meestal bij een ander product koopt. Benzine is een aanvulling voor auto's. Operating systems zijn een klassiek voorbeeld van aanvulling op computerhardware. Een kinderoppas is aanvullend op een gezellig dineetje. In een dorp waar het lokale vijf-sterren restaurant een speciale aanbieding heeft tijdens Valentijn, verdubbelen de oppassers hun prijs (nou ja, in de praktijk worden 9-jarigen vroegtijdig geronseld).

De vraag naar een product zal toenemen als de aanvullingen goedkoper worden.

Ik herhaal dat nog eens, want misschien ben je weggesuft en dit is heel belangrijk. De vraag naar een product gaat omhoog wanneer de prijs van de aanvulling lager wordt. Bijvoorbeeld: als vliegen naar Miami goedkoper wordt, gaat de vraag naar hotelkamers in Miami omhoog -- want meer mensen zullen naar Miami vliegen en hebben dus een kamer nodig. Als computers goedkoper worden, kopen meer mensen een computer en die hebben allemaal een operating systeem nodig, dus stijgt de vraag naar operating systemen, hetgeen weer kan leiden tot prijsstijgingen.

Op dit punt aangekomen zijn er altijd mensen die de boel in de war proberen te schoppen door te zeggen: "Aha! Maar Linux is GRATIS!" Welnu, als een econoom naar de prijs kijkt, kijken ze naar het totale prijsbeeld, inclusief zulke ongrijpbare termen als de tijd die het kost om alles op te zetten, iedereen om te scholen en bestaande processen aan te passen. Alles dat we bij elkaar "total cost of ownership" noemen.

Ten tweede, door gebruik te maken van het-is-gratis-dus-het-kost-niks argument, menen deze voorstanders dat de regels van de economie niet voor hun gelden omdat ze alles fijn met 0 kunnen vermenigvuldigen. Hier is een klein voorbeeld: toen Slashdot aan Linux ontwikkelaar Moshe Bar vroeg of toekomstige Linux kernels compatibel zou zijn met bestaande device drivers, zei hij dat dat niet nodig was. "Gesloten software kost zo'n 50-200 US$ per regel geteste code. Die prijs is niet van toepassing op Open Source software." Moshe gaat verder met te beweren dat het prima is om bij iedere nieuwe kernel versie de bestaande drivers op de schroothoop te gooien omdat het omschrijven van die drivers niets kost. Wat een onzin. Hij beweert dus dat een klein beetje tijd spenderen aan code om de kernel compatibel te houden hetzelfde is als een gigantische hoeveelheid tijd verkwisten om iedere driver te herschrijven, omdat beide getallen gelijk zijn als je ze vermenigvuldigt met hun "prijs", die hij op nul stelt. Dit is je reinste kolder. De duizenden of miljoenen uren die het ontwikkelaars kost om iedere versie van iedere driver na te lopen moet ten koste gaan van iets. En tot dit gedaan is, loopt Linux weer achteraan in de markt omdat het bestaande hardware niet ondersteunt. Zou het niet beter zijn om al die "nul kosten" te besteden aan het verbeteren van Gnome? Of aan ondersteuning van nieuwe hardware?

Gedebugde code, gesloten of Open Source, is NIET gratis. Zelfs al betaal je er niet voor met klinkende munt, dan nog heeft het operationele en tijds-kosten. Er is een beperkt aantal vrijwillige manuren beschikbaar voor Open Source projecten, en elk Open Source project vist in dezelfde beperkte hoeveelheid resources. Enkel de meest sexy projecten hebben meer ontwikkelaars dan ze kunnen gebruiken. Kortom, ik ben niet erg onder de indruk van mensen die zo wilde economische theorieën over gratis software proberen te bewijzen, want bij mij is delen door nul nog steeds flauwekul.

Eazel closed.Open source is niet vrijgesteld van de wetten van de zwaartekracht of economie. Dit hebben we gezien met Eazel, ArsDigita, Het Bedrijf Eerder Bekend Als VA Linux en een aantal andere pogingen. Maar er is iets anders gaande dat maar bijzonder weinig mensen uit de Open Source wereld door hebben: een flink aantal grote bedrijven met verantwoordelijkheden tegenover aandeelhouders, investeren veel geld in Open Source software, meestal door een groot team programmeurs te betalen. En dit wordt verklaard door het principe van de aanvullingen.

Nogmaals: de vraag naar een product neemt toe waneer de prijs van een aanvulling daalt. In het algemeen is het in het strategisch belang van een bedrijf om de prijzen van hun aanvullingen zo laag mogelijk te krijgen. De theoretisch laagst mogelijk prijs die vol te houden is is de straatprijs -- de prijs die je krijgt wanneer je een aantal concurrenten hebt die goederen aanbieden die nagenoeg hetzelfde presteren. Dus:

Slimme bedrijven proberen de marktwerking op de aanvullingen op hun producten te stimuleren.

Als dit je lukt, dan zal de vraag naar jouw product toenemen en kun je er dus meer voor vragen en meer omzet behalen.

Toen IBM de PC-architectuur ontwierp, gebruikten ze kant-en-klare componenten in plaats van zelfgemaakte ontwerpen, en ze documenteerden nauwkeurig de gebruikte interfaces tussen de delen in de (revolutionaire) IBM-PC Technical Reference Manual. Waarom? Zodat andere fabrikanten mee konden doen. Zolang je de interface kunt aanspreken, kan jouw product gebruikt worden in PC's. Het doel van IBM was om de markt voor uitbreidingen e.d. te bevorderen, hetgeen weer een aanvulling is op de markt voor PC's. Dat is ze heel aardig gelukt; binnen no-time waren er ontelbare bedrijfjes die geheugenkaarten, harde schijven, grafische kaarten, printers, enz. aanboden. Goedkope uitbreidingen betekende meer vraag naar PC's.

Toen IBM een licentie van het het PC-DOS operating systeem van Microsoft kocht, was Micrsoft wel zo verstandig geen exclusieve licentie te verkopen. Dat maakte het voor Microsoft mogelijk om het zelfde ding aan Compaq en honderden andere OEMs 1 te verkopen, die geheel legaal de IBM PC gekloond hadden door middel van IBM's documentatie. Het doel van Microsoft was om de PC goed(koop) op de markt te krijgen. Al heel snel was de PC zelf in feite een gemeengoed, een standaard ding, met immer dalende prijzen, voortdurend stijgende rekenkracht en zeer lage marges die het heel moeilijk maken om winstgevend te zijn. De lage prijzen zorgen uiteraard voor een groeiende vraag. Groeiende vraag naar PC's betekende groeiende vraag naar hun aanvulling, MS-DOS. Als alles verder gelijk is, hoe hoger de vraag naar een product, hoe meer geld je er aan verdient. En daarom kan Bill Gates een land kopen en jij niet.

Dit jaar probeert Microsoft het wederom: hun nieuwe spelletjesconsole, de XBox, gebruikt standaard PC onderdelen in plaats van eigengemaakte. Het idee hierachter (uitgelegd in dit boek) was dat hardware ieder jaar goedkoper wordt, zo dat de prijs van de XBox mee kon zakken. Helaas lijkt dit in tegenovergestelde richting te werken: blijkbaar zit standaard PC hardware al op zijn grenzen, dus de kosten om een XBox te maken zakken niet zo hard als Microsoft zou willen. Het andere deel van Microsoft XBox's strategie was om DirectX te gebruiken, een grafische bibliotheek die gebruikt kan worden om code te schrijven die op allerlei grafische chips draait. Het doel is om de videochip gemeengoed te maken, de prijs ervan te verlagen zo dat er meer spelletjes verkocht zullen worden, waar de echte winsten gemaakt worden. Maar waarom proberen de videochip makers dit niet met de spellen? Dat is namelijk een stuk lastiger. Als het spel Halo goed loopt, dan zijn er geen vervangers. Je gaat per slot van rekening ook niet naar de bioscoop om "Star Wars: Attack Of The Clone" te gaan zien, om vervolgens toch maar een Woody Allen film te gaan bekijken. Het kunnen allebei prima films zijn, maar het zijn geen gelijkwaardige vervangers. Welnu: wat zou je liever zijn, een spelletjes-maker of een videochip fabrikant?

Maak je aanvullingen tot een gemeengoed.

Het doorgronden van deze strategie verklaart tot op zekere hoogte waarom veel commerciële bedrijven in grote mate bijdragen aan Open Source. Laten we er een paar voorbeelden bekijken.

Kop: IBM investeert miljoenen om Open Source software te ontwikkelen.

Bewering: Dit doen ze omdat Lou Gerstner het GNU Manifesto heeft gelezen en besloten heeft dat hij kapitalisme eigenlijk helemaal niet leuk vindt.

Werkelijkheid: Ze doen dit omdat IBM een IT consultant bedrijf aan het worden is. IT consultancy is een aanvulling op enterprise software. Dus moet IBM enterprise software tot gemeengoed maken, en de beste manier om dat voor elkaar te krijgen is door ondersteuning van Open Source. En waarachtig, hun consultancy afdeling spint er goed garen bij.

Kop:Netscape Open Sourced hun webbrowser.

Bewering: dit doen ze om gratis code contributies te krijgen van mensen in Internetcafés uit Nieuw Zeeland.

Werkelijkheid: Ze doen dit om de webbrowser tot gemeengoed te maken.

Dit is Netscape's strategie geweest vanaf de allereerste dag. Kijk maar eens naar de allereerste Netscape persverklaring: de browser is "freeware". Netscape gaf de browser weg zodat ze geld konden verdienen aan de servers. Browsers en web-servers zijn klassieke aanvullingen. Hoe goedkoper de browser, hoe meer servers je verkoopt. Dit werd nooit zo duidelijk als in oktober 1994 (Netscape was stomverbaasd toen MCI binnen kwam wandelen met zó veel geld dat ze beseften dat ze ook konden verdienen aan de browser. Alleen stond dat niet in hun business plan).

Toen Netscape Mozilla als Open Source uitbracht deden ze dat omdat ze een kans zagen de kosten van het ontwikkelen van de browser omlaag te brengen. Zo kregen ze dan de gemeengoed voordelen tegen lagere kosten.

Later name AOL/Time Warner Netscape over. De server software, die geacht werd te profiteren van de browsers, deed het niet zo denderend en werd afgestoten. Waarom zou AOL/Time Warner dan doorgaan met investeren in Open Source?

AOL/Time Warner is een entertainment bedrijf. Entertainment bedrijven zijn de aanvullingen van allerlei soorten entertainment platformen, inclusief web browsers. De strategie van deze gigant is om het afleveren van entertainment -- via web browsers -- zo goedkoop te maken dat niemand er geld voor kan vragen.

Mijn argument is een beetje vertekend doordat ook Internet Explorer gratis is. Microsoft wilde ook de webbrowser tot gemeengoed verheffen, zodat ze desktop en server operating systemen konden verkopen. Ze gingen zelfs een stap verder een boden een verzameling programma's aan waarmee iedereen zijn eigen browser kon samenstellen; Neoplanet, AOL en Juno maakten allemaal gebruik van deze programma's. Aangezien IE gratis is, wat is dan het nut voor Netscape om hun browsers nog "goedkoper" te maken? Ze denken een stap vooruit; ze wilden voorkomen dat Microsoft een compleet monopolie op webbrowsers zou krijgen, zelfs gratis webbrowsers, omdat dat in theorie Microsoft de kans zou geven de prijs voor websurfen op een of andere manier op te hogen - bijvoorbeeld door de prijs van Windows te verhogen.

(Mijn arguments is zelfs nog zwakker omdat het vrij duidelijk is dat Netscape eigenlijk geen idee had wat het deed ten tijde van Barksdale. Een meer logische verklaring zou zijn dat de bovenste lagen van het Netscape management technologisch incompetent was, en ze geen andere keus hadden dan om mee te gaan met de ideeën die de ontwikkelaars hadden. De ontwikkelaars waren hackers, geen economen, en puur toevallig kwamen ze met een schema op de proppen dat met hun strategie strookte. Maar laten we ze het voordeel van de twijfel gunnen.)

Kop: Transmeta neemt Linus aan, betaalt hem om aan Linux te werken

Bewering: Ze deden het alleen maar voor de publiciteit. Zou je anders ooit van Transmeta gehoord hebben?

Werkelijkheid: Transmeta is een CPU bedrijf. De natuurlijke aanvulling op een CPU is een operating systeem. Transmeta wil dat zulke operating systemen gemeengoed worden.

Kop: Sun en HP betalen Ximian om aan Gnome te werken.

Bewering: Sun en HP ondersteunen gratis software omdat ze geloven in Bazaars, geen Kathedralen

Werkelijkheid: Sun en HP zijn hardware bedrijven. Zij bouwen dozen. Om geld te verdienen aan de desktop hebben ze een window systeem nodig, dat een aanvulling is op een desktop computer. Waarom gebruiken ze het geld dat ze aan Ximian betalen niet om hun eigen, gesloten window systeem te bouwen? Dat hebben ze geprobeerd (Sun met NeWS en HP met New Wave), maar dit zijn in weze hardware bedrijven met slechts rudimentaire software capaciteiten, dus moet een window systeem een goedkoop gemeengoed zijn, geen gesloten 'voordeel' waar men voor moet betalen. Dus hebben ze de jongens van Ximian ingehuurd om dezelfde reden dat Sun StarOffice kocht en er vervolgens de source van vrij gaf: om de software te veralgemeniseren en meer te verdienen aan de hardware.

Kop: Sun ontwikkelt Java; nieuwe "bytecode" systeem betekent Write Once, Run Anywhere (WORA).

Dit idee is op zich niet nieuw. Programmeurs hebben altijd geprobeerd om hun code op zoveel mogelijk verschillende machines te laten draaien. Microsoft gebruikte jarenlang haar eigen P-code compiler en een porteerbaar windows laagje waardoor Excel op de Mac, Windows en OS/2 draaide, én op Motorola, Intel, Alpha, MIPS en PowerPC hardware. Quark heeft een laag die Macintosh code onder Windows draait. De programmeertaal 'C' is soms omschreven als een hardware-onafhankelijke assembler taal.

Als jij je software overal kunt laten draaien, wordt hardware meer tot gemeengoed. Als hardware prijzen omlaag gaan, breidt de markt zich uit, hetgeen leidt tot meer vraag naar software (en de klant houdt meer geld over die nu gebruikt kan worden om de software duurder te maken).

Sun's enthousiasme voor WORA is op zijn zachts gezegd vreemd, want Sun is een hardware bedrijf. Hardware tot gemeengoed maken is wel het laatste dat ze zouden willen doen.

Oeoeoeoeoeoeps!

Sun is de losgeslagen stier van de computerindustrie. Niet in staat zijnde om voorbij hun enorme vrees en angst voor Microsoft te kijken, baseren ze strategieën op woede in plaats van eigenbelang. De twee strategieën van Sun zijn a) om software tot gemeengoed te maken door het promoten en verspreiden van gratis software (StarOffice, Linux, Apache, Gnome, enz.) en b) door hetzelfde te doen met hardware door Java te promoten, met haar bytecode architectuur en WORA. Ok Sun, vraagje: wanneer de muziek stopt, waar ga je zitten? Zonder duidelijke voordelen in hard- of software zul je genoegen moeten nemen met de marktprijs, die net voldoende zijn om de kosten te dekken van de fabrieken in Guadalajara, niet jullie comfortabele kantoren in Silicon Valley.

"Maar Joel!" zegt Jared, "Sun probeert het operating systeem tot gemeengoed te maken, zoals Transmeta; niet de hardware." Misschien, maar het feit dat Java bytecode ook de hardware tot gemeengoed maakt is vrij zware structurele schade die ze moeten incasseren.

Een belangrijk feit dat je uit deze voorbeelden kunt afleiden is dat het makkelijk is voor software om hardware tot gemeengoed te maken (je schrijft een kleine hardware abstractie laag, zoals Windows NT's HAL, dat een minuscuul stukje code is), maar het is ongelofelijk moeilijk voor hardware datzelfde te doen met software. Software is niet uitwisselbaar, zoals de afdeling marketing van StarOffice achter is gekomen. Zelfs al is de prijs gratis, het omschakelen van Microsoft Office naar iets anders is niet gratis. Totdat dit omschakelen ook niets meer kost is desktop software geen echt gemeengoed. En zelfs de kleinste verschillen kunnen het lastig maken om tussen twee software pakketten te switchen. Ondanks het feit dat Mozilla alles heeft wat ik wil en ik het dolgraag zou willen gebruiken alleen maar om die irritante pop-up advertentie-windowtjes te vermijden, ik ben te gewend aan Alt+D om naar de adresbalk te gaan. Jammer dan. Eén klein verschil en je bent je gemeengoed status kwijt. Maar ik heb harde schijven uit IBM computers getrokken en die vervolgens in een Dell computer geschoven, en hopla! het systeem start op alsof het nog steeds in de oude computer zat.

Amos Michelson, de directeur van Creo, vertelde me dat iedere werknemen in zijn bedrijf een cursus, in wat hij noemt "economisch denken", moet volgen. Prima idee. Zelfs eenvoudige concepten in micro-economie kunnen tot op grote hoogte enkele van de verschuivingen die vandaag de dag gaande zijn in de computer industrie, verklaren.


1: OEM: Original Equipment Manufacturer. Maker van gelicenseerde c.q. ingekochte technologie.



De originele versie van dit artikel verscheen in het Engels onder de naam Strategy Letter V  

Joel Spolsky is de oprichter van Fog Creek Software, een klein softwarebedrijf in New York. Hij studeerde af aan de Yale universiteit, en heeft als programmeur en manager gewerkt bij Microsoft, Viacom en Juno.


De inhoud van deze pagina's vertegenwoordigt de mening van één persoon.
Alle inhoud Copyright ©1999-2005 door Joel Spolsky. Alle rechten voorbehouden.

FogBUGZ | CityDesk | Fog Creek Software | Joel Spolsky