Seleziona la tua lingua

Sviluppatori al tempo del colera

Howard Scott Warshaw, presso gli Atari Labs a SunnyvaleSebbene l'industria informatica sia relativamente giovane, nel corso degli ultimi vent'anni il processo di sviluppo del software ha subito un mutamento radicale, forse anche per mettersi al passo con un mondo che richiede processi sempre più industrializzati. Al confronto l'industria automobilistica, che vanta una tradizione più lunga, ha avuto molto più tempo per adattarsi e ancora oggi sforna prodotti non perfetti nonostante l'attenzione spesa per eliminare i difetti del prodotto in fase di progettazione.

Questo avviene anche nell'industria del software. Mentre vent'anni fa però le automobili si producevano già da tempo in scala industriale, i programmi che negli anni '80 e '90 usavamo non potevano beneficiare delle tecnologie e delle metodologie di progettazione odierne, semplicemente perché non esistevano ancora, tuttavia c'era un gran bisogno di software anche complessi e qualcuno doveva perderci il sonno e la salute per realizzarli.

Cartucce dei videogiochi dell'Atari 2600Un'ulteriore complicazione era la consegna del software finito. I programmi venivano acquistati nella loro scatola con il manuale, non esistevano help online, tantomeno i live update, quindi una volta consegnato un programma questo si portava dietro le sue feature e i suoi problemi e non era possibile aggiornare in tempo reale la documentazione in caso di malfunzionamenti o distribuire patch al volo per il programma. Un mondo a parte era quello dei videogiochi, in cui la concorrenza era più spietata e l'utenza molto più estesa e comunque molto esigente.

Fino ai primi anni '90 il processo di distribuzione del software era ancora complesso e articolato e gli attori erano molteplici. C'era la software house produttrice, che poteva a sua volta subappaltare il lavoro, la casa di distribuzione che in molti casi si occupava solo della commercializzazione del prodotto, e i rivenditori, organizzati anche su più livelli. Il processo prevedeva per lo meno tre passaggi:

  • L'invio della copia master dalla software house alla società di distribuzione;
  • L'invio del prodotto confezionato dalla casa distributrice ai rivenditori al dettaglio;
  • La messa in vendita al pubblico.

Copia master di Monkey Island (2 settembre 1990)Gli scambi ovviamente avvenivano su supporti magnetici via posta tradizionale. Con l'apertura di Internet al grande pubbico alcune software house cominciarono a distribuire i loro prodotti sulle bulletin boards o i siti FTP delle università, come nel caso della prima versione di Doom della Id Software, o secondo un nuovo modello che in quegli anni iniziava a prendere piede, lo shareware. Attraverso i server FTP era possibile monitorare il volume di download e quindi prevedere il successo di un prodotto. Come avvenne nel caso di Doom, Romero e Carmak scoprirono che la capacità del server ftp era sottodimensionata rispetto al volume di download solo il giorno dopo la fatidica data del rilascio. Prima dell'avvento di Internet però le spedizioni erano tutte postali, e spesso con destinazioni oltreoceano.

Prima di mettere in moto tutto questo processo la software house doveva essere certa che il prodotto fosse perfetto sotto ogni punto di vista e per fare questo ogni casa aveva la propria metodologia. Essa poteva consistere in una fase di test estenuante della durata di molti mesi, durante i quali gli sviluppatori lavoravano alacremente per risolvere i problemi che i tester segnalavano. Seguiva poi una fase più breve nella quale il software continuava ad essere testato ma non poteva più essere modificato. Qualora un problema fosse sorto, era necessaria una discussione approfondita per decidere se il problema poteva/doveva essere risolto anche in termini di costi e benefici. Si sa che risolvere un bug comporta sempre il rischio di introdurre un nuovo problema, in termini tecnici questo fenomeno si chiama regressione. Era quindi importante soppesare queste variabili per stabilire se valeva la pena risolvere il problema. Il rilevamento di un bug in questa seconda fase era un evento critico che poteva comportare lo slittamento della data di uscita.

Inoltre, bisogna considerare che le macchine non erano connesse in rete e quindi distribuire una release agli utenti di test significava fare alcune copie su floppy disk della nuova versione da installare sulle macchine di test. Questo processo era lungo e comportava comunque dei rischi.

A rendere più difficile il lavoro era la quasi totale assenza di tool avanzati per il debug del codice. Man mano che i problemi più semplici vengono risolti, cominciano a presentarsi quelli più insidiosi, più difficili da scoprire e da risolvere. Dopo tutto, trovare la causa di un problema semplicemente guardando il codice sorgente o magari il dump esadecimale della memoria non è certamente immediato, anche se il prodotto finito non è un software molto complesso.

Monkey Island (1990, schermata iniziale)Una volta passata la fase di test, il prodotto poteva essere spedito alla compagnia di distribuzione che provvedeva a farne le copie, marchiare i dischetti, inscatolarli e spedirli ai rivenditori. Poteva succedere che un imprevisto facesse slittare la consegna al corriere e poteva non essere più possibile avvisare tempestivamente il distributore. In un intervista a Ron Gilbert per il venticinquesimo anniversario di Monkey Island, quest'ultimo ammette che una pratica non infrequente era quella di andare fisicamente all'aereoporto, entrare al gate e cercare un viaggiatore per Londra disposto a portare con sé i dischetti da consegnare ad una persona indicata all'aereoporto di destinazione. Alla faccia della sicurezza e dei controlli anti terrorismo odierni.

La software house provvedeva poi a effettuare una copia di backup del codice sorgente del prodotto, naturalmente su floppy disk, che venivano poi archiviati in scaffali e conservati in saecula saeculorum. Non era nemmeno immediato conoscere i dati sulle vendite. Poteva passare anche un mese prima che ai vertici arrivassero notizie sulle performance di vendita di un prodotto.

E.T. (1982, Atari)Per chi ha potuto conoscere l'argomento seppur da una certa distanza fisica o temporale, la storia di Howard Scott Warshaw è sicuramente molto toccante, poiché rappresenta il lato opposto della medaglia. Se Ron Gilbert e Richard Garriott sono ancora considerati padri spirituali per milioni di videogiocatori che ancora oggi giocano a Monkey Island o la saga di Ultima (seppure Monkey Island non fu proprio un campione di incassi), Warshaw viene ricordato per aver scritto quello che venne considerato il peggior flop nella storia dell'industria videoludica. La storia di Warshaw è forse figlia di un tempo che stava cambiando o forse dell'aspettativa che l'industria si era fatta riguardo alle vendite di un prodotto che, solo per il fatto di portare nel nome il titolo di un film icona come E.T., avrebbe dovuto eguargliarne i record di incasso. Il business ed il buon senso purtroppo non sempre viaggiano sullo stesso binario e a farne le spese, in termini di salute e carriera, fu proprio il giovane programmatore che in sole cinque settimane dovette completare da solo un progetto che solitamente avrebbe richiesto dai sei agli otto mesi. Probabilmente Warshaw fu l'unico dei programmatori Atari ad accettare l'incarico ma, complici la fretta ed il poco tempo speso nel design del gioco, l'enorme investimento pubblicitario e l'altrettanto grande pressione esercitata dal management sullo sviluppatore, la qualità del prodotto finale non poteva essere elevata. Il gioco presentava dei buchi logici che potevano bloccare l'utente permanentemente, impedendogli di fatto di proseguire nell'avventura. Il piccolo extraterrestre infatti, continuava a cadere nelle buche ed uscirne era spesso difficile, causando grande frustrazione nel giocatore. ET causò nel Natale del 1982 un enorme falla nei bilanci della Atari e diede il via al tracollo che travolse l'azienda di Sunnyvale. La catastrofe fu tale da trascinare nel vortice anche altre case produttrici e da cambiare per molto tempo le prospettive di un intero settore industriale. Solo dopo mesi dal lancio emersero i dati sulle vendite: a fronte delle cinque milioni di copie che la Atari pensava di vendere, le vendite reali furono solo 1,5 milioni. L'invenduto era infatti un problema non da poco perché doveva essere ritirato dal produttore che poteva compensare i rivenditori fornendo nuove cartucce oppure rimborsandole.

Di contro, va detto che l'intera industria dei videogiochi in quegli anni viveva un periodo grande speculazione ed era basata su un modello decisamente insostenibile, fatto di rilanci al ribasso e proiezioni poco realistiche sullo sviluppo di un settore già saturo e privo di innovazione. Il fallimento della Atari non sarebbe quindi ascrivibile unicamente alla vicenda di Warshaw, ma andrebbe letto in congiunzione al fatto che E.T. fu solo uno tra i minori insuccessi della casa produttrice. Lo stesso Pac Man, che nelle sale giochi spopolava tra i cabinati dell'epoca, fallì nel soddisfare le aspettative dell'utenza domestica, causando un buco anche maggiore nei bilanci della Atari. Inoltre, la scelta di non puntare sull'innovazione dell'hardware, impedì all'Atari 2600 di tenere il passo con la concorrenza. Di fatto il 2600 poteva gestire solo due sprite sopra lo schermo, perché era pensata in un'ottica "Pong-like". I programmatori di allora però spinsero la console ben oltre i propri limiti, sfruttando spesso artifizi e trucchetti davvero ingegnosi. In Pac Man, per esempio, gli sprite da animare erano cinque. I quattro fantasmi erano realizzati con un solo sprite, ciascuno dei quali appariva al proprio posto solo per un quarto del tempo, facendoli lampeggiare in modo abbastanza fastidioso. Inutile dire che l'esperienza di gioco non poteva essere minimamente paragonata a quella del cabinato. In conclusione, all'inizio degli anni '80, l'Atari 2600 ed il suo processore, il MOS 6502, non potevano reggere la concorrenza di Vic 20, Commodore 64, ColecoVision e Famicom.

Tornando alla storia di Warshaw, secondo una leggenda che per decenni girò nel mondo dei gamers, quattordici rimorchi di cartucce invendute furono sepolti nel deserto del New Mexico poiché disfarsene poteva essere costoso, trattandosi di rifiuti elettronici complessi. Le cartucce dell'Atari 2600 infatti non erano comuni floppy disk riscrivibili ma dispositivi hardware contenenti un cablaggio fisico del gioco, alla maniera delle cartucce delle console meno recenti. Nel 2014 la municipalità di Alamogordo diede il permesso agli scavi per rinvenire la cartucce sepolte durante le riprese di un documentario sull'industria dei videogiochi. All'evento fu presente anche Warshaw, che si commosse quando dalle sabbie del deserto riemerse un pupazzo mascotte di E.T. insieme alle cartucce del videogioco.

Inutile dire che il fallimento personale di Warshaw ne condizionò la carriera, costringendolo a ritirarsi dal settore che amava, senza tenere conto dei risvolti psicologici che la faccenda ha potuto produrre su un giovane di venticinque anni.