Il 20 Marzo 2000, Inktomi raggiunse la capitalizzazione di 25 miliardi di dollari. In qualità di uno dei primi dipendenti, sulla carta ero un multimilionario. Ma nell’arco di un anno e mezzo, il valore delle azioni diminuì del 99,9%. E alla fine, Inktomi fu acquisito da Yahoo! per 250 milioni di dollari. Che cosa era successo? Fra le tante cose, Google. Prendi i popcorn, e goditi la storia. Per un po’ di tempo, Inktomi è stato il motore di ricerca numero 1 al mondo. Quando iniziai a lavorarci, aveva appena siglato il contratto con Yahoo!, ed era il motore che serviva i risultati di HotBot. Inizialmente lavorai allo sviluppo del crawling e degli strumenti di indicizzazione, scritti in C++. L’obiettivo principale era aumentare la dimensione dell’indice, e contestualmente la rilevanza dei risultati. Divenne chiaro che se da un lato cresceva la mole di documenti, dall’altro la rilevanza avrebbe giocato un ruolo molto importante. Quando hai 10 milioni di documenti puoi essere in grado di filtrarli tutti, e mostrare i risultati migliori in prima pagina. Ma quando hai miliardi di documenti, rischi di avere centinaia o migliaia di risultati rilevanti. Senza un buon algoritmo, il risultato migliore potrebbe essere a pagina 17. E chiuderai sicuramente il browser prima di arrivarci. In un primo momento abbiamo utilizzato il classico modello tf*idf, migliorato enfatizzando alcune caratteristiche presenti nelle pagine o negli URL e correlandole con la “bontà”. Ad esempio, yahoo.com è probabilmente più rilevante per la query “yahoo” rispetto a yahoo.com/some/deep/page.html. Abbiamo pensato che gli URL brevi erano da preferire. In quel periodo la query “yahoo” era molto popolare, e quindi gli spammer iniziarano a creare contenuti pieni zeppi di quella keyword. Fu l’inizio di una guerra che continua ancora oggi. Allora eravamo noi il bersagli, perché processavamo più ricerche di qualsiasi altro motore. Google scende in campo Yahoo! si lamentò con noi di non figurare sempre al primo posto per la query “yahoo”. Risolvemmo quel caso particolare, ma non riuscimmo a farlo per molti altri siti/pagine. Nel 1999 Google iniziava a guadagnare popolarità proprio perché riuscirono a risolvere quel problema. Non non li percepimmo subito come una minaccia, ma ci rendemmo conto che dovevamo lavorare ad una nostra versione del PageRank. Io fui assegnato a quello. Il mio piccolo contributo per migliorare la rilevenza stava in una formula semplice, che teneva conto delle occorrenze delle parole nei link che puntavano alle varie pagine. L’intuizione fu capire che seguiva una power law, una relazione matematica fra le 2 quantità. Intendo dire che allora Yahoo.com era l’unica istanza con 1 milione di termini “yahoo” nel link che puntavano verso quella risorsa. Le altre property di Yahoo! avevano un ordine di grandezza in meno, e poi c’era la coda lunga degli altri siti web. Decisi di utilizzare un logaritmo per il conteggio per dare un boost alle parole del documento. Non era sofisticato come il PageRank (a questo ci arrivammo più tardi), ma costituì un enorme miglioramento. La nostra rilevanza migliorava man mano che altre persone iniziavano a spendere ore nello sviluppare algoritmi di analisi dei link. La nostra dirigenza ci diede un mandato molto chiaro; le nostre priorità dovevano essere: 1) rilevanza 2) rilevanza 3) rilevanza Doug Cook sviluppò uno strumento per misurare rapidamente gli effetti della rilevanza sui cambiamenti basati su giudizi umani precalcolati. Per esempio: era chiaro che Yahoo.com dovesse essere il primo risultato per la query “yahoo”, e quindi aveva un punteggio di 10. Anche altre pagine di Yahoo! potevano essere buone (diciamo un punteggio di 5-6). Pagine irrilevanti piene zeppe di parole chiave correlate a Yahoo! dovevano invece essere considerate spam, e un quality rater umano avrebbe dato loro un punteggio negativo se si fossero presentate per quella query. Prendendo 10 risultati e una query, potevamo istantaneamente valutare la bontà dei risultati, basandoci su un “ranking umano”. Prendemmo un gruppo di link e query da confrontare periodicamente con Google. Per mesi eseguimmo i test, fino a quando fu chiaro che i nostri risultati erano buoni almeno quanto quelli di Google. I nostri dirigenti erano felici. La rilevanza non è poi così… rilevante Nonostante la bontà della nostra rilevanza, ci fu un segnale molto preoccupante: gli ingegneri di Inktomi iniziavano ad utilizzare Google come motore di ricerca. La dirigenza cercò di impedirlo, proprio come Bill Gates pare abbia vietato ai suoi figli di usare prodotti Apple. Anche io ho cercato di capire perché stavo iniziando ad utilizzare Google, e la risposta fu ovvia: l’esperienza d’uso era superiore. • Inktomi non si occupava del front-end. Forniva risultati tramite API ai suoi clienti, e ciò causava latenza, e quindi lentezza. Al contrario, Google ha sempre controllato la velocità con cui erogava i suoi risultati. • Inktomi non aveva un sistema di snippet e di caching. La dirigenza sosteneva che non c’era bisogno di caching, perché il ciclo di scansione di Inktomi era molto più breve di quello di Google. Invece degli snippet, c’era un abstract generato algoritmicamente. Questo abstract era inutile quando cercavi qualcosa tipo “risoluzione schermo del nuovo iPad”. Un abstract non ti mostra che è 2048×1536, devi cliccare su un risultato. In breve, Google si era reso conto che un motore di ricerca non è solo 10 link sui quali cliccare. Si tratta di soddisfare un bisogno di informazioni. Per noi ingegneri che passavamo le giornate studiando la search, era ovvio. Ma sfortunatamente, non siamo riusciti a far passare questo concetto alla dirigenza. Doug creò una bella interfaccia senza fronzoli per un uso interno, ma i nostri dirigenti non hanno voluto creare un motore di ricerca per non competere con i nostri stessi clienti. Conservo ancora una email nelle quale ho illustrato un progetto per un sistema di snippet e di caching, ma è stato bocciato a causa dei costi. Quale lezione possiamo imparare da tutto ciò? Che se lavori per una azienda nella quale tutti usano il prodotto del tuo concorrente invece che il tuo, devi essere molto preoccupato. Se fossi uno della dirigenza, seguirei il famoso consiglio di Yoda: “Fare o non fare. Non c’è provare”. Naturalmente questi non sono tutti i motivi per cui Inktomi ha fallito. C’è una complessa rete di casualità temporali, bolle, mancanza di focus, e abbandono di personaggi chiave. Ci sarebbe da scrivere un libro, che potrebbe anche vendere 3 o 4 copie 🙂 Liberamente tradotto da A Relevant Tale: How Google Killed Inktomi, di Diego Basch.