Articles

Bill Gates, programmerare?

För en vecka eller två sedan gjorde jag en oskyddad kommentar om att Bill Gates var en opportunist snarare än en visionär eller programmerare. Det drog till sig en hel del argument – i båda frågorna.

Den visionära kontra opportunistiska sidan av detta är ganska tydlig. Visionärer skapar nya strategier, driver allmänhetens förståelse för nya idéer genom innovation och leder generellt sett anfallet i nya riktningar. Microsofts historia när det gäller innovation är en nollställning: så gott som allt de har gjort har varit opportunistiskt, de har tjänat pengar på andras idéer eller produkter.

Blixt sagt har Bill Gates tjänat mer pengar åt sig själv och sina aktieägare genom att sälja Steve Jobs idéer till allmänheten än vad Apple har gjort, men det är lätt att se vem som har varit visionär och vem som har varit opportunist i det förhållandet.

Programmeringsfrågan är mycket svårare att få fram sanningen om. Här är den kanoniska ”fanboy”-bilden av Bill Gates, Programmer extraordinaire, från about.com:

Och även om Bill Gates är mest känd för att ha grundat Microsoft har han också utfört ett antal programmeringsjobb innan han blev världens rikaste man. Bill Gates första programmeringsjobb var när han erbjöd rektorn på sin gymnasieskola en tidtabellsorganisator som skulle vara effektivare och lättare att använda än den som rektorn tidigare hade använt. Gates princip visste inte att Bill hade skapat programmet för sin egen skull… Bill skulle komma att gå i alla de vackra flickornas klasser. Bills andra jobb var ett sommarjobb i programmering där han tjänade 4200 dollar. Vid fjorton års ålder kom Bill Gates och hans programmeringskompis på idén om en dator för trafikräkning som senare skulle få namnet ”Traf- o-Data” och som skulle ge dem 20 000 dollar. Men när det blev känt att datorerna såldes från en källare av ett par tonåringar, gick affären i stöpet. Gates arbetade också som kongressens Page och på ett programmeringsföretag som hette ”TRW”. Efter att ha hoppat av Harvard skapade Gates det första grundläggande operativsystemet för datorer. Även om Gates har programmerat ett antal program är han fortfarande i full gång och programmerar medan jag skriver detta.

Så hur mycket sanning finns det i detta? En del av det har en grund i verkligheten: han lärde sig uppenbarligen en del BASIC i skolan; denna sammanfattning, till exempel, verkar ha stöd i konsensus:

I 1968, vid 13 års ålder, när han gick i åttonde klass på Lakeside School (en privat exklusiv skola för pojkar), fick han tillgång till en fjärrskrivare som var ansluten via ett modem med 110 Baud till ett GE MARK II tidsdelningssystem som endast hade BASIC (Beginner’s All-Purpose Symbolic Instruction Code). Teletypen kombinerade ett tangentbord, en skrivare och en stans och läsare för pappersband. Det kostade 89 dollar i månaden att hyra fjärrskrivmaskinen och 8 dollar i timmen för online-avgifter (cirka 450 dollar respektive 40 dollar i 1998 års dollar). Gates blev snabbt en ivrig programmerare och en av de viktigaste användarna av systemet.

(Anmärkning: Du kan själv uppleva en faksimil av detta – se GE-235 BASIC replikationsprojektet som leds av Tom Kurtz).

Paul Allen, som var två år före Gates på Lakeside, ingick i den grupp som Gates fann samlad kring GE-terminalen, men hans, och de flesta andra i gruppen, fokuserade på det interna: inte på att använda BASIC, utan på vad som fick saken att fungera och därför på vad mer den kunde fås att göra.

Efter den perioden blir bilden dimmig. Vi vet att Bill Gates sålde ett par programmeringsprojekt som kulminerade i hans förslag till Altair om att tillhandahålla en BASIC för MITS-maskinen, men vi vet inte från oberoende källor vem som levererade dessa projekt eller vad som levererades…

Enligt en artikel av Andrew Orlowski i registret med titeln Could Bill Gates Write Code? är svaret när det gäller Altair BASIC ett rungande ”Ja”. Här är ett stycke ur artikeln:

Även om du har följt vår saga om Micro-Softs Altair BASIC från 1975 här och här, – en fråga förblir obesvarad.

Var det bra?

Reuben Harris har demonterat en binär fil med hjälp av Monte Davidoff, den tredje författaren till Altair BASIC (tillsammans med Gates och Paul Allen) och som vi intervjuade här förra veckan. Han har samma fråga i åtanke:-

”’Kunde Bill Gates skriva kod?’ Or was he merely the luckiest man alive?”, innan han avslutar… ”Ja, det kunde han för fan!”

Och det borde vara övertygande, förutom att det inte är det eftersom kvaliteten på koden inte är ifrågasatt – och både IBM och DEC hade liknande produkter för sina 5X00- respektive PDP-linjer. Vad det handlar om här är vem som först skrev koden, och det enda beviset för detta finns i en lista som mirakulöst nog dök upp någon gång 1999 – ungefär tio år efter det att Bill Gates först lovade att offentliggöra den.

Denna källa, som kan ses men inte kopieras på Harvards Pusey-bibliotek, innehåller tydligen dessa kommentarer:

00560 PAUL ALLEN SKREV DET SOM INTE ÄR KÖRTIDSRELATERAT.
00580 BILL GATES SKREV DET SOM ÄR KÖRTIDSRELATERAT.
00600 MONTE DAVIDOFF SKRIVDE MATH PACKAGE

Ovanför detta vet vi att de andra inblandade från de tidigaste projekten och framåt, inklusive Allen och Davidoff bland många andra, har visat att de har de nödvändiga färdigheterna i andra sammanhang – men det har inte Gates. De flesta foton från perioden visar Allen i arbete med Gates som tittar på, och till och med Gates reklammaskin har dragit tillbaka sina påståenden om hans expertis inom programmering efter 1975 och hans personliga bidrag till MS-DOS sedan sanningen om dess ursprung i QDOS och CP/M har blivit allmänt känd.

Så, var eller är Bill Gates en programmerare? Det är uppenbart att han programmerade en del under tonåren, men vi vet inte vad han arbetade med, och medan Paul Allen fortsatte att skriva avancerade mikroprocessorsimulatorer gjorde Gates uppenbarligen inte det.

Det är därför legitimt att hävda att han programmerade och att han därför måste vara, eller åtminstone ha varit, en programmerare, men jag anser att frågorna i stort sett bör betraktas som obesvarade eftersom vi har många påståenden men inga obestridliga bevis för något seriöst arbete.

Men om han aldrig visste så mycket om att göra programvara, hur lyckades han då bygga upp Microsoft? Vad jag tror är att fanboys bild av honom som pojkgeniet som tjänar sig fram från programmerare till miljardär ger en felaktig bild av Microsofts karaktär som mjukvaruföretag. Det är det inte, det är ett marknadsföringsföretag, och i det sammanhanget kan vi behandla David Ales sammanfattning av hur Microsoft fick IBM-sponsring som tillämplig både på Gates programmeringsresultat enligt fanboys uppfattning och som ett svar på frågan om Microsofts framgång: