Hugo: Ben, benvenuto a DataFramed.
Ben: Grazie, Hugo, è fantastico essere qui e non vedo l’ora di parlare oggi con te di Convoy e di data science.
Hugo: Non potrei essere più d’accordo. È un piacere averti qui e, nella nostra esplorazione continua su DataFramed di cosa sia la data science e di cosa possa diventare, sono davvero entusiasta di parlare oggi con te del tuo lavoro in Convoy e del ruolo che la data science può avere nel rivoluzionare il settore dei trasporti su gomma, probabilmente uno dei più impattanti in Nord America. Ma prima, voglio parlare di te.
Ben: Ok, grazie.
Che cos’è un data scientist?
Hugo: Mi chiedono sempre: che cosa fanno davvero i data scientist? Ben, cosa pensano i tuoi colleghi che tu faccia?
Ben: È un’ottima domanda. Penso che il termine "data scientist" sia davvero vago. Significa cose diverse per persone diverse. Io arrivo alla data science sia da una formazione nelle scienze naturali sia in quelle sociali. Ho anche fatto una deviazione per la Silicon Valley prima di prendere il dottorato in economia. Quindi per me passo metà della giornata in riunioni a parlare della scienza di come gestire la nostra piattaforma, o di come stiamo sviluppando il nostro approccio alla data science qui, o di questioni specifiche, tipo il disegno sperimentale. Passo circa metà del mio tempo a fare mentoring ad altri data scientist, quindi ad aiutare un data scientist junior a lavorare su un disegno sperimentale per una campagna o, per esempio, a costruire un survival model per capire la retention dei clienti.
Poi passo un’altra metà del mio tempo lavorando come individual contributor pensando agli aspetti che guidano la nostra piattaforma e cercando semplicemente di avere impatto risolvendo il problema che in quel momento “va a fuoco”. Quindi pensando a cose come aste, matching, pricing e questioni di questo tipo. Chiunque sappia fare i conti noterà che questo fa tre metà, ma lavoro in una startup quindi le cose non sommano a uno.
Hugo: Non potrei essere più d’accordo. In DataCamp, a volte ho l’impressione di operare sotto forma di somma infinita, in realtà. E dato che il tuo background è in fisica, mi hai detto che per i fisici esistono solo tre numeri, giusto?
Ben: Giusto. Ci sono zero, uno e infinito, e tutto il resto è una questione di scala. È la vecchia battuta.
La carriera di Ben nella data science
Hugo: Esatto. Quindi come sei arrivato alla data science?
Ben: È un’ottima domanda, e credo di aver sempre lavorato con software, dati, matematica, statistica e modelli, e dopo che DJ Patil ha coniato il termine e questo è diventato virale, qualcuno nel reparto marketing mi ha ribattezzato data scientist, ma già quando ero all’università scrivevo software per comprendere questioni scientifiche. Quindi la prima cosa in stile data science che ho fatto è stata scrivere un programma per capire il rilassamento dei crateri per McKinnon, uno straordinario scienziato planetario alla Washington University, e la band Frankie andava forte lì, e dato che ci occupavamo di rilassamento dei crateri, ho chiamato il mio programma Frankie. Poi più recentemente, dopo il dottorato, ero all’Università di Chicago e sono stato reclutato da Amazon. Parliamo del 2012. A quel punto direi che ho davvero fatto la transizione dal prendere cose dall’accademia e applicarle nell’industria.
Hugo: Quindi ora lavori come data scientist in Convoy?
Ben: Esatto.
Convoy
Hugo: Raccontami un po’ cosa fa Convoy, qual è la sua missione.
Ben: Questo è un ottimo esempio di come sia molto più facile per il software entrare in un settore consolidato, piuttosto che per un settore consolidato introdurre il software da sé. Il settore del trasporto merci esiste da molto tempo. Negli Stati Uniti è un mercato enorme. Parliamo di circa 800 miliardi di dollari. C’è questo problema: la maggior parte dei vettori sono estremamente frammentati, tipo al 95° percentile... Scusa, i carrier. E i carrier sono le aziende di autotrasporto, hanno uno o più camion. I carrier sono estremamente frammentati e il carrier al 95° percentile ha tipo due o tre camion. Quindi il modo in cui gli spedizionieri si connettono con loro è attraverso i broker, e i broker operano con tecnologia anni ’80. Quindi telefoni e fax. Quello che facciamo in Convoy è aiutare a pionierare questo nuovo approccio chiamato digital freight, in cui usiamo la tecnologia e in particolare la data science per rendere l’intero processo migliore per tutti, perché è davvero importante abbinare il carrier giusto al carico giusto dello shipper: così tutto funziona meglio, quindi dobbiamo prezzare, fare il matching e automatizzare l’intero processo, e questo rivoluzionerà la struttura dei costi del settore. Per tutti voi che ascoltate e siete anche consumatori, la maggior parte delle cose che comprate fa otto o dieci viaggi in camion per arrivare a voi. Quindi, se riusciamo ad abbassare il costo del trasporto, i prezzi dovrebbero diventare molto più competitivi su ciò che compri.
Hugo: Quindi come si traduce tutto questo sul campo per... Hai detto che i carrier sono gli autisti?
Ben: I carrier sono... È una definizione un po’ complicata perché molti di loro sono owner-operator, quindi una sorta di sogno americano. Potrebbero essere... Per esempio, qui nel Pacifico Nord-occidentale, potrebbero essere un immigrato russo che arriva qui senza nulla e poi si fa strada fino a diventare un owner-operator con un camion, e poi, man mano che ha successo, può ampliare la sua flotta, e questo è qualcosa che Convoy cerca di aiutare gli owner-operator a fare. Oppure potrebbe essere un’azienda di autotrasporto di medie dimensioni più consolidata. In genere hanno uno o più camion. È difficile per un singolo scalare oltre circa 20 camion perché poi la logistica si complica e devi gestire HR e cose del genere.
Hugo: Sicuro. Quindi come si presenta Convoy sul campo per i carrier? Usano app o...
Ben: Sì, ottima domanda. Il modo principale in cui interagiscono con noi è tramite l’app di Convoy, e abbiamo un processo di onboarding che rende davvero semplice fornirci il loro pacchetto di informazioni. Quindi cose come assicurazioni e licenze, e poi possiamo attivare il loro account. A quel punto vedranno offerte proposte in base al tipo di carichi che ci dicono di preferire. Potrebbero dire: "Ehi, mi piace operare sul corridoio dell’I-5", e poi possono accettare quei carichi direttamente in app senza dover parlare con un umano. Quindi è super efficiente.
Possono anche fare offerte sui carichi. Quindi se non piace il nostro prezzo, o se competono con altri operatori per un carico, possono fare un’offerta; il prezzo può salire o scendere a seconda delle condizioni di mercato, e un’altra cosa che facciamo per loro è: se accettano un carico da San Francisco a Los Angeles, beh, se vediamo che lo fanno, allora diciamo: "Ehi, abbiamo un carico da Los Angeles che torna dove eri o va altrove." Quindi ne teniamo conto, per cercare di tenerli in movimento e guadagnare, così che siano vuoti meno spesso, perché risulta che i camion viaggiano vuoti circa il 40% del tempo, il che è negativo per l’ambiente e per i camionisti.
Hugo: Sì, immagino che stiate cercando di risolvere tutti i tipi di problemi da commesso viaggiatore: non vuoi necessariamente che un autista guidi un camion vuoto da Seattle alla Bay Area per poi trasportare cose da lì altrove. Vorresti capire come il loro viaggio possa essere... ottimizzato rispetto a quanto trasportano?
Ben: Sì, assolutamente. Man mano che otteniamo più liquidità sulla piattaforma diventa sempre più facile risolvere questi tipi di problemi e sostanzialmente tenere i carrier in uno stato di quasi moto continuo.
Hugo: Davvero interessante. Una delle ragioni per cui lo trovo così avvincente è che quando pensiamo al ruolo della data science nell’industria moderna, pensiamo spesso alla tecnologia, un settore nato con l’aumento dell’accesso ai dati. Mentre tu stai parlando di rivoluzionare un settore che precede tutta questa infrastruttura tecnologica.
Ben: Assolutamente. E se avremo successo in ciò che cerchiamo di fare, cambieremo la struttura dei costi di un settore chiave che riguarda molti americani. Uno dei fatti sorprendenti che ho imparato in Convoy è che il lavoro più comune in qualcosa come 45 stati è l’autista di camion. Quindi questo tocca molte persone in termini di occupazione, e riguarda anche tutti i consumatori. Può avere un grande impatto in positivo sulla vita di molte persone, in particolare per gli autisti stessi: rendiamo più facile gestire la propria attività, farla crescere e avere molta, molta meno frizione nella gestione.
Data science in Convoy
Hugo: Sicuro. Quindi in che modo la data science gioca un ruolo fondamentale nella missione di Convoy?
Ben: La data science è centrale in ciò che facciamo. In effetti, dal primo giorno in cui abbiamo aperto, siamo sempre stati automatizzati. Quindi dobbiamo risolvere una ricchezza di problemi affascinanti con molta economia, per cui è molto importante saper prevedere il prezzo perché dobbiamo prezzare correttamente agli shipper. Spesso stipuliamo contratti a lungo termine con loro e dobbiamo anche prezzare correttamente per i carrier. Poi dobbiamo assicurarci di risolvere il problema del matching per abbinare il carrier giusto al carico giusto. Perché così gli esiti sono migliori per tutti. Per esempio, giusto potrebbe significare meno dead head space, cioè il tempo in cui si guida a vuoto per raggiungere l’inizio del carico, e anche i punti di destinazione potrebbero contare. Ci occupiamo di aste e dell’intero meccanismo di accettazione del prezzo per i carrier stessi, oltre a molte altre cose legate al ciclo di vita del carrier, e a garantire che tutto vada bene una volta che un carrier ha ritirato un carico. Quindi c’è una ricchezza di problemi di questo tipo.
Hugo: Mi sembra un’attività che potrebbe scontrarsi con il problema dell’uovo e della gallina, nel senso che per convincere gli shipper a salire a bordo con voi, devi avere i carrier, e per convincere i carrier devi avere gli shipper.
Ben: Sì, è qualcosa di davvero difficile per qualsiasi piattaforma. C’è un ottimo post di Simon Rothman, uno dei nostri investitori dal round di serie A, in cui scrive che in pratica devi avviare due aziende contemporaneamente. Quindi devi fare bootstrap di un’azienda sul lato dell’offerta e su quello della domanda nello stesso momento, e questo rende tutto molto complicato perché dobbiamo mantenere l’equilibrio.
Per fortuna abbiamo un team vendite straordinario, molto bravo a generare domanda di qualità, e poi costruiamo rapidamente l’offerta per cercare di mantenere tutto in equilibrio, e questo è qualcosa che monitoriamo. È qualcosa che preoccupa qualsiasi piattaforma. Pensano molto alla liquidità e al mantenimento dell’equilibrio. È come se andassi su un sito di incontri e, supponiamo tu sia eterosessuale, e se non ci sono donne è una cattiva esperienza d’incontro. Quindi devi avere numeri equivalenti di uomini e donne.
Hugo: La ragione per cui ce l’ho così presente è che in passato abbiamo avuto una sfida simile, in DataCamp agli inizi, ottenere studenti mentre ottenevamo anche istruttori, perché gli istruttori vogliono un pubblico e gli studenti vogliono i migliori istruttori, giusto?
Ben: Sì, assolutamente. Poi direi anche che ci sono effetti di rete. Quindi una volta avviato, questi business tendono a crescere esponenzialmente, ed è molto entusiasmante. Significa che, se lo fai bene, scoprirai che non dormi.
Hugo: Assolutamente. Mi hai detto che una delle cose più importanti è un team vendite molto forte; come è integrato il team di data science nell’azienda rispetto, per esempio, al team vendite?
Ben: Sì. Penso che una delle grandi cose che possiamo fare sia aiutarli a comprendere il pricing, cose come come fare offerte sui carichi, su quali carichi dovresti fare offerte, e questi sono alcuni modi in cui possiamo lavorare a stretto contatto con loro. Il pricing è incredibilmente complesso, e ci sono tutti i tipi di incentivi attorno ad esso. Ci vorrebbero ore per sviscerarlo.
Hugo: Ne abbiamo parlato girandoci un po’ attorno: qual è il ruolo della data science. Quali tipi specifici di domande di data science devi rispondere nel tuo lavoro?
Ben: Una delle cose ottime della cultura di Convoy è che siamo davvero data-driven, quindi facciamo un enorme numero di esperimenti proprio come tutti gli altri, suppongo, nel settore, o quantomeno i top player. Quindi il modo in cui rispondiamo alle domande è spesso tramite sperimentazione, ed è l’unico modo per risolverle. Quindi facciamo molti esperimenti. Abbiamo investito molto nella costruzione di un framework di sperimentazione molto valido che ci permette di iterare rapidamente sui test, dato che ci sono diversi approcci per fare A/B test, come bayesiano o frequentista, e l’approccio bayesiano o di analisi sequenziale ti dà una risposta molto più rapidamente. Inoltre rende più semplice discutere i risultati con i product manager.
A/B testing
Hugo: Facciamo un passo indietro e magari puoi farci un esempio di A/B test che eseguite?
Ben: Ottimo. Il tipo di cosa che tipicamente testeresti in A/B è: un nuovo flusso UX funziona meglio? Quindi, diciamo... Una delle cose che ci interessa è che quando un autista completa un viaggio carichi automaticamente la documentazione. È qualcosa chiamato BOL, bill of lading. Se lanciassimo, per esempio, un nuovo processo per migliorarlo e renderlo più semplice, potremmo eseguire un esperimento in cui teniamo metà dei carrier con la vecchia tecnologia e mettiamo l’altra metà con la nuova tecnologia, e poi dopo un po’ possiamo dire con una certa probabilità se il nuovo processo funziona meglio.
Hugo: Ottimo esempio e ottima descrizione dell’A/B testing. Vado più a fondo. Hai menzionato che i metodi bayesiani convergono più rapidamente o ti danno risultati più in fretta dei metodi frequentisti. So che ti metto un po’ in difficoltà, ma ti dispiacerebbe, per i non addetti ai lavori, dare una breve descrizione della differenza tra la statistica frequentista, che forse è più familiare, e i metodi bayesiani di cui stai parlando in questo caso?
Ben: Certamente. Il primo vero approccio alla statistica è stato quello bayesiano, sviluppato da Thomas Bayes, che in realtà era un vicario. La sua idea funziona molto come la tua intuizione: parti con un set di credenze a priori su qualcosa, tipo il mio nuovo processo è migliore, diciamo che comporterà un aumento del 10%. Poi nel tempo, osservando i dati, aggiorni quelle credenze. Questo aggiornamento bayesiano converge quindi a quella che chiamiamo la posteriore, ed è la distribuzione che ci aspettiamo abbia il lift.
La visione frequentista... Prima di passare ai frequentisti, i metodi bayesiani erano molto difficili da calcolare fino a forse due decenni fa. Non avevamo davvero le risorse computazionali. Da allora ci sono stati enormi miglioramenti, ed è molto più facile calcolare questi modelli. Prima potevi risolvere solo casi speciali. Quindi persone come R.A. Fisher in particolare furono molto critiche, credo, dell’approccio bayesiano, e svilupparono l’approccio frequentista nei primi anni del ’900, se ricordo bene. Lì l’idea è che esiste un vero valore del parametro, e se campiono abbastanza dati, man mano che ottengo più dati, questo convergerà alla verità.
Quindi i frequentisti tendono a parlare di P-value e intervalli di confidenza, ed è il classico test d’ipotesi che conosci. Nel mondo frequentista, dovresti andare da un marketing manager e dire: "Condizionalmente all’ipotesi nulla vera, la probabilità di aver osservato un effetto grande quanto quello visto o più grande è del 5,7%." Poi avresti questa discussione perché la visione tradizionale della significatività è usare il livello al 5% per dire che il risultato è significativo. Quindi in questo caso, se fossi una persona corretta non potresti rigettare l’ipotesi nulla, ma il tuo marketing manager probabilmente dirà: "Il 5,7% è molto vicino al 5%, diciamo che usiamo un livello di significatività del 10%." E ti trovi in un mare di guai. Mentre con il metodo bayesiano puoi andare dal product manager e dire: "C’è una probabilità del 94,3% o del 98% che la variante A sia migliore della variante B", ed è una conversazione molto più semplice da avere.
Hugo: Nell’esempio di cui parli, la variante A e la variante B, o il parametro che stiamo osservando, sarebbe il numero di persone che caricano con successo tutta la loro documentazione?
Ben: Esatto.
Hugo: In funzione di qualunque aspetto di UX stiamo considerando.
Ben: Giusto. Quindi è qualunque cosa stai testando. Tipo: il mio nuovo workflow ha un tasso di clickthrough più alto o un checkout più alto? Riduce il churn? Qualunque cosa ti interessi. Quindi sì. Penso che il metodo bayesiano renda molto più semplici le conversazioni con i product manager, oltre al fatto che... Nei nostri studi di simulazione, vediamo che converge molto più rapidamente. Per il nostro business. La tua percorrenza può variare per il tuo business, e se sei in Europa i tuoi chilometri possono variare.
Hugo: Mi pare di ricordare che Dave Robinson abbia scritto diversi post per Stack Overflow sull’A/B testing bayesiano, e abbia mostrato che per i loro esperimenti non necessariamente convergeva più velocemente. Devo controllare, e possiamo inserirlo anche nelle note dell’episodio.
Ben: Sì. Ci sono anche ottimi post sul blog di Evan Miller sull’argomento.
Altre tecniche e metodi di data science: econometria e machine learning
Hugo: Hai menzionato il disegno sperimentale. È un approccio davvero interessante, perché non credo che molti si aspetterebbero che il disegno sperimentale e questi metodi giochino un ruolo così grande nel reinventare il settore dei trasporti su gomma usando la data science. Quali altri tipi di tecniche e metodi vi interessano?
Ben: Sì, prima di andare avanti, una cosa che vorrei... per chiudere l’A/B testing: c’è molta saggezza che le persone hanno sul settore dei trasporti. La nostra azienda è per metà startup tech e per metà veterani del settore dei trasporti, e loro hanno molte conoscenze e intuizioni frutto di duro lavoro, ma non sempre sono corrette o precise. Quindi, eseguendo esperimenti, possiamo rendere le cose molto più concrete.
Hugo: C’è anche qualcosa di politico e sociale in questo, nel senso che molte di queste persone sono in giro da molto tempo, hanno certi livelli di potere e una conoscenza faticosamente acquisita, e c’è la visione che le startup tech possano arrivare e, tra virgolette, “disrompere” questo, e serva un comportamento sociale che lo rifletta?
Ben: Sì. Posso parlare solo nei confini della cultura di Convoy, e abbiamo una cultura davvero orientata al lavoro di squadra. Sembra quando giocavo in buone squadre di hockey, e penso che entrambe le parti apprezzino molto ciò che portano al tavolo. Potresti persino avere due veterani del settore che non sono d’accordo su qualcosa. Quindi in Convoy cerchiamo di non avere disaccordi che non possano essere risolti tramite... Lascia che riformuli. Se un disaccordo non può essere risolto con un argomento intellettuale con teoria o fatti, allora eseguiamo un esperimento. Invece di stare seduti a discutere senza poter arrivare a una soluzione.
Hugo: Cos’altro? Quali altri tipi di tecniche e metodologie vi interessa usare?
Ben: Sì, dunque, siamo molto un laboratorio di data science pratica e applicata. Stiamo cercando di risolvere problemi di business concreti in poco tempo. Quindi usiamo la cassetta degli attrezzi standard che ti aspetteresti. Siamo molto agnostici sugli strumenti, quindi le persone tendono a usare lo strumento migliore per il compito, e in termini di tecnologie possono essere R o Python, entrambi hanno punti di forza e debolezza. Penso sia bene conoscerli entrambi. Poi, in termini di approcci specifici, a volte il machine learning è il migliore, in particolare se dobbiamo prevedere qualcosa, come prevedere se qualcuno caricherà un BOL o, per esempio, sarà un buon carrier. Allora potresti costruire una regressione logistica o qualche tipo di classificatore boosting. Ma ci sono altre volte in cui devi capire se A ha causato B, magari non siamo riusciti a eseguire un esperimento: allora torniamo nel mondo della statistica applicata e facciamo una qualche analisi di regressione. Il mio primo successo in Convoy è stato prima che iniziassi: avevano rilasciato una funzionalità senza A/B test e volevano sapere se questa nuova funzionalità avesse aiutato, e sono riuscito a usare il pacchetto causal impact sviluppato da Google con Bayesian structural time series per mostrare che la nuova funzionalità aveva avuto un impatto positivo.
Hugo: Fantastico. E questo su dati già raccolti?
Ben: Esatto. Avevamo dati esistenti, e quindi devi andare a cercare di assicurarti che tutto sia il più possibile come assegnato a caso, auspicabilmente. Una delle caratteristiche chiave per un esperimento, giusto, è l’assegnazione casuale al trattamento, e devi anche soddisfare altre cose come che la tua assegnazione sia individualistica, probabilistica e non confusa. Sono termini tecnici. Se una di queste cose fallisce, torni nel mondo dei dati osservazionali, e allora userai metodi statistici applicati o econometrici per cercare di creare qualcosa che sia il più possibile come assegnato a caso, in modo da poter poi fare un’affermazione causale sul fatto che A abbia causato B.
Hugo: Mi ricordi cos’è l’econometria?
Ben: Oh, l’econometria è l’insieme di strumenti statistici che gli economisti hanno sviluppato per affrontare problemi economici. Per il mondo del business, questi strumenti sono utilissimi perché la maggior parte dei nostri problemi è di natura economica, e un esempio classico sarebbe gestire qualcosa come la selezione del campione e altre forme di quella che si chiama endogeneità, dove gli esiti sono co-determinati all’interno del modello. L’esempio classico è se cerchi di capire se aumentare la dimensione della tua forza di polizia ridurrà la criminalità: potresti pensare che il crimine sia probabilmente funzione della quantità di polizia che hai, ma la polizia stessa è anche funzione del livello di criminalità. Quindi c’è questa... È un esempio di simultaneità. La selezione del campione, quando inizi a cercarla, la vedi ovunque: sarebbe come se provassi a eseguire un esperimento per vedere se una classe piccola migliora la comprensione della lettura, ma tutti i genitori dei bambini più benestanti insistono perché i loro figli siano nella classe piccola, e quindi ora i bambini nelle classi piccole sono più brillanti, e hai bias di selezione.
Hugo: Quindi l’econometria ha creato un bel po’ di strumenti per affrontare queste sfide?
Ben: Esatto. In particolare, c’è un insieme di strumenti ben noti agli economisti ma non ai data scientist al di fuori dell’economia, ed è il panel data. Questi strumenti sono davvero validi per gestire quella che gli economisti chiamerebbero eterogeneità individuale. Quindi se osservo il comportamento di carrier o spedizioni, questi hanno particolarità individuali che non posso osservare, e se posso osservare un carrier nel tempo, i dati panel mi danno ottimi metodi per rimuovere questi effetti individuali non osservati che potrebbero confondere le mie stime.
Hugo: Molto interessante. Mi sembra, correggimi se sbaglio, che tu stia dicendo che c’è tutto un insieme di strumenti sviluppati da persone molto intelligenti nell’econometria che potrebbero essere utilizzati nella data science ma che non hanno ancora visto la luce in questo mondo?
Ben: Esatto. Adoro il machine learning ed è fantastico, ma ci sono anche problemi in cui non funziona e penso che le persone diventino troppo focalizzate sul machine learning al punto da trascurare metodi econometrici che spesso sono molto utili e possono risolvere problemi che non possono essere risolti con il machine learning. Ricordo di aver parlato con qualcuno in Uber prima di entrare in Convoy e mi disse che avevano incontrato problemi che non potevano risolvere con il machine learning ma solo costruendo un modello econometrico strutturale, che è un processo molto complicato, spesso richiede un anno o più per costruire uno di questi modelli e farlo funzionare bene. Ma cerchi di modellare l’intero processo comportamentale e la funzione di utilità, e quando hai finito hai un modello molto ricco e potente con cui puoi fare buone previsioni su esiti controfattuali.
Hugo: Bello. E questo in Uber, hai detto?
Ben: Sì. È emerso durante il mio colloquio con loro, ho fatto colloquio con loro prima di andare in Convoy.
Dati geospaziali, qualità e auto a guida autonoma
Hugo: Sembra anche che... Abbiamo discusso di machine learning, econometria, disegno sperimentale e metodi bayesiani per l’A/B testing. Sembra che abbiate molti dati geografici, dati geospaziali e serie temporali di dati geospaziali. Questo ha un ruolo nel vostro lavoro?
Ben: Sì. Penso che quei dati siano davvero importanti e stiamo solo iniziando a sbloccarne il potenziale, ma li usiamo nell’app in molti modi per migliorare l’esperienza dei carrier. Per esempio, quando un carrier si presenta per ritirare un carico, possiamo fare il check-in automatico in base ai dati geospaziali. Alcuni impianti di carico sono molto scarsi, e se tengono il camion in attesa troppo a lungo devono pagare qualcosa chiamato detention. Quindi possiamo iniziare a pagare automaticamente la detention quando il carrier ne ha diritto invece di fargli affrontare un laborioso processo di documentazione, che non è dissimile dal provare a presentare una richiesta di rimborso assicurativo negli Stati Uniti.
Hugo: Una cosa che mi è venuta in mente quando hai detto che abbiamo tutti questi dati che forse non avete ancora esplorato in tutto il loro potenziale è che potrebbe esserci spazio per tutti i tipi di ricerca sociale rispetto ai dati che state scoprendo, giusto?
Ben: Sì. Penso che ci siano molte domande davvero interessanti a cui possiamo rispondere su matching, piattaforme e aste in cui mi piacerebbe entrare più in profondità. Sono sicuro che si potrebbero scrivere molti articoli accademici sull’argomento.
Hugo: Su quali progetti di data science in particolare in Convoy sei stato coinvolto che consideri i più impattanti o rivelatori per la società?
Ben: Ottima domanda. Sono in Convoy da poco più di un anno e abbiamo poco più di due anni. Mi sono concentrato principalmente su pricing e sperimentazione. Penso che uno degli esperimenti più interessanti che abbiamo eseguito sia stato poco dopo il mio arrivo: abbiamo dato accesso preferenziale ai carichi ai carrier di qualità più alta, e la qualità è scesa. Tutti sono rimasti scioccati. Tipo: aspetta, stiamo dando ai di alta qualità l’accesso anticipato al lavoro e la qualità scende? Cosa sta succedendo? Non ha senso. Un cattivo manager direbbe: "Ehi, data scientist, sei stupido." Per fortuna abbiamo un ottimo manager di data science qui, Ziad Ismail, che ha costruito una grande cultura dei dati. Ci ha lasciato indagare. Quindi ho iniziato a pensare alla letteratura sul matching in economia. La mia ipotesi era che, avendo ristretto il pool di carrier a un pool più piccolo, anche se di qualità più alta, la qualità del match sul lavoro fosse scesa. Siamo riusciti a verificarlo e poi abbiamo fatto un’analisi di regressione per mostrare che la qualità del match aveva un impatto causale sulla qualità. È stata una scoperta davvero entusiasmante perché credo abbia mostrato quanto sia importante il matching sulla nostra piattaforma.
Hugo: Incredibile. Quindi, per chiarire, dare accesso anticipato ai carichi ai carrier di alta qualità ha significato che il matching con gli shipper, la qualità di quell’algoritmo di matching è diminuita in qualche modo e ciò ha causato una riduzione della qualità dei carrier?
Ben: Sì. La qualità di come il lavoro è stato eseguito, perché c’era un pool più piccolo di carrier idonei e, anche se erano migliori, il fatto che ci fossero meno persone con cui potenzialmente matchare il lavoro ha prevalso sul fatto che fossero di qualità più alta.
Hugo: Penso che ci sia una formica brasiliana di qualche tipo che ha il 30%... Non dico che sia un analogo diretto, ma diciamo che hanno il 30% delle formiche in ogni colonia che non fa nulla, giusto? Se rimuovi quel 30% e torni un giorno dopo, c’è un altro 30% di formiche che non fa nulla. Non sto dicendo che ci siano shipper o carrier che non fanno nulla, ma che ci sia una sorta di forza stabilizzatrice. È davvero interessante che sia andata all’opposto, che qualcosa che intuitivamente penseresti porti a qualità migliore abbia portato a peggiore.
Ben: Sì. Questo è un ottimo esempio del perché sia così importante sperimentare. Quando eseguiamo un esperimento qui, abbiamo iniziato questa bella tradizione in cui le persone votano su quale risultato pensano vincerà. Così coinvolgiamo l’intera azienda negli esperimenti, e in genere il team UX dà ai vincitori donut o adesivi fantastici o cose del genere. Abbiamo avuto molti esperimenti in cui ciò che ti aspetti non accade, perché è molto facile innamorarsi di una funzionalità che pensi sia incredibile, e la realtà è che diventa sempre più difficile trovare qualcosa che faccia avanzare la piattaforma.
Hugo: In un certo senso, con questi esperimenti, state gestendo una sorta di laboratorio, giusto?
Ben: Sì, lo siamo. Focalizzato sulle nostre domande di business.
Hugo: Se sto scavando troppo nella strategia aziendale o in materiale privato, dimmelo. Mi chiedevo come valutate la qualità dei carrier o la qualità di una consegna o cose del genere.
Ben: C’è un problema a livello di settore nell’autotrasporto: circa nel 10% dei casi, quando un carrier si è impegnato a prendere un carico, semplicemente non si presenta o ti dice all’ultimo minuto che non lo prenderà, e di solito la scusa è che il camion si è rotto. I camion non si rompono il 10% delle volte. Significa che qualcuno ha offerto loro un carico più pagato. Ci sono carrier che lo fanno sempre, e ci sono carrier... ho guardato i loro dati, hanno fatto 100, 300 viaggi, e praticamente non cadono mai. Quindi il fall off è uno dei componenti chiave che usiamo per misurare la qualità perché per noi è super costoso quando accade: siamo impegnati a fornire un’esperienza di spedizione di altissima qualità agli shipper, e quindi dobbiamo trovare un altro camion che copra il carico all’ultimo minuto, ed è davvero costoso.
Hugo: Ha senso. C’è qualche considerazione rispetto all’avvento delle auto a guida autonoma o dei camion a guida autonoma all’interno della vostra azienda nel suo complesso?
Ben: Sì. Dovrei solo dire che ci sono altre cose a cui pensiamo in termini di qualità, come—
Hugo: Oh certo, sì.
Ben: La percentuale di puntualità dell’autista, cerchiamo di farli usare l’app ed è davvero importante perché ci permette di abbassare i costi in compliance e safety. Quindi tutte queste cose sono molto importanti, ma nello specifico esperimento che ho citato, il fall off era la cosa principale di cui mi preoccupavo. Troviamo che se riusciamo a far usare l’app ai carrier allora succedono e sono possibili un sacco di cose positive. Quindi un’altra cosa che facciamo come data scientist è molto “economica”: pensiamo a come strutturare gli incentivi sulla piattaforma per ottenere il comportamento che vogliamo. Un esempio sarebbe: se un carrier usa l’app, ha il quick pay. Significa che lo paghiamo lo stesso giorno e la norma standard nel settore è che i carrier vengono pagati circa 30 giorni dopo aver svolto il lavoro, il che significa che in genere vendono la passività a una società di factoring e perdono un altro 3%. Quindi di fatto stiamo dando loro un aumento del 3% se... è tipo 2-3% per il factoring. Quindi diamo loro un aumento del 2-3% se usano l’app.
Hugo: Sì. È un aumento e significa anche che hanno più liquidità, giusto?
Ben: Esatto. Non so tu, ma quando lavoro mi piace essere pagato, e se devo aspettare 30 giorni per essere pagato non è piacevole. Devo comprare la spesa, pagare l’affitto e i pezzi della bici.
Hugo: E per quanto riguarda l’avvento delle auto e dei camion a guida autonoma. È qualcosa a cui in Convoy state pensando attivamente?
Ben: Sì. Ci stiamo sicuramente pensando attivamente e so che i founder hanno passato molto tempo, attraverso il loro network, a essere molto connessi e aggiornati su questo. Alla fine, quando arriveranno i camion a guida autonoma, e probabilmente sarà per fasi, con diversi livelli di automazione, avranno comunque bisogno di connettersi con il carico, e noi abbiamo una piattaforma che lo fa. Il nostro obiettivo è poter integrare semplicemente quello sul lato dell’offerta della piattaforma.
La multidimensionalità nella data science
Hugo: Abbiamo parlato dell’impatto della data science sull’autotrasporto, rispetto al lavoro che fai in Convoy, e abbiamo affrontato la data science da diverse angolazioni. È chiaro che entrano in gioco molte cose in questa disciplina, e tu, per esempio, hai un background... Beh, sei un economista computazionale, ex fisico, e anche un ex research scientist in Amazon. Quindi la mia domanda è: come si integrano tutte queste discipline e storie nel tuo ruolo e in ciò che fai come data scientist?
Ben: Non si hanno mai troppi strumenti e, quando ero un giovane fisico, sono stato molto fortunato, ho lavorato con John Wheeler, e lui era solito dire, oltre a canalizzare Niels Bohr, "Non citare mai nulla finché non conosci la risposta." È una celebre “Wheelerism”, ma significa che dovresti avere il senso di qual è la risposta giusta per il tuo problema scientifico. C’era un famoso esempio con Feynman: Feynman arrivò convinto di aver dimostrato qualcosa e Wheeler disse che aveva torto, e Feynman fu davvero infastidito perché come poteva Wheeler aver fatto questo problema, che Feynman aveva appena risolto, pensava per la prima volta. C’era un errore nel calcolo di Feynman. La conoscenza della fisica di Wheeler era così profonda che sapeva semplicemente che doveva essere sbagliato, non aveva senso. Quindi, se esci e fai un esperimento per misurare il lift della tua campagna di direct mail e ottieni il 10%, probabilmente è sbagliato. Non ti aspetteresti che sia vero. Quindi penso che la fisica sia molto utile in questo senso, nell’essere intraprendente e nel costruire competenze matematiche, in particolare l’algebra lineare. Penso che l’algebra lineare sia super importante per avere successo nella data science, forse più del calcolo. L’economia mi ha dato strumenti teorici per pensare ai problemi di business così come strumenti econometrici per confrontare la teoria con i dati. Il mio tempo nell’ingegneria del software mi ha dato le competenze software per trasformare la statistica in codice. Ovunque tu lavori, si spera, stai acquisendo nuove competenze e stai imparando. Penso che questo sia fondamentale per i data scientist. Penso anche che culturalmente Amazon insegni un modo molto adulto di pensare ai problemi. Avere senso di urgenza, essere focalizzati sull’impatto, è un po’ come essere in un dottorato dove impari a chiederti regolarmente durante la giornata se quello su cui stai lavorando porterà a finire il dottorato, e se la risposta è no stai lavorando sulla cosa sbagliata.
Hugo: Ricordo che hai tenuto un’ottima talk, a un Data Science Pop-Up a Seattle, chiamata Correctness in Data Science. Mi è piaciuta perché hai indicato che tipo di errori si fanno e cosa possiamo fare come campo per correggerli in termini di costruire una disciplina ben definita, che al momento è, suppongo, un vago conglomerato di tecniche, concetti e applicazioni. Potresti dirci quali sono, secondo te, i principali errori che vedi fare oggi ai data scientist?
Ben: Sono davvero contento che ti sia piaciuta quella talk.
Hugo: L’ho adorata, e la metteremo nelle note dell’episodio così tutti quelli che ascoltano potranno guardarla.
Ben: Forte. Prima di tutto, spero che agli spettatori piaccia, e penso che la correttezza dei modelli scientifici sia super importante, e molte persone, soprattutto quando iniziano, pensano: oh, il mio codice è girato con successo, ha prodotto un numero, dev’essere giusto. Fermati. Vuoi assicurarti che sia il numero giusto. C’è un framework epistemologico per pensarci, nato nell’industria nucleare, chiamato verification, validation and uncertainty quantification. Devo molto a Robert Rosner, che è stato il mio supervisore di postdoc e, più importante, ex direttore di Argonne, per avermi introdotto alla VV & UQ. In pratica ci sono tre parti nella VV & UQ. La prima V è la verification. È assicurarsi che il tuo codice implementi correttamente il modello. A prescindere dal fatto che il modello sia corretto. Significa che dovresti fare cose come unit test, puoi anche generare dati sintetici tramite metodi Monte Carlo, con parametri noti, e assicurarti di ottenere i risultati attesi e fare cose del genere per verificare che il tuo codice sia corretto. La validation è assicurarsi che il tuo modello abbia fedeltà alla realtà, quindi fare cose come eseguire esperimenti successivi per assicurarsi che il tuo modello sia una rappresentazione accurata della realtà. L’uncertainty quantification riguarda il pensare ai limiti del tuo modello. Quali assunzioni hai fatto? Tengono? Potrebbe presentarsi uno tsunami e mandare KO la tua centrale nucleare? Forse dovresti pianificarlo. Quindi queste sono alcune basi. Adoro chiedere agli ingegneri BI, quando li intervisto, come sanno se il loro SQL è corretto, e di solito mi guardano come se fosse una domanda stranissima. Ma SQL è cruciale, o qualunque cosa tu usi per estrarre i dati, perché se assembli un dataset scadente, niente di ciò che fai lo migliorerà. Anche se fai statistiche super sofisticate, non potrai correggere il fatto che non hai assemblato correttamente i dati. Quindi è importante essere molto metodici e controllare, mentre assembli i dati, che siano corretti: dovresti pensare ai piani di join, testarli su sottoinsiemi di dati e assicurarti che le statistiche aggregate abbiano senso e che le distribuzioni siano appropriate. Controlla cose sensate, tipo non hai ottenuto un 10% di lift sulla tua campagna di direct mail. Poi un’altra cosa molto importante è che i modelli vanno in produzione e questo significa che potresti aver bisogno di test di integrazione o altri test per assicurarti che ciò che è in produzione sia fedele a ciò che è stato sviluppato in ricerca.
Data science in produzione
Hugo: Quindi, dove... Sia dove hai lavorato prima sia ora in Convoy, dove si colloca un data scientist in termini di mettere in produzione ciò su cui lavora?
Ben: Varia molto per organizzazione e gruppo: in alcune organizzazioni o gruppi un data scientist farà solo ricerca pura e poi passerà le cose “oltre il muro” e l’ingegneria farà qualcosa di magico. Può essere problematico, si perde spesso qualcosa nella traduzione. Molti ingegneri non sono felici se dai loro codice R. Si spera che siano felici con Python. In Convoy stiamo cercando di lavorare in modo che i data scientist possiedano il loro modello end-to-end e che abbiamo una piattaforma di machine learning che ci permetta di distribuire i modelli. Non siamo ancora del tutto lì, abbiamo ancora un po’ di lavoro da fare, ma penso che sia meglio per tutti, perché poi gli ingegneri possono semplicemente chiamare il servizio dati per ottenere il risultato di cui hanno bisogno. Inoltre, il modo in cui siamo organizzati in Convoy penso favorisca una buona data science: siamo raggruppati in product group che collaborano tutti da vicino, ma un product group consiste in un product manager, uno o più data scientist e un gruppo di ingegneri. La cosa bella dei nostri product manager è che sono tutti super tecnici. La maggior parte ha una laurea magistrale in informatica o equivalente, un buon MBA, e sanno tutti scrivere SQL. C’è un product manager qui, durante il colloquio gli ho fatto una domanda di SQL che coinvolgeva una left outer join, e l’ha risolta in circa 60 secondi. Penso sia stufo di questo esempio, ma questo è il calibro dei PM che abbiamo qui. Sono tecnici, orientati ai dati, sanno scrivere SQL, capiscono la statistica a livello universitario, ed è molto utile perché li rende sostenitori del fare data science correttamente; poi abbiamo molte iniziative sociali extra per assicurare che i data scientist continuino a connettersi e collaborare orizzontalmente. Per esempio, organizziamo una brown bag di data science. Facciamo one-to-one tecnici dove incontro altri data scientist e mi assicuro che stiano andando nella direzione giusta e rispondo a qualsiasi domanda tecnica abbiano così non restano bloccati.
Hugo: Penso anche che un product manager tecnico, come dici, abbia molti vantaggi, ma uno dei principali è che può davvero dialogare con te, giusto?
Ben: Sì. Sono molto investiti nell’essere data-driven. Sanno che se scrivono un piano per una nuova funzionalità devono lavorare con il data scientist per avere un piano di Stack Overflow o un altro piano per verificare e validare le loro idee. Sono tutti sostenitori dell’uso dei dati, e credo che abbiamo una soglia molto alta per i PM, ma è cruciale in un’organizzazione come questa che possano partecipare alla conversazione sui dati, perché spesso guidano le domande di ricerca. Un esempio di quanto siano data-driven è Ziad Ismail, che è il chief product officer. Scrive SQL. Cioè, questo tizio resta sveglio la notte a scrivere SQL per capire il business e ha una conoscenza dei dati nel nostro data warehouse profonda quanto chiunque altro.
Hugo: Forte. Tu stesso però hai... devo dire, una cassetta degli attrezzi impressionante di competenze statistiche, econometriche e tecniche di data science. Qual è la tua tecnica o metodologia preferita per la data science?
Ben: È un’ottima domanda, ed è un po’ come chiedere qual è il tuo uccello preferito o qualunque cosa, la fotocamera. L’espressione britannica, credo, è quanto è lunga una corda?
Hugo: E nessuno può rispondere.
Ben: Giusto? Quindi tendo a...
Hugo: Sì, cosa ti interessa? Cosa ti piace?
Ben: ... usare lo strumento migliore per il lavoro. Certamente... Vengo da un dottorato molto forte nei metodi panel data: alla UCL, dove ho studiato, c’erano persone come Richard Blundell, e altri, che hanno fatto molto per far progredire questo campo. Quindi un mio punto di forza è usare i metodi panel data. Ma mi piacciono anche molti strumenti core del ML. Dipende davvero dal problema. Voglio usare lo strumento migliore. Quello che mi rende più felice non è usare lo strumento, ma risolvere problemi interessanti. Sono uno scienziato applicato alla fine della giornata. Ho lavorato su una serie di problemi dalla cosmologia quantistica alla bioinformatica al trasporto su gomma, tra le altre cose. Quindi avere problemi interessanti è ciò che conta e saper trovare lo strumento giusto per risolverli è importante. Oltre agli strumenti, dati e software.
Il futuro della data science
Hugo: Abbiamo parlato molto della data science moderna. Come vedi la data science del futuro?
Ben: Penso che stiamo vivendo un periodo straordinario. Se hai competenze in matematica e statistica, ci sono così tanti dati che esplodono ovunque. Penso che ci divertiremo un sacco e sarà molto interessante finché Elon Musk non capirà come mandarci tutti a casa.
Hugo: Cosa accadrà fino ad allora?
Ben: A un certo punto, ci saranno strumenti che automatizzeranno molti modelli semplici. Penso che tu stia iniziando a vedere aziende cercare di vendere modelli di churn “commodity” e cose del genere, che possono essere problematiche perché alla fine i dati di ogni azienda sono unici e tanto vale costruire il tuo modello di churn da zero, ma probabilmente vedrai più modelli commodity e più strumenti che automatizzano molta della frutta più bassa della data science. Quindi penso che, per avere una carriera di successo e felice, tu voglia spostarti più in alto nella catena del valore, dove ci sono cose che non possono essere sostituite dall’automazione, come il feature engineering automatizzato. Per esempio, in un’azienda precedente in cui ho lavorato, Context Relevant, hanno fatto buoni progressi nell’automatizzare il feature engineering per un’ampia classe di problemi.
Hugo: Che tipo di competenze suggeriresti di sviluppare a data scientist aspiranti e anche navigati per non farsi automatizzare il lavoro?
Ben: La prima cosa è che non si può mai sapere troppa matematica. Penso che sia qualcosa in cui vale davvero la pena investire, e che inizia da giovani. Quando insegnavo a Galvanize, dove gestiscono un bootcamp di data science, posso colmare la mancanza di programmazione in otto settimane. Non posso colmare la mancanza di matematica in otto o dodici settimane. Sono anni di studio. Quindi penso che dovresti investire continuamente nella matematica. Dopo di che dovresti padroneggiare gli algoritmi core, poi devi continuare a leggere. È davvero importante continuare a leggere. Molte persone smettono di leggere quando entrano nell’industria, e in particolare per le persone più avanzate, vuoi scegliere una specializzazione che sia in linea con i tuoi interessi. Quindi la sperimentazione è qualcosa che mi interessa particolarmente, come anche i metodi bayesiani, e sono entrambe cose su cui ho lavorato molto più in profondità negli ultimi anni. So che molte persone stanno andando nel deep learning, è uno spazio molto competitivo. Quindi penso che ci siano molte altre aree interessanti e importanti nella data science. Quindi sì, certo, se vuoi andare nel deep learning, vai nel deep learning. Ma penso che ci sia vantaggio nell’essere un po’ contrari.
Call to action
Hugo: Lo penso anche io. Quindi, detto tutto questo, hai una call to action finale per i data scientist, sia agli inizi sia affermati?
Ben: La cosa principale che direi a qualcuno interessato a entrare nella data science è capire che ti stai preparando a una vita di apprendimento e che è una maratona, non uno sprint. È come prendere un dottorato. Devi dosarti. È qualcosa che potrebbe richiedere più anni per essere portata a termine. Quindi devi continuare a investire. Forse dovresti guardare un po’ meno Netflix la sera e passare un po’ più di tempo a leggere i libri e gli articoli rilevanti, a scrivere codice, a giocare con i modelli, e se non hai quell’entusiasmo per i dati potrebbe esserci un altro posto dove sei più felice.
Hugo: Quindi continua a imparare, continua a leggere, continua a fare.
Ben: Già. Per me davvero, e penso per molti di noi nella professione, i dati sono come un’Agatha Christie: c’è un mistero lì dentro e voglio sbloccarlo e risolverlo e capire se è stato il colonnello Mustard in soggiorno con un candeliere.
Hugo: Fantastico, Ben. Quindi stai vivendo la tua vita da data scientist come un giallo.
Ben: Sì. Qualcosa del genere.
Hugo: Incredibile. Posso capirlo molto perché i dati continuano a “dare”. Ho un collega che ci dice sempre che devi ascoltare i tuoi dati. Parleranno finché li ascolti, giusto?
Ben: Giusto. Penso anche che... Quando hai parlato prima degli errori che la gente commette, un errore che ho visto fare a molti scienziati è buttarsi troppo presto nel modeling senza fare EDA. EDA è il famoso termine di Tukey per exploratory data analysis. Vale davvero la pena investire del tempo nell’EDA, perché scoprirai cose sorprendenti. Quando sono arrivato in Convoy, ho iniziato a fare un po’ di EDA sui dati e ho trovato alcuni problemi di pulizia dei dati e di outlier che non erano stati affrontati; li abbiamo corretti e abbiamo ottenuto circa un 10% di miglioramento nel modello di pricing. È stata performance “gratuita”.
Hugo: Molto significativo. Voglio dire, fare qualcosa come l’EDA, exploratory data analysis, perché è allettante saltare subito e cercare di costruire modelli e cose del genere, ma incoraggio sempre le persone a provare a visualizzare i dati in 100 modi diversi e a guardare le statistiche riepilogative e tutto quel genere di cose prima di fare altro.
Ben: Esatto. E cerco di insegnare agli studenti un approccio molto metodico e standardizzato, ed è una delle cose che credo siano ottime del CRISP-DM, che è il processo standard cross-industry per il data mining, ed è probabilmente il miglior flusso di lavoro che ho visto per un progetto di data science, ed è davvero utile passare attraverso tutti i passaggi per assicurarti di non tralasciare nulla. Quindi inizi semplicemente col comprendere il problema di business, poi capire quali dati hai. Prepari i dati. Modelli, valuti e distribuisci. E in qualsiasi punto potresti trovare un errore che devi tornare a correggere in uno dei passaggi precedenti. Quindi inizi a modellare e ti rendi conto: oh, non ho fatto bene il mio feature engineering, o devo aggiungere una feature per catturare un comportamento chiave dove il modello fallisce. È molto utile essere sistematici in modo da non duplicare sforzi o saltare passaggi e, in definitiva, in termini di correttezza, di cui abbiamo parlato, mi piacerebbe trovare un modo per unire CRISP-DM e VV & UQ, e penso che così tu sia in un setup molto potente, professionale e maturo.
Hugo: Fantastico. Questo indica davvero una struttura sistematica per come potrebbe essere la data science del futuro o ciò che potrebbe incorporare.
Ben: Esatto. Poi l’altra parte è che il modeling è la parte divertente, arrivare alla risposta, ma ciò che viene prima è super importante e richiede circa l’80% del tuo tempo. Quella pulizia dei dati, la preparazione. Poi il modeling è abbastanza veloce ed è tipo, un picco, e poi: boom, dov’è finito? Sono tornato alla normalità. Penso che vedremo più strumenti che renderanno più veloce quel periodo pre-modeling, perché è lì che otterrai i maggiori guadagni di produttività, se riesci a diventare più veloce in quella fase. Quindi è un buon posto dove investire. Dovresti imparare cose come UNIX e diventare davvero bravo a usare tutti gli strumenti da riga di comando e altre tecnologie o piattaforme che ti aiuteranno a preparare i dati per il modeling più rapidamente.
Hugo: Esatto. Ben, è stato un vero piacere averti nel programma.
Ben: Grazie, Hugo. È stato un piacere essere qui e ti auguro il meglio con il programma.
Hugo: Grazie.

