Joel on Software

Joel on Software   Joel om Software

 

Andre "Joel on Software" artikler på dansk

Andre "Joel on Software" artikler på engelsk

Send en mail til forfatteren (kun på engelsk)

 

Strategiske Overvejelser V


Af Joel Spolsky
Oversat af Stephan Dahl
Bearbejdet af Malthe Sigurdsson
12. juni 2002

Da jeg gik på universitetet, tog jeg to introduktionskurser i økonomi: mikroøkonomi og makroøkonomi. Makro var fuld af teorier, såsom "lav arbejsløshed skaber inflation", der aldrig rigtig passede ind i virkeligheden. Men mikroområdet var både cool og nyttigt. Det var fuldt af interessante ideer om sammenhængen mellem udbud og efterspørgsel, der rent faktisk virkede. For eksempel, hvis du har en konkurrent, der sætter sine priser ned, vil efterspørgslen efter dit produkt gå ned, med mindre du følger hans prisnedsættelser.

I denne uges afsnit vil jeg vise, hvordan en af disse ideer forklarer en masse om visse velkendte softwarefirmaer. I tidens løb har jeg bemærket noget interessant ved open source-software: De fleste firmaer som bruger store beløb på at udvikle open source-software, gør det, fordi det er en fornuftig forretningsstrategi for dem, og ikke fordi de pludselig er holdt op med at tro på kapitalismen, og i stedet er blevet forelskede i princippet om gratis software.

Ethvert produkt på markedet har erstatninger og komplementer. En erstatning er et produkt, som man kunne købe, hvis det ønskede produkt er for dyrt. Kylling er en erstatning for oksekød. Hvis du opdrætter kyllinger, og prisen på oksekød stiger, vil folk efterspørge flere kyllinger, og du vil sælge flere.

Et komplement er et produkt, man sædvanligvis køber sammen med et andet produkt. Benzin og biler er komplementer. Computerhardware er et klassisk komplement til operativsystemer. Og en babysitter er et komplement til en middag på en god restaurant. Hvis en 5-stjernet restaurant i en lille by har et godt tilbud på Valentinsdag, fordobler de lokale babysittere deres priser (rent faktisk sker der det, at børn helt ned i 9 års aldreren starter babysitterkarrieren tidligere end de ellers ville have gjort).

Alt andet lige, efterspørgslen efter et produkt stiger, når prisen på dets komplement falder.

Måske er du døset lidt hen, så lad mig lige gentage det, for det er nemlig vigtigt: Efterspørgslen efter et produkt stiger, når prisen på dets komplement falder. For eksempel, hvis flybilletter til Miami bliver billigere, stiger efterspørgslen efter hotelværelser i Miami -- fordi flere mennesker flyver til Miami og har brug for et værelse. Når computere bliver billigere, er der flere mennesker der køber dem, og da de alle har brug for operativsystemer, stiger efterspørgslen efter operativsystemer, hvilket igen betyder, at prisen på operativsystemer kan stige.

Her er det almindeligt at folk prøver at forvirre billedet ved at sige "Aha! Men Linux er GRATIS!" OK. For det første, når en økonom betragter en pris, betragter de den totale pris, inklusive diverse uhåndgribelige faktorer såsom den tid det tager at sætte systemet op, genuddanne alle brugerne, og konvertere eksisterende processer. Alle de ting vi tilsammen kalder "total cost of ownership."

Derudover, ved at benytte gratisargumentet, prøver disse mennesker at få os til at tro, at de ikke er underlagt økonomiske love, fordi de har et pænt nul, de kan gange alting med. Her er et eksempel. Da slashdot spurgte Linuxudvikleren Moshe Bar om fremtidens Linuxkerner ville være kompatible med eksisterende device drivere, sagde han, at det behøvede de ikke. "Proprietær software koster 50-200 US$ per linje fejlfri kode. Den tilsvarende udgift findes ikke for OpenSource software." Moshe påstår, at det er i orden, at enhver revision af Linuxkernen gør alle eksisterende drivere ubrugelige, eftersom udgiften ved at omskrive alle disse drivere er nul. Dette er helt forkert. Han påstår grundlæggende, at en lille smule tid brugt på at programmere bagudkompatibilitet ind i kernen, er ækvivalent med en stor mængde tid brugt på at genskrive drivere, eftersom begge tal multipliceres med deres "pris", som han tror er nul. Dette er en prima facie fejlslutning. De tusinder eller millioner udviklertimer det vil tage at revidere hver eneste device driver, vil blive brugt på bekostning af noget andet. Og indtil det er sket, vil Linux igen være hæmmet på markedet, eftersom det ikke understøtter eksisterende hardware. Ville det ikke være bedre at benytte al denne "gratis" indsats på at gøre Gnome bedre? Eller understøtte ny hardware?

Fejlfri kode er IKKE gratis, ligegyldig om den er proprietær eller open source. Selv hvis du ikke betaler kontanter for det, er der en offeromkostning, og der er en tidsomkostning. Der er en endelig mængde frivilligt programmeringstalent til rådighed for open source arbejde, og et givent open source-projekt konkurrerer med alle andre open source-projekter om de samme begrænsede programmeringsressourcer. Kun de mest sexede projekter har flere frivillige udviklere, end de kan bruge. For at opsummere, så bliver jeg ikke særlig imponeret, når folk prøver at bevise vilde økonomiske teorier om gratis software, for såvidt jeg kan se, er en en nuldivisionsfejl det eneste, de får ud af det.

Eazel closed.Open source er ikke undtaget fra tyngdeloven eller de økonomiske love. Dette blev bevist i tilfældene med Eazel, ArsDigita, Firmaet-tidligere-kendt-som-VA-Linux og mange andre forsøg. Men der sker stadig noget som meget få folk i open source verdenen virkelig forstår: Mange meget store virksomheder, med ansvar for at maksimere aktionærernes udbytte, investerer mange penge i at understøtte open source-software, sædvanligvis ved at betale store grupper udviklere for at arbejde på det. Det er dette, der forklares af princippet om komplementer.

Én gang til: Efterspørgslen efter et produkt stiger, når prisen på dets komplement falder. Generelt er det i en virksomheds strategiske interesse at drive prisen på deres komplementerende produkter så langt ned som muligt. Den teoretisk laveste bæredygtige pris vil være "dagligvareprisen" -- den pris der fås når mange konkurrenter hver især tilbyder identiske produkter. Altså:

Dygtigt ledede virksomheder prøver at gøre deres komplementer til dagligvarer.

Hvis dette lykkes for dig, vil efterspørgslen efter dit produkt stige, og du kan sætte din pris højere og dermed tjene mere.

Da IBM designede PC-arkitekturen, benyttede de hyldevarer istedet for specialbyggede komponenter, og de dokumenterede omhyggeligt grænsefladerne mellem delene i den (revolutionerende) manual, kaldet IBM-PC Technical Reference Manual. Hvorfor gjorde de det? De gjorde det, så andre producenter kunne komme med til festen. Sålænge enhedens interface passer, kan den benyttes i enhver PC. IBMs mål var at gøre PC-tilbehør til en dagligvare, eftersom PC-tilbehør er et komplement til PC'en, og dette lykkedes ganske udmærket. Trillioner af virksomheder der producerde hukommelseskort, harddiske, grafikkort, printere osv. dukkede inden for kort tid op. Billigt tilbehør betød højere efterspørgsel efter PC'ere.

Da IBM købte licens til operativsystemet MS-DOS fra Microsoft, var Microsoft meget omhyggelig med ikke at sælge en eksklusiv licens. Dette gjorde det muligt for Microsoft at sælge en identisk licens til Compaq og de hundredevis af andre computerfabrikanter, der på helt lovlig vis havde klonet IBMs PC ved at bruge IBMs egen dokumentation. Microsofts mål var at gøre PC'ere til dagligvarer. Snart var PC'en en dagligvare, med stadigt faldende priser, støt stigende ydeevne, og lave indtjeningsmarginaler, der gjorde det ekstremt svært at skabe en profit. Selvfølgelig fører de lavere priser til stigende efterspørgsel. Stigende efterspørgsel efter PC'ere betyder stigende efterspørgsel på deres komplement, MS-DOS. Alt andet lige, jo større efterspørgselen efter et produkt, jo flere penge tjener du på det. Det er derfor Bill Gates kan købe Sverige, og du ikke kan.

I år prøver Microsoft igen: Deres nye spillekonsol, XBox, benytter almindeligt PC-hardware istedet for specialbyggede komponenter. Teorien (forklaret i denne bog) er, at almindeligt hardware bliver billigere hvert år, og XBox derfor kan følge de faldende priser ned. Planen ser desværre ud til at have givet bagslag: Det lader til at almindelige PC-komponenter allerede er klemt ned til dagligvarepriser, så fremstillingsprisen på en XBox falder ikke så hurtigt, som Microsoft kunne ønske sig. Den anden del af Microsofts XBox-strategi var at anvende DirectX, et bibliotek af grafik-rutiner der kan benyttes til at skrive kode der kører på alle slags grafikkort. Målet her er at gøre grafikkort til en dagligvare, for på den måde at drive prisen på dem ned. Dermed kan der sælges flere spil, og det er her, den reelle profit findes. Hvorfor prøver grafikkort-producenterne ikke på en eller anden måde at gøre spillene til dagligvarer? Fordi det er meget sværere. Hvis spillet Halo sælger som varmt brød, så har det faktisk ingen erstatningsprodukter. Du går ikke i biografen for at se Star Wars: Klonernes Angreb for i stedet at beslutte dig for at se en Woody Allen-film, fordi den vil være lige så god. De er muligvis begge fremragende film, men de er ikke perfekte erstatninger for hinanden. Ville du nu helst sælge computerspil eller grafikkort?

Gør dine komplementer til dagligvarer.

Denne strategi forklarer faktisk langt hen af vejen hvorfor mange virksomheder giver store bidrag til open source. Lad os se på nogle eksempler.

Overskrift: IBM bruger millioner på at udvikle open source software.

Myte: De gør det, fordi Lou Gerstner har læst GNU Manifestet og besluttet sig for, at han i virkeligheden ikke kan lide kapitalismen.

Realitet: De gør det, fordi IBM er ved at blive et IT-konsulentfirma. IT-konsulenter er et komplement til forretningssoftware. IBM har derfor brug for at gøre forretningssoftware til en dagligvare, og den bedste måde at gøre dette, er ved at støtte open source. Og se nu bare, med denne strategi går det fremragende for deres konsulentdivision.

Overskrift: Netscape frigiver kildekoden til deres webbrowser.

Myte: De gør det så folk på netcafeer i New Zealand kan udvikle for dem, helt gratis.

Realitet: De gør det for at få webbrowsere til at blive en dagligvare.

Dette har været Netscapes strategi fra dag ét. Se blot den allerførste pressemeddelelse fra Netscape: Browseren er "freeware". Netscape forærede browseren væk, så de kunne tjene penge på servere. Browsere og servere er klassiske komplementer. Jo billigere browserne er, jo flere servere kan du sælge. Dette var aldrig mere sandt, end i oktober 1994. (Netscape blev faktisk ret overrasket, da MCI kom ind ad døren med en stor stak penge, og de indså, at de også også kunne tjene på browseren. Det var ellers ikke noget deres forretningsplan gjorde nødvendigt.)

Da Netscape frigav Mozilla som open source, var det fordi de så en mulighed for at reducere omkostningerne ved at udvikle browseren. De kunne dermed opnå dagligvarefordelene til en lavere pris.

Senere købte AOL/Time Warner så Netscape. Serversoftwaren, som skulle have nydt godt af browseren som daglivare, klarede sig ikke så godt i markedet, og blev opgivet. Hvorfor skulle AOL/Time Warner nu blive ved med at investere i open source?

AOL/Time Warner sælger underholdning. Underholdning bliver komplementeret af enhver platform der kan bruges til at distribuere underholdning, heriblandt webbrowsere. Det er i dette gigantiske mediakonglomerats strategiske interesse at gøre underholdningsplatforme - webbrowsere - til en dagligvare, der ikke koster noget.

Mit argument er en smule belastet af det faktum, at Internet Explorer er gratis. Microsoft ønskede også at gøre webbrowsere til en dagligvare, så de kunne sælge flere operativsystemer til PC'ere og servere. De gik et skridt længere, og leverede en samling komponenter som alle kunne bruge som udgangspunkt til at flække deres egen webbrowser sammen med. Neoplanet, AOL og Juno benyttede disse komponenter til at bygge deres egne webbrowsere. Når IE er gratis, hvad er så motivationen for Netscape for at gøre deres browser "endnu mere gratis"? Det er et præventivt indgreb. De er nødt til at forhindre Microsoft i at få monopol på webbrowsere, selv gratis webbrowsere, da dette teoretisk ville give Microsoft en mulighed for at på anden vis at hæve omkostningerne ved at browse nettet -- f.eks. ved at hæve prisen på Windows.

(Mit argument er endnu svagere idet det er ret klart at Netscape i Barksdales dage ikke helt vidste, hvad det lavede. En mere sandsynlig forklaring på, hvorfor Netscape gjorde som det gjorde, er, at ledelsen var teknologisk dårligt funderet, og ikke havde andre muligheder end at følge de planer, udviklerne lagde. Udviklerne var hackere, ikke økonomer, og lagde kun ved et tilfælde på en plan, der hjalp deres strategi. Men lad os da bare sige, det var med vilje).

Overskrift: Transmeta ansætter Linus, og betaler ham for at hacke Linux.

Myte: De gjorde det for at få PR. Hvem ville ellers have hørt om Transmeta?

Realitet: Transmeta fremstiller CPU'er. Et operativsystem er et naturlige komplement til en CPU. Transmeta ønsker at gøre operativsystemer til en dagligvare.

Overskrift: Sun og HP betaler Ximian for at Hacke Gnome.

Myte: Sun og HP støtter gratis software fordi de foretrækker bazarer frem for katedraler.

Realitet: Sun og HP er hardware-virksomheder. De laver maskiner. For at tjene penge på pc'er har de brug for at grafisk baserede grænseflader (et komplement til PC'ere) er en dagligvare. Hvorfor bruger de ikke de penge, de betaler til Ximian, og i stedet udvikler deres eget grafisk baserede grænseflade? De har prøvet (Sun havde NeWS og HP havde New Wave), men deres kerneforretning er hardware, deres evner inden for software er begrænsede, og de har brug for at den grafisk baserede grænseflade er en billig dagligvare, ikke en proprietær fordel, som de er nødt til at betale for. Så de hyrede de flinke mennesker hos Ximian af den samme grund som da Sun købte Star Office og frigav kildekoden: for at gøre software til en dagligvare, så de kunne tjene flere penge på hardware.

Overskrift: Sun udvikler Java; Nyt bytecode-system betyder skriv-én-gang-afvikl-hvorsomhelst.

Bytecode-ideen er ikke ny -- programmører har altid forsøgt at få deres kode til at køre på så mange maskiner som muligt (det er sådan man gør sit komplement til en dagligvare). Microsoft havde i mange år deres egen p-code-oversætter og flytbare vindueslag, som gjorde at Excel kunne køre på på både Mac, Windows, og OS/2, samt på Motorola-, Intel-, Alpha-, MIPS- og PowerPC-chips. Quark har et lag, som kører Macintosh-kode på Windows. Programmeringssproget C kan bedst beskrives som hardwareuafhængigt assembler-sprog. Det er ikke en ny idé for softwareudviklere.

Hvis du kan afvikle dit program hvor som helst, gør du i stigende grad hardware til en dagligvare. Efterhånden som hardwarepriserne falder, ekspanderes markedet, hvilket giver stigende efterspørgsel efter software (og det efterlader kunderne med flere penge, de kan bruge på software, som derfor kan sælges dyrere).

Sun's enthusiasme for skriv-én-gang-afvikl-hvorsomhelst (SEGAH) er, øh, mærkelig, eftersom Sun er en hardware-virksomhed. Den sidste ting de ønsker, er at gøre hardware til en dagligvare.

Uuuuuuuuuuuuuuups!

Sun er computerbranchens løbske tyr. Ude af stand til at se udover deres rasende frygt for, og had til, Microsoft, vælger de strategier, der er baseret på vrede, snarere end deres egen bedste interesse. Suns to strategier er (a) at gøre software til en dagligvare ved at fremme og udvikle gratis software (Star Office, Linux, Apache, Gnome, etc.), og (b) at gøre hardware til en dagligvare ved at fremme Java, med dens bytecode-arkitektur og SEGAH. OK, Sun, lige et hurtigt spørgsmål: Når musikken stopper, hvor vil I så sætte jer? Uden proprietære fordele i hardware eller software, bliver I nødt til at sælge til dagligvarepriser, hvilket knapt dækker udgifterne til billige fabrikker i Guadalajara, og da slet ikke til jeres lækre kontorer i Silicon Valley.

"Men Joel!", siger Jared, "det er operativsystemet Sun prøver at gøre til en dagligvare, ikke hardwaren -- ligesom Transmeta." Måske, men det faktum, at Java-bytecode også gør hardware til en dagligvare, er en ret alvorlig følgeskade at måtte finde sig i.

En vigtig lære man kan drage fra disse eksempler, er, at det er nemt for software at gøre hardware til en dagligvare (man skriver bare et lille hardware-abstraktionslag, som Windows NT's HAL, der bare er en lille stump kode), men det er ufattelig svært for hardware at gøre software til dagligvarer. Programmer er ikke vilkårligt udskiftelige, hvilket Star Offices marketingfolk er ved at lære. Selv når prisen er nul, er omkostningen ved at skifte fra Microsoft Office større end nul. Indtil omkostningen ved at skifte falder til nul, er office-software ikke en sand dagligvare. Og selv den mindste forskel kan gøre det besværligt at skifte fra én programpakke til en anden: Selvom Mozilla har alle de funktioner jeg kunne ønske mig, og skønt jeg ville elske at bruge det bare for at slippe for at baske popup-reklamer ned hele tiden, så er jeg for vant til at bruge Alt+D for at gå til addressefeltet. Bare ærgeligt. Én lille forskel og du mister status som en dagligvare. Men jeg har taget diskdrev ud af IBM-computere og smækket dem ind i Dell-computere, og, vupti!, systemet starter perfekt op, og kører, som sad den stadig i den gamle maskine.

Amos Michelson, Creo's CEO, har fortalt mig at alle medarbejdere i hans firma skal tage et kursus i hvad han kalder "økonomisk tankegang". Fin ide. Selv simple mikro-økonomiske ideer rækker langt til at bibringe en forståelse af nogle af de fundamentale skift der er i gang i dag.



Originalartiklens engelske titel er Strategy Letter V  

Joel Spolsky er stifter af Fog Creek Software, et lille software firma i New York. Efter endt studie på Yale universitetet, arbejdede han som programmør og manager ved Microsoft, Viacom og Juno.


Indholdet på disse sider repræsenterer én persons meninger.
Alt indhold Copyright ©1999-2005 af Joel Spolsky. Alle rettigheder forbeholdes.

FogBUGZ | CityDesk | Fog Creek Software | Joel Spolsky