Articles

Bill Gates, programmatore?

Una settimana o due fa ho fatto un commento senza ritegno sul fatto che Bill Gates fosse un opportunista piuttosto che un visionario o un programmatore. Questo ha attirato un sacco di discussioni – su entrambe le questioni.

Il lato visionario contro opportunista di questo è abbastanza chiaro. I visionari creano nuove strategie, guidano il pubblico nella comprensione di nuove idee attraverso l’innovazione, e generalmente guidano la carica in nuove direzioni. Il record di innovazione di Microsoft è un insieme nullo: quasi tutto quello che hanno fatto è stato opportunistico, facendo soldi con idee o prodotti di altre persone.

Fondamentalmente Bill Gates ha fatto più soldi per sé e per i suoi azionisti vendendo al pubblico le idee di Steve Jobs di quanti ne abbia fatti Apple, ma è facile vedere chi è stato il visionario e chi l’opportunista in questo rapporto.

La questione dei programmatori è molto più difficile da capire. Ecco la canonica foto da “fanboy” di Bill Gates, programmatore straordinario, da about.com:

Anche se Bill Gates è conosciuto soprattutto per la sua fondazione di Microsoft, ha anche fatto una serie di lavori di programmazione prima di diventare l’uomo più ricco del mondo. Il primo lavoro di programmazione di Bill Gates fu quando offrì al preside della sua scuola superiore un organizzatore di orari che sarebbe stato più efficiente e facile da usare di quello che il preside aveva usato in precedenza. Il preside di Gates non sapeva che Bill aveva creato il programma a proprio beneficio… Bill sarebbe stato in tutte le classi delle ragazze carine. Il secondo lavoro di Bill fu un lavoro estivo di programmazione in cui guadagnò 4200 dollari. All’età di quattordici anni Bill Gates e il suo amico programmatore ebbero l’idea di un computer per il conteggio del traffico che sarebbe stato poi chiamato ‘Traf- o-Data’ e che gli avrebbe fatto guadagnare 20 000 dollari. Ma quando si sparse la voce che i computer venivano venduti da un seminterrato da una coppia di adolescenti, l’affare fallì. Gates lavorò anche come Congressional Page e in una compagnia di programmazione chiamata ‘TRW’. Dopo aver abbandonato Harvard Gates creò il primo linguaggio operativo di base per il computer. Anche se Gates ha programmato un certo numero di programmi sta ancora andando forte e sta programmando mentre scrivo questo.

Quanto c’è di vero in questo? Parte di essa ha una base nella realtà: chiaramente ha imparato un po’ di BASIC a scuola; questo riassunto, per esempio, sembra avere il supporto del consenso:

Nel 1968 all’età di 13 anni, all’ottavo grado, mentre era alla Lakeside School (una scuola privata esclusiva per ragazzi) ebbe accesso ad una telescrivente collegata con un modem a 110 baud ad un sistema GE MARK II a condivisione di tempo che aveva solo BASIC (Beginner’s All-Purpose Symbolic Instruction Code). La telescrivente combinava una tastiera, una stampante e un perforatore e lettore di nastro di carta. Costava 89 dollari al mese per affittare la telescrivente e 8 dollari all’ora per le tariffe on-line (circa 450 dollari e 40 dollari nel 1998, rispettivamente). Gates divenne rapidamente un avido programmatore e uno dei principali utenti del sistema.

(Nota: Puoi sperimentare un facsimile di questo per te – vedi il progetto di replica del GE-235 BASIC guidato da Tom Kurtz).

Paul Allen, due anni prima di Gates a Lakeside, faceva parte del gruppo che Gates trovò raggruppato intorno al terminale GE, ma la sua attenzione, e quella della maggior parte degli altri del gruppo, era sugli interni: non sull’uso del BASIC, ma su ciò che faceva funzionare la cosa e quindi su cos’altro poteva essere fatto per fare.

Oltre quel periodo, tuttavia, il quadro diventa nebuloso. Sappiamo che Bill Gates vendette un paio di progetti di programmazione che culminarono con la sua proposta ad Altair di fornire un BASIC per la macchina MITS, ma non sappiamo da fonti indipendenti né chi consegnò quei progetti né cosa fu consegnato.

Secondo un articolo di Andrew Orlowski nel registro intitolato Could Bill Gates Write Code? la risposta rispetto all’Altair BASIC è un sonoro “Sì”. Ecco un pezzo dell’articolo:

Anche se avete seguito la nostra saga dell’Altair BASIC di Micro-Soft del 1975 qui e qui, – una domanda rimane senza risposta.

Era buono?

Reuben Harris ha smontato un binario con l’aiuto di Monte Davidoff, il terzo autore di Altair BASIC (insieme a Gates e Paul Allen) e che abbiamo intervistato qui la settimana scorsa. Ha la stessa domanda in mente:-

“”Bill Gates poteva scrivere codice? O era semplicemente l’uomo più fortunato del mondo”, prima di concludere… “Sì, poteva farlo, dannazione!”.

E questo dovrebbe essere convincente, tranne che non lo è perché la qualità del codice non è in questione – e sia IBM che DEC avevano prodotti simili per le loro linee 5X00 e PDP rispettivamente. Ciò che è in discussione qui è chi ha scritto per primo quel codice e su questo l’unica prova che abbiamo è in un elenco che miracolosamente è emerso nel 1999 – circa dieci anni dopo che Bill Gates aveva promesso di renderlo pubblico.

Quella fonte, che può essere vista ma non copiata alla biblioteca Pusey di Harvard, apparentemente contiene questi commenti:

00560 PAUL ALLEN HA SCRITTO LA ROBA NON RUNTIME.
00580 BILL GATES HA SCRITTO LA ROBA RUNTIME.
00600 MONTE DAVIDOFF HA SCRITTO IL PACCHETTO MATH

Al di là di questo, quello che sappiamo è che le altre persone coinvolte dai primi progetti in poi, inclusi Allen e Davidoff tra molti altri, hanno ampiamente dimostrato le abilità necessarie in altri contesti – ma Gates no. Infatti la maggior parte delle foto del periodo mostrano Allen al lavoro con Gates che guarda, e anche la macchina pubblicitaria di Gates ha fatto marcia indietro sulle sue competenze di programmazione post 1975 e sui suoi contributi personali all’MS-DOS da quando la verità sulle sue origini in QDOS e CP/M è stata ampiamente stabilita.

Quindi, in conclusione, Bill Gates era o è un programmatore? Chiaramente ha fatto un po’ di programmazione nei suoi anni adolescenziali, ma non sappiamo su cosa abbia lavorato, e mentre Paul Allen ha continuato a scrivere simulatori di microprocessori avanzati, Gates chiaramente non l’ha fatto.

È legittimo, quindi, sostenere che ha fatto programmazione, e quindi deve essere, o almeno essere stato, un programmatore; ma, penso che le domande dovrebbero essere considerate in gran parte senza risposta perché abbiamo molte affermazioni ma nessuna prova incontrovertibile per qualsiasi lavoro serio.

Ma se non ha mai saputo fare molto di software, come ha fatto a costruire Microsoft? Quello che penso è che l’immagine dei fanboy di lui come il ragazzo geniale che guadagna la sua strada da programmatore a miliardario travisa la natura di Microsoft come una società di software. Non lo è, è un’azienda di marketing, e in questo contesto possiamo trattare il riassunto di David Every su come Microsoft ha ottenuto la sponsorizzazione di IBM come applicabile sia al record di programmazione di Gates come visto dai fanboy sia come risposta alla domanda sul successo di Microsoft: