Joel on Software

Joel on Software   Joel sul software

 

Altri articoli da "Joel on Software" in italiano

Altri articoli da "Joel on Software" in inglese

Scrivi all'autore (solo in inglese)

JOEL E IL SOFTWARE

 

I Big Mac contro The Naked Chef


Di Joel Spolsky
Tradotto da Massimo Morelli
Redatto da Stefano J. Attardi
18 gennaio 2001


Mistero: come mai alcune delle più grandi società di consulenza informatica al mondo sono quelle che lavorano peggio?

Come mai le stelle nascenti della consulenza cominciano con una lista di successi spettacolari, una crescita folgorante, e rapidamente degenerano nella mediocrità?

Ci ho pensato per qualche tempo, e ho pensato a come Fog Creek Software (la mia società) dovrebbe crescere. E la lezione migliore che ho trovato viene da McDonald's. Sì, proprio la terribile catena di hamburgheristi.

Il segreto dei Big Mac è che non sono tanto buoni, ma ciascuno è non tanto buono esattamente allo stesso modo. Se ti rassegni a sopportare la non-tanto-bontà, puoi mangiarti un Big Mac senza assolutamente nessun rischio di essere minimamente sorpreso.

L'altro segreto dei Big Mac è che anche se tu avessi un quoziente intellettivo che veleggia fra "idiota" e "cretino" (per usare il termine tecnico) saresti ancora capace di produrre Big Mac che sono esattamente non-sorprendenti come tutti gli altri Big Mac del mondo. Questo perché la vera salsa segreta di McDonald's è il suo gigantesco manuale operativo, che descrive in sorprendente dettaglio l'esatta procedura che ciascuna gestione deve seguire per creare un Big Mac. Se un hamburger Big Mac è fritto per 37 secondi ad Anchorage, Alaska, sarà fritto per 37 secondi a Singapore - né 36, né 38. Per fare un Big Mag devi solo seguire le dannate regole.

Le regole sono state accuratamente progettate da gente ragionevolmente intelligente (alla Hamburger University di McDonald's) in modo che i rimbambiti possano seguirle proprio come le persone intelligenti. Infatti le regole comprendono tutti i tipi di sicurezze, come campanelli che suonano se tieni le patatine nell'olio troppo tempo, che sono state concepite per compensare anche quote generose di umana fragilità. Ci sono cronometri e sistemi a tempo dappertutto. C'e un sistema per essere sicuri che l'inserviente controlli che i bagni siano puliti ogni mezz'ora. (Suggerimento: non lo sono.)

Il sistema in pratica assume che ciascuno farà un sacco di errori, ma gli hamburger fatti saranno, beh, coerenti, e ti chiederanno sempre se vuoi anche le patatine.

Solo per divertimento, confrontiamo un cuoco di McDonald's, che segue una serie di regole alla lettera e non sa nulla di cucina, con un genio come "The Naked Chef", il simpatico Jamie Oliver. (Se hai deciso di lasciare questo sito adesso e seguire quel link per vedere i video tipo MTV di "The Naked Chef" che fa una salsa aglio e basilico, hai la mia benedizione. Vai in pace.) Ad ogni modo, accostare McDonald's a un grande cuoco è completamente assurdo, ma per piacere mettete da parte l'incredulità per un momento, perché c'è qualcosa da imparare.

Ora, "The Naked Chef" non segue nessun puzzolente Manuale Operativo. Non misura niente. Mentre cucina, vedrete un turbinìo di cibo buttato in giro come a caso. "Ci mettiamo un pizzico di rosmarino in più, che non fa male, e ci diamo una gran bella rimescolata," dice. "Lo pestiamo un pochino. Perfetto. Sparpagliamolo in giro." (Sì sembra proprio che stia solo sparpagliando cibo. Scusate ma se io provassi a sparpagliare cibo, non funzionerebbe.) Ci mette circa 14 secondi e ha in pratica improvvisato un piatto di alta cucina con fettine di filetto di Branzino arrostito, ripieno di spezie, servito con paté di funghi e salsa verde. Mmmmh.

Beh, penso che sia abbastanza evidente che il cibo di "The Naked Chef" è meglio di quello che mangiate da McDonald's. Anche se sembra una domanda stupida vale la pena chiederselo. Perché? Non è poi una domanda così stupida. Perché una grande società con risorse gigantesche, dimensioni planetarie, accesso ai migliori progettisti di piatti che i soldi possano comprare, e fantastiliardi in cassa non può produrre un buon pasto?

Immagina che un giorno "The Naked Chef" si annoi a fare "tele" e apra un ristorante. Naturalmente, è un cuoco brillante, il cibo è incredibile, così il locale è stipato di clienti e straordinariamente redditizio.

Quando hai un ristorante straordinariamente redditizio, capisci subito che anche se lo riempi tutte le sere, e anche se fai pagare 19 dollari per un antipasto e 3 dollari e 95 per una coca, i tuoi profitti raggiungono un limite naturale, perché un solo cuoco più di tanto cibo non può cucinare. Cosí assumi un altro cuoco e forse apri qualche altro locale, magari in altre città.

Adesso un problema comincia a farsi sentire: quello che noi tecnici chiamiamo il problema di scalabilità. Quando provi a clonare un ristorante, devi decidere se assumere un altro grande cuoco del tuo calibro (nel qual caso quel cuoco pretenderà probabilmente la maggior parte dei profitti extra, quindi perché sbattersi), oppurre assumerai un cuoco più giovane, più economico, non esattamente all'altezza dell'altro, ma presto i tuoi clienti se ne accorgeranno e non andranno più nel ristorante clonato.

Il modo tipico di gestire il problema di scalabilità è quello di assumere cuochi economici che non sanno nulla e dare loro istruzioni talmente precise su come creare ciascun piatto che loro "non possano" sbagliarsi. Seguite queste regole e farete piatti di alta cucina!

Problema: non funziona. Ci sono un milione di cose che un grande cuoco fa che hanno a che fare con l'improvvisazione. Un buon cuoco vede degli splendidi manghi al mercato e improvvisa una salsa di mango e coriandolo per il pesce del giorno. Un buon cuoco gestisce una temporanea mancanza di patate inventando una cosa con radici di taro. Un cuoco automatico che semplicemente segue le istruzioni potrebbe essere in grado di produrre un dato piatto quando tutto funziona alla perfezione, ma senza vero talento e abilità, non sarà capace di improvvisare, che è poi perché non vedi mai jicama da McDonald's.

McDonald's richiede una particolare varietà di patate, che loro stessi crescono in giro per il mondo, e che sono pretagliate e surgelate in quantità colossale per prevenire carenze. Il pretaglio e la surgelazione significano che le patatine non sono così buone come potrebbero essere, ma sono certamente coerenti e non richiedono abilità culinaria. Infatti, la McDonald's fa centinaia di cose per essere sicura che il loro cibo possa essere prodotto con qualità costante, da ogni minorato che puoi mettere in una cucina, anche se la qualità è "un tantino" inferiore.

Riassunto, fin qui:

  1. Certe cose richiedono talento per essere fatte veramente bene.
  2. È difficile scalare il talento.
  3. Una cosa che si cerca di fare per scalare talento è far creare regole ai talentuosi che i non talentuosi dovranno seguire.
  4. La qualità del prodotto risultante è molto bassa.

Vi accorgerete che esattamente la stessa storia si ripete per la consulenza informatica. Quante volte avete sentito questa storia?

Mike era infelice. Aveva ingaggiato una immensa società di consulenza informatica per costruire Il Sistema. I consulenti che aveva assunto erano incompetenti che continuavano a blaterare della "Metodologia" e spendevano milioni di dollari senza riuscire a produrre un bel niente.

Fortunatamente Mike trovò un giovane programmatore che era realmente intelligente e pieno di talento. Il giovane programmatore costruì tutto il sistema in un giorno per 20 dollari e una pizza. Mike era strafelice. Raccomandò il giovane programmatore a tutti i suoi amici.

Giovane Programmatore cominciò a raccattare soldi. Presto ebbe più lavoro di quello che poteva gestire, così assunse una manciata di persone per aiutarlo. La gente in gamba vuole troppe stock option, così decise di assumere programmatori ancora più giovani, appena usciti dall'università, e "formarli" con un corso di 6 settimane.

Il problema è che la "formazione" non produce risultati molto prevedibili, così Giovane Programmatore cominciò a creare regole e procedure che avrebbero dovuto creare risultati più coerenti. Passando gli anni, il libro delle regole crebbe e crebbe. Presto fu un manuale di sei volumi detto "La Metodologia".

Adesso, dopo poche dozzine di anni, Giovane Programmatore è un Consulente Informatico Enormemente Incompetente con un Metodologia con la M maiuscola e un sacco di collaboratori che obbediscono ciecamente alla Metodologia, anche quando non sembra funzionare, perché non hanno uno straccio di un'idea di cos'altro fare, e non sono programmatori di talento. Sono solo volenterosi laureati in Scienze Politiche che hanno fatto il corso di sei settimane.

E Nuovo Consulente Informatico Enormemente Incompetente comincia a fare pasticci. E un altro programmatore di talento arriva e gli porta via tutti i clienti, e il ciclo ricomincia.

Non occorre fare nomi: il ciclo si è ripetuto una dozzina di volte. Tutte le società di servizi informatici diventano avide e tentano di crescere più in fretta di quanto possano trovare gente di talento, e creano strati su strati di regole e procedure per cercare di produrre risultati "coerenti", anche se non molto brillanti.

Ma le regole e le procedure funzionano solo quando niente va storto. Varie società di consulenza che fanno "siti Web dinamici" sono spuntate nell'ultimo paio d'anni e hanno riempito le loro file insegnando a dilettanti le quattordici regole per creare un sito Web dinamico ("ecco una istruzione select ragazzo, fai il sito Web"). Ma adesso che le dotcom stanno implodendo e c'è improvvisamente richiesta di programmatori grafici di alto livello, di abilità nell'usare C++, e di vera informatica, i ragazzi che hanno solamente una istruzione select nel loro arsenale di colpo devono imparare troppe cose e non ce la fanno. Ma continuano a provare, seguendo le regole del capitolo 17 sul normalizzare i database, che improvvisamente non si applicano nel Nuovo Mondo. I brillanti fondatori di queste società saranno certamente in grado di adattarsi al nuovo mondo: sono informatici competenti e di talento che possono imparare qualsiasi cosa, ma la società che hanno costruito non può adattarsi perché ha sostituito al talento un manuale, e i manuali non si adattano ai tempi nuovi.

Qual è la morale della storia? Attenti alle Metodologie. Sono un grande sistema per portare chiunque a un deludente, ma passabile, livello di prestazione, ma allo stesso tempo sono un fardello per persone con il talento, che sono strozzate dai limiti che sono loro imposti. Mi sembra abbastanza ovvio che un cuoco di talento non sarebbe felice di fare hamburger da McDonald's precisamente per colpa delle regole di McDonald's. Quindi perché i consulenti informatici si riempono la bocca con le loro metodologie? (Ditemelo voi.)

Questo cosa significa per Fog Creek? Beh, il nostro obiettivo non è mai stato quello di diventare una grossa società di consulenza. Noi facciamo consulenza come un mezzo per un fine -- l'obiettivo a lungo termine è essere una società di software che è sempre in attivo, e lo raggiungiamo facendo anche del lavoro di consulenza per complementare il nostro ricavo dalle vendite di software. Continueremo a fare consulenza finché le vendite non copriranno le nostre spese. A quel punto faremo ancora consulenza, ma saremo in grado di scegliere i nostri incarichi e ci concentreremo su quegli incarichi che aiutano il nostro software. Il software, come sapete, scala incredibilmente bene. Ogni volta che qualcuno compra FogBUGZ, facciamo soldi senza spenderne.

Ancora più importante è la nostra ossessione sull'assumere i migliori... siamo perfettamente felici di non crescere se non riusciamo a trovare abbastanza gente in gamba (ma con sei settimane di vacanze all'anno trovare gente non sembra un problema). E rifiutiamo di crescere finché le persone che abbiamo già assunto non hanno imparato abbastanza da diventare insegnanti e guide per i nuovi.



Traduzione dell'articolo originale inglese dal titolo Big Macs vs. The Naked Chef  

Joel Spolsky è il fondatore della Fog Creek Software, una piccola ditta di software a New York. Laureato alla Università di Yale, ha lavorato come programmatore e manager presso Microsoft, Viacom e Juno.


I contenuti di queste pagine esprimono opinioni personali dell'autore.
I contenuti sono Copyright  ©1999-2005 di Joel Spolsky. Tutti i diritti riservati.

FogBUGZ | CityDesk | Fog Creek Software | Joel Spolsky