A/B Test spiegato al Nerd che vuole rimorchiare su Tinder

Ti sei appena comprato l’ultimo profumo, l’addome non è proprio scolpito, la barba è perfetta, ma l’unico match che sei riuscito ad ottenere su Tinder è con il profilo finto della Mucca Carolina iscritta dal tuo amico Marco anche noto come “Il Capraro”.

Inizi a riflettere che forse c’è un problema.

Questa strategia del rimorchio non sta funzionando, evidentemente.

Decidi di affidarti al tuo amico, il mago della conquista, il re del rimorchio dai tempi di MySpace e Netlog, per gli amici “Er Trivella”.

Dopo una veloce chiacchierata ed un paio di birre, Er Trivella, decide di aiutarti, ma solo se sei disposto a pagargli da bere in caso di successo.

Subito si accorge che la tua selezione di foto profilo a petto nudo con la mutanda “Uomo” comprata in pacchi da 10 al mercato non può andar bene, così come deve essere aggiornata l’altra tutta sfocata e con il volto devastato dagli shoot di Ibiza 2k12.

“Terapia d’urto” queste le parole di “Er Trivella” in un momento di grande sconforto e compassione nei tuoi confronti.

Shopping selvaggio tra Piazza Italia e OVS, foto con la reflex in modalità automatico fatte dall’amica fotografa e frasi random di Fabio Volo.

Subito dopo l’aggiornamento del profilo iniziano i match e stenti a crederci.

Tu però non vuoi offrire da bere, pensi sia tutto frutto del caso, che “Er Trivella “ sia stato fortunato.

Con le vecchie foto profilo -> 100 tentativi ->1 match

Con le nuove foto profilo ->100 tentativi -> 10 Match

Guardi Er Trivella e con un po’ di sfacciataggine dici

“Guarda secondo me è solo un caso, con le nuove foto di profilo è stata solo fortuna, l’ipotesi che sia cambiato qualcosa è falsa”

Er Trivella ti guarda negli occhi, non gli pare vero, lui vuole che gli paghi da bere e con calma risponde:

“Ok allora facciamo così se è vero che è stata solo fortuna non cambia nulla tra la situazione prima e la situazione successiva.

Noi abbiamo 200 tentativi in totale giusto?”

Tu:”Si”

Er Trivella:”Facciamo delle simulazioni.

Prendiamo 200 foglietti scriviamo sopra questi il nome della tipa e se hai avuto successo o meno.

1 se hai avuto successo e 0 se non è andata bene”.

Alla strana richiesta realizzi questi 200 foglietti.

Er Trivella:”Ora per un bel po’ di volte mischiamo i 200 foglietti, associamo i primi 100 alla vecchia condizione (Test A) e gli ultimi 100 a quella nuova (Test B).

Una volta fatto calcoliamo la differenza tra i casi di successo tra il nuovo caso B’ ed il nuovo caso A’, chiameremo questo valore “Delta Rimorchio”.

Ti ricordi nel caso originale questa differenza era di 0.09?” (10/100-1/100)

“Una volta calcolato il “Delta Rimorchio” la seconda volta, rimischiamo i foglietti e ripetiamo l’operazione un certo numero di volte (un numero di volte n, con n molto grande).

Ora se quello che hai detto ha senso le volte in cui rimischiando i foglietti il delta rimorchio è uguale o maggiore al delta rimorchio iniziale dovrà essere abbastanza frequente, essendo questa differenza un caso”

Tu:”Certo, ha senso”

Er Trivella: “Potremmo valutare la cosa dividendo il numero di volte in cui “Delta rimorchio è maggiore o al più uguale” per il numero di volte che abbiamo rimischiato i foglietti” (questo valore sarà il nostro p-value dei dati).

Er Trivella:”Più questo rapporto sarà grande e più le tue ipotesi saranno corrette, ma più questo valore è piccolo e più probabile che la tua ipotesi sia falsa.”

Tu:”Quanto piccolo?”

Er Trivella:”Se voglio rifiutare la tua ipotesi con il 95% di confidenza questo dovrà essere più piccolo di 0.05.”

 

Tu ed Er Trivella scoprite che:

  • Il numero di volte che mischiando i foglietti hai ottenuto risultati migliori è stata solo 1 su 100 il p-value è 0.01
  • l’ipotesi che fosse tutta fortuna è falsa
  • tocca pagare da bere

Gli A/B test sono estremamente frequenti soprattutto nel Digital Marketing, ma non sempre la loro valutazione è di facile interesse, questo articolo con lo script allegato è solo una simpatica introduzioni, molte ipotesi sono state semplificate, per una rigorosa trattazione consiglio sempre il Ross.

Inoltre bisogna sempre valutare il costo della sperimentazione, il miglioramento che si ottiene dal test A o dal test B non solo deve essere statisticamente significativo, ma anche economicamente significativo.

Per Economicamente Significativo intendo che il costo della sperimentazione è giustificato dal guadagno che il miglioramento genera, un punto estremamente difficile e non sempre rispettato.

Grazie per aver letto l’articolo!

Se ti piace ri-condividilo 🙂

Un abbraccione

Andrea

 

ps Devo formattare meglio il codice è sempre un po’ un trauma per me districarmi tra il notebook jupyter e il codice html, inizierò anche a pubblicare questi script sul mio profilo GitHub 🙂

 

In [4]:
import numpy as np

import pandas as pd

 

In [5]:
#Rappresentiamo attraverso due array di 1 e 0 i nostri due scenari di analisi

old_pic=np.array([True] * 1 + [False] * 99)

new_pic=np.array([True] * 10 + [False] * 90)

 

 

In [6]:
#Definiamo la statistica oggetto di analisi come 

#la differenza i successi con le nuove foto e i successi con le vecchie

#in rapporto al numero di tentativi effettuati

def frac_abs_success(a,b):

"""Compute fraction of Democrat yay votes."""

afrac = np.sum(a) /len(a)

bfrac= np.sum(b) /len(b)

ababs=abs(afrac-bfrac)

return ababs

def permutation_sample(data1, data2,func):

"""Generiamo una permutazione definiti due data set."""

 

# Concateniamo i datasets: data

data = np.concatenate((data1,data2))

 

# Definiamo l'array delle permutazioni permuted_data

permuted_data = np.random.permutation(data)

 

#  Dividiamo in due insiemi A' B' l'array delle permtazioni: perm_sample_1, perm_sample_2

perm_sample_1 = permuted_data[:len(data1)]

perm_sample_2 = permuted_data[len(data1):]

delta_rim=func(perm_sample_1,perm_sample_2)

 

return delta_rim

 

In [7]:
#Realizziamo n permutazioni dei nostri due insiemi A* B*

n=1000

#per ogni permutazione calcoliamo il valore della statistica di analisi

#la differenza tra il secondo ed il primo insieme

def draw_rep_stat(data,data2, func, size):

"""Draw bootstrap replicates."""

 

# Initialize array of replicates: bs_replicates

stat_replicates = np.empty(size)

 

# Generate replicates

for i in range(size):

stat_replicates[i] = permutation_sample(data,data2,func)

 

return stat_replicates

 

In [16]:
test_set=draw_rep_stat(old_pic, new_pic,frac_abs_success,n)

 

print(len(test_set))

#Calcoliamo il p-value dei dati 

#n è il numero di permutazioni che realizziamo 

p = np.sum(test_set >= frac_abs_success(old_pic,new_pic)) / len(test_set)

print('p-value =', p)

 

 

 

1000

p-value = 0.01

 

Annunci

Lascia un commento

Archiviato in Ingegneria, riflessioni, Tecnologia

Come Diventare DataScientist da Autodidatta

-Dottore mio figlio vuole diventare DataScientist secondo lei è grave?

-Gravissimo signora, mi dispiace per lei, ma io l’avevo avvertita. Purtroppo la medicina non ha risposte a queste malattie. Si prepari, si prepari, suo figlio andrà all’IKEA o per risparmiare tempo comprerà delle lavagne su Amazon(https://amzn.to/2NpOImd), ne abbiamo già visti di casi del genere.

Le ha già parlato entusiasta di MonteCarlo (https://it.wikipedia.org/wiki/Metodo_Monte_Carlo)?

-Si.

-Allora è più grave di quanto pensassi.

 

Ieri o l’altro ieri mi aveva scritto Davide Sicignani , sempre un fratello del gruppo InnLab, di Terracina (quindi dietro casa), ma che ho conosciuto solo a Londra.

Da sinistra Ugo, Davide, Gabriele ed Io in un tipico pranzo della Domenica Londinese

Davide mi chiedeva un consiglio per un suo amico Biologo che vuole avvicinarsi a Python e DataScience.

In particolare mi contattava perché ho cominciato da Zero e da Autodidatta.

Non essendo la prima persona che mi ha contattato per questo motivo, anche Stefano (sempre InnLab) qualche mese fa, ho deciso di scriverci due righe.

E’ opportuno distinguere tre domini di conoscenza che rientrano a mio avviso sotto il grande cappello del DataScientist, ma lo farò in un altro post:

  • Data Engineering (Informatica)
  • Data Modeling (Probabilità e Statistica- Ricerca Operativa)
  • Business Intelligence (Capacità Analitica)

Quello che racconterò è un po’ la sintesi del mio percorso e delle risorse utilizzate.

Indubbiamente la strada migliore per essere DataScientist è la stessa che caratterizza il settore medico:

La perfetta sinergia tra Pratica, Studio e degli ottimi Mentor.

Cosa ho capito fino ad oggi:

  1. Non esistono corsi che in un mese o in una settimana ti permettono di diventare DataScientist, se dicono il contrario è una balla
  2. Non è possibile diventare DataScientist solo attraverso la pratica
  3. Non è possibile diventare DataScientist solo attraverso i libri
  4. E’ estremamente bello
  5. E’ estremamente faticoso
  6. Esistono molte persone del mestiere disposte ad aiutarti (gratis)
  7. Per iniziare a capirci qualcosa serve almeno un anno di allenamento
  8. L’anno di allenamento necessario non ti esime dal provare a trovare lavoro anche se non hai abbastanza esperienza, quello che sai fare ed hai imparato fallo valutare anche agli altri. Rischi di rimandare il tuo ingresso nel settore spaventato di non essere all’altezza

 

Ahi quanto a dir qual era è cosa dura

esta selva selvaggia e aspra e forte

che nel pensier rinova la paura!

–Dante Alighieri, Inferno, I Canto

 

Quindi quali sono le risorse da scegliere per intraprendere questo percorso?

Ecco le mie:

DataCamp.com

Ad Agosto 2017 ho iniziato a studiare su DataCamp.com ho seguito tutto il percorso per diventare DataScientist.

Consigliatissimo.

Il costo per un anno di accesso a tutti i corsi è di 130/180$ adesso non ricordo precisamente.

Ottimo investimento, corsi semplici, ma efficaci.

Questi corsi servono per una prima infarinatura sul Machine Learning e Python.

L’app mobile permette di allenarsi anche sul bus o in metro su concetti basilari.

Contro, non è assolutamente sufficiente per lavorare, sono necessarie altre risorse a supporto.

 

Python for Data Analysis: Data Wrangling with Pandas, Numpy, and IPython

Il link al libro *-> https://amzn.to/2NrqLuJ

E’ il libro scritto da Wes McKinney, l’autore della libreria Pandas, una delle più usate in Python per la manipolazione e pulizia dei dati.

Il libro me lo aveva regalato Marchetti quando ho cominciato questo percorso ed è stato una grande risorsa, perché gradualmente spiega tutto quello che è necessario sapere per la pulizia e manipolazione dei dati.

Ho impiegato un anno per studiarlo tutto e altri sei mesi servirebbero per ripassarlo ed allenarsi su tutti i concetti che vengono illustrati.

Il libro va letto, studiato, con il pc ed il notebook jupyter aperti.

In questo modo è possibile riprodurre in tempi brevi tutti i consigli ed esempi riportati nel testo.

Se non si mettono in pratica gli esempi riportati, anche modificandoli a piacere, il libro perde gran parte della sua efficacia.

 

Pratica

Questa parte è F-O-N-D-A-M-E-N-T-A-L-E

Ho avuto modo di fare pratica attraverso progetti di consulenza, progetti pro-bono, data set pubblici, durante gli step tecnici di alcuni colloqui di lavoro e lavorando su freelancer.com.

Il tempo viene dedicato in buona parte alla pulizia e manipolazione dei dati, è frustrante, ma è sempre così. 

Solo col tempo ed esperienza si diventa veloce in questa parte del lavoro.

Esistono tantissimi data set pubblici anche italiani dove acquisire dati e iniziare ad effettuare un po’ di Data  Visualization, inferenze e creare qualche modello di Machine Learning

Eccone alcuni:

 

C’è anche Kaggle

Kaggle è una piattaforma e comunity specifica per DataScientist.

Li sono presenti tantissimi dataset sui quali esercitarsi.

Avere un buon punteggio su Kaggle, partecipare alle competizioni è un’ottima strada per farsi notare da eventuali recruiter e poter dimostrare le proprie competenze

PostgreSQL

La conoscenza di SQL è la seconda skill più richiesta dopo Python negli annunci di lavoro.

Questo sulla base  delle job description analizzate (+100) per il lavoro di DataScientist a Londra

Un’ottima piattaforma gratuita per allenarsi è https://pgexercises.com/

Postgresql era uno dei DBMS più frequenti negli annunci, ne esistono anche altri, non sentitevi vincolati nella scelta.

 

Mentor

Un mentor tecnico è una risorsa chiave per vari motivi:

  • Ti sprona a fare di più
  • Può aiutarti in momenti di difficoltà a sciogliere subito eventuali nodi (ovviamente dopo che hai sbattuto la testa per almeno due giorni sul problema)
  • Rende umano un percorso fatto di numeri e righe di codice

Podcast

Esistono podcast di vario tipo sia su SoundCloud che su Spotify, ascoltarli permette nei tempi morti di essere aggiornati su tecnologie e trend del mercato.

Ingrediente Segreto

L’ingrediente segreto è uno ed uno solo: la passione

Se non vi emozionate davanti ad un bel grafico, se non vi incuriosisce la possibilità di pianificare e predire l’andamento delle vendite o valutare l’andamento delle azioni, se non impazzite all’idea di una nottata passata ad analizzare i processi esponenziali che potrebbero rappresentare la rottura di alcuni componenti elettronici, non iniziate questo percorso.

 

E’ la passione che muove tutto, le altre risorse sono secondarie.

Iniziate.

Fate.

Fate.

Fate.

Grazie per aver letto l’articolo!

Un abbraccio

Andrea

 

ps se ci sono errori di battitura o di grammatica scrivimi pure 🙂

*Con i link di affiliazione di Amazon potete aiutarmi a coprire le spese per il blog vi ringrazio in anticipo

 

3 commenti

Archiviato in Hobby, Ingegneria

Open Data e Immigrazione se l’Italia fosse come la Nuova Zelanda

Questo post non dovrebbe essere sull’Immigrazione Neozelandese (in realtà il rilascio di Visti), il Viminale e gli Open Data, avevo promesso a Davide, un alumno di InnovAction Lab, che avrei discusso dell’importanza di non avere l’app di Facebook sul cellulare per evitare distrazioni e restare focalizzati.

In sintesi se andate su questo sito statistico della Nuova Zelanda (dove hanno girato il Signore degli Anelli), con estrema facilità potete scaricare tutti i dati sui Visti rilasciati dal 2001 ad oggi.

Basta andare nella sezione Turismo-International Travel e Migration ecc.. http://archive.stats.govt.nz/infoshare/

Volete fare lo stesso lavoro con un data base italiano?

http://www.interno.gov.it/it/servizi/banche-dati-ed-elenchi

Almeno per me è stato un inferno e non sono riuscito a trovare qualcosa di strutturato, intuitivo e usabile(in termini di usabilità).

In questo modo non è possibile condurre  nessuna discussione seria e costruttiva in merito alla questione Immigrazione.

Così ho scritto all’Agenzia per l’Italia Digitale, ma ancora nulla.

 

 

Nel mentre, per motivi di lavoro ho condotto una sintetica ricerca sui Visti rilasciati in Nuova Zelanda dal 2001 al 2016.

Il codice verrà pubblicato su www.lovabledata.com nei prossimi giorni nel formato di Jupyter Notebook.

 

E questi sono i valori:

Total      %
Visitor    367368  30.62
Residence  295935  24.67
Student    274149  22.85
Work       247818  20.66
Other       14478   1.21


Oltre a queste informazioni è anche possibile valutare da dove provengono le richieste approvate:
Sum and % of Visa by Region
                              Total      %
North-East Asia              109569  40.03
Southern and Central Asia     74583  27.25
South-East Asia               38487  14.06
North-West Europe             14367   5.25
Oceania and Antarctica        12330   4.50
Africa and the Middle East    11583   4.23
The Americas                   9150   3.34
Southern and Eastern Europe    3678   1.34

E valutare sommariamente applicando una media mobile qual è il trend di provenienza degli immigrati regolari dalle realtà più significative.

Sarebbe interessante poter fare le stesse analisi con i dati italiani (che ci sono ma non si sa dove siano nascosti).

Un abbraccio

Andrea

Guardiamo alle religioni come alle mille foglie di un albero, ci sembrano tutte differenti, ma tutte riconducono a uno stesso tronco.
(Mahatma Gandhi)

 

 

ps ci sono più persone nel Lazio(5,8 Milioni) che in Nuova Zelanda  (4,6 Milioni)

 

pps Si scrive “New Zealand” e non “New Zeland” correggerò i grafici 😀

Lascia un commento

Archiviato in Notizie e politica, riflessioni

PCA spiegazione per fidanzati/mariti sfortunati prt 2

Non so se la mia spiegazione sulla PCA fosse chiara,non lo so, e ci riprovo.

E’ una tecnica che viene utilizzata molto frequentemente nel campo del Machine Learning, PCA sta a significare Principal Component Analysis.

Ora Immagina.

Per qualche sfortunata ragione, tu devi regalare una borsa alla tua ragazza/moglie/amante (e io nemmeno ai nemici lo auguro).

Immagina.

Tu e la tua conoscenza sul mondo delle borse.

Immagina.

Tu e la tua conoscenza che spazia dal trolley che usi dall’ultima gita a Praga del liceo, che tua madre e la tua ragazza vorrebbero buttare ma per te è ancora funzionante nonostante quella macchina enorme dovuta agli eccessi del tuo amico tale “ER Bresaola”, e finisce allo zaino tecnico porta pc, con esclusione della 24 ore che ti ha regalato Zio Gianni “perché ormai sei grande”.

Immagina.

TU, proprio TU, devi acquistare una borsa, o in romano ‘na borZa.

Photo by Artem Bali on Unsplash

Inizi a classificare i prodotti:

  • Range di costo (5-5000 €)
  • Marca (Cinese Sotto Casa-Mercato di Merce Parallela-Amazon-Alta Moda)
  • Colore(Blu-Rosso-Nero)(In almeno 216 tonalità diverse per colore)
  • Dimensione (Clutch-Trousse-Hobo Bag-Shopping Bag) (miserabile pensavi che si usasse il metro o il cm come da Sistema Internazionale di Unità di Misura)
  • Dove comprarla (Km Da casa tua 0-100km)
  • Come pagarla (Cash-Finanziamento a 20 anni-Bitcoin-Vai a Rubare perché sei povero)
  • Periodo di Analisi Intraperiodale (Primavera-Estate-Autunno-Inverno)
  • Periodo di Analisi Interperiodale (Outlet-Ultima Uscita)

Almeno 8 variabili di scelta, dura eh?

Purtroppo non puoi sottrarti dall’acquisto perché deve farti perdonare.

Non sai il motivo, lo ignori, ma c’è, in quanto uomo sbagli a prescindere e DEVI farti perdonare.

La PCA, ti aiuta a semplificare il problema ed i dati di input per la tua fatidica scelta.

Nel problema in esame alcune variabili sono in qualche modo ridondanti e assimilabili, ad esempio:

  • Come Pagarla
  • Marca
  • Range Di Costo

potrebbero essere aggregate in un’unica nuova variabile.

E’ molto probabile che se vai dal cinese sotto casa puoi aggregare sotto un unico cappello le variabili “Cash-Cinese Sotto Casa-5€” così come se vai ad effettuare l’acquisto in-quella-maison-che-non-va-nominata “Vai a Rubare perché sei povero- maison-che-non-va-nominata-5000€” possono anche loro essere aggregate.

Questo è quello che fa la tecnica PCA.

Stiamo quindi scartando le caratteristiche ridondanti?

No, anche perchè sappiamo benissimo che alla minimo passo falso si  rischia di aprire un caso di stato, tu nella tua classificazione  hai preso in considerazione TUTTE le variabili, ma le hai trasformate attraverso questa tecnica.

Questa domanda è importante perchè nel vecchio articolo parlavo di riduzione, ma questo non significa che scartiamo determinate varibili(in termini matematici stiamo effettuando una combinazione lineare)

La PCA permette di costruire delle nuove variabili aggregate significative nel processo di classificazione basandosi su quelle precedenti.

Con l’esempio precedente siamo passati da 8 variabili a 6.

Inoltre con la nuova trasformazione abbiamo identificato una variabile che può variare sensibilmente da borsa a borsa, questo elemento è di fondamentale importanza perché abbiamo identificato un elemento che permette di differenziare ed identificare (labeling) le varie tipologie.

Dal punto di vista matematico abbiamo identificato la nuova variabile caratterizzata dalla maggior varianza.

E’ per questo che si chiama “Componente Principale”, perchè è la variabile con varianza maggiore.

Ora che sappiamo come classificare le borse quale comprare?

Questo punto esula la tecnica PCA.

Nelle teoria classica del pensiero economico questo problema per l’uomo razionale non si porrebbe.

  • Volume da trasportare
  • Identificazione del costo minimo in rapporto al volume (€/cm3)

Purtroppo, non funziona così tranne nel mondo degli ingegneri, una analisi basata sugli acquisti storici della fidanzata/moglie/amante risolverebbe il problema, ma non è semplice.

“Essere ingegnere è praticamente una malattia. A una donna, moglie d’ingegnere si potrebbe chiedere:  “Signora, suo marito come sta? E’ ancora ingerere?” E lei potrebbe risponere: “No, adesso sta un po’ meglio” -Luciano de Crescenzo – I pensieri di Bellavista

Un’analisi delle frequenze delle caratteristiche degli acquisti passati, magari modellizzata attraverso il teorema di Bayes, potrebbe portarvi ad acquistare la “borsa più frequente” che non è quella “che la farebbe più felice”.

Quello che potete però fare è assegnare dei pesi alle varie variabili e quindi fare un’analisi delle frequenze pesate.

Un metodo potrebbe essere quello di assegnare un peso maggiore alle borse utilizzate il sabato sera, rispetto a quelle utilizzate tutti i giorni.

Scegliete successivamente il modello di borsa con la frequenza pesata maggiore e, con una certa probabilità, avrete scelto l’alternativa che massimizza l’obiettivo (o in altri termini minimizza l’errore).

La descrizione della PCA di questo articolo è estremamente qualitativa e semplifica molte ipotesi alla base. Nel precedente è possibile vedere come cambia la correlazione tra le variabili ed il p-value con un piccolo script in Python.

Quello che farò nell’ultimo post dedicato a questo strumento statistico sarà realizzare una spiegazione estremamente tecnica e sintetica corredata da un’opportuno script in Python.

Grazie per aver letto l’articolo!

Un abbraccio

Andrea

ps se ci sono errori scrivimi pure 🙂

Lascia un commento

Archiviato in Ingegneria, Tecnologia

Marchionne, un vecchio articolo di HBR del 2008 e la mia esterofilia

8 anni fa la Harvard Business Review (Italia) pubblicò insieme al Sole 24 ore un inserto speciale “I Segreti della Leadership” raccoglieva in 178 pagine circa 11 articoli scritti da illustri professori, top manager e consulenti.

Ancora lo conservo e stranamente ricordavo che all’interno ci fosse un articolo scritto da Marchionne.

Non l’ho mai letto prima di oggi.

Il motivo?

Non lo so, esterofilia, immaturità mia, ma come direbbe il re Jeffrey Joffer “La cosa non ha rilevanza alcuna” e ieri ho avuto modo e piacere di leggere sia la versione inglese che ho ripubblicato sul mio profilo FB sia la versione italiana.

La cosa non ha rilevanza alcuna – Re Jeffrey Joffer

La FIAT nel giugno 2004 perdeva 5 milioni di euro al giorno, le macchine che faceva (pandino escluso) erano improponibili (giustamente io ho guidato una cinquecento modello improponibile vedi foto di repertorio) e Marchionne inoltre era:

  • Il quinto CEO alle redini dell’azienda in tre anni (uno ogni sei mesi)
  • Veniva da un settore diverso dall’industria automobilistica

Una situazione anche peggiore di quella vissuta da Luis Gerstner con IBM.

La FIAT aveva bisogno di una terapia intensiva, di quelle più critiche e la trasformazione condotta da Marchionne è stata durissima, non indolore, ma necessaria:

  • Leadership, cambiare il vecchio paradigma
  • Definizione degli obiettivi e responsabilità
  • Innovazione, non solo sul prodotto

Leadership, cambiare il vecchio paradigma

Data la complessità e la grandezza di FIAT era impossibile che tutte le decisioni fossero prese da CEO. Un problema che Marchionne aveva identificato fin da subito  era la necessità di far crescere i manager e delegare.

Inoltre nel bene o nel male le persone dovevano essere responsabili delle loro decisioni, pagandone il costo se necessario.

Marchionne nell’articolo afferma di essere stato supportato da un brillante responsabile per le risorse umane, personalmente è fantastico come lui attribuisca i suoi successi o alla squadra che ha lavorato con lui o alla fortuna (una sorta di sindrome dell’impostore).

Quando poi Marchionne sottolinea i 4 mesi all’anno passati ad esaminare le top 700 persone di FIAT e la loro performance, basandosi sui numeri e la loro capacità di condurre il cambiamento, il fattore “fortuna” è una variabile totalmente inesistente.

Altro punto interessante è in merito ai feedback: continui e non pianificati.

Definizione degli obiettivi e responsabilità.

Appena arrivato riuscì da subito a posizionare l’asticella degli obiettivi in alto, per molti troppo.

Il time to market iniziale della 500 era di 4 anni, lui con la sua squadra l’ha ridotto a 18 mesi. Ai designer ed ingegneri iniziò a chiedere spiegazioni sulla necessità di quei 48 mesi e cosa sarebbe successo se si fossero focalizzati sull’essenziale, rimuovendo molte features. Da questi input gli ingegneri e designer identificarono i vari colli di bottiglia, li rimossero, migliorando sensibilmente i tempi.

Innovazione, non solo sul prodotto

Marchionne descrive la FIAT “prodotto-centrica”, problema che Steve Blank ha identificato in molte startup, dominata essenzialmente dagli ingegneri e poco “Cliente-centrica” (o customer oriented).

Questo porta spesso a scordarsi di:

  • mercati
  • concorrenza

Parte della soluzione è stata quella sia di un costante confronto con aziende come Apple, dalle quali importare le best practice, sia scegliere persone alla guida del dipartimento di marketing che fossero realmente consapevoli del fatto che Fiat possedesse marchi storici nell’industria dell’auto.

Marchionne è riuscito a dare all’azienda quel senso di urgenza che ho visto negli studi di Kotter, ma questo cambiamento è stato possibile perché lui in prima persona è stato l’esempio aziendale.

Indubbiamente ci sono delle criticità nel suo modus operandi, dei risvolti negativi e altri meglio di me ne hanno già discusso, ma andrebbe oltre gli obiettivi di questo post, che è stato un rovistare nella libreria per poi tuffarsi nel passato.

Un abbraccio e grazie per aver letto il mio articolo.

 

Andrea

 

ps se noti qualche errore scrivimi pure, se ti è piaciuto ricondividilo! 🙂

 

“This country can’t be knocked out in one punch. We get back up again, and when we do, the worlds is gonna hear the roar of are engines”

Lascia un commento

Archiviato in Notizie e politica

Non solo Teoria

Ho ricevuto dei feedback negativi sull’ultimo post molto interessanti, sia da Filippo che da Francesco, organizzerò una cena a Formia per trattarli meglio. Una bella grigliata, una bottiglia di vino, un confronto in amicizia (in realtà io vorrei anche provare questo vermouth artigianale –>  https://amzn.to/2v0oles  che mi ha suggerito Luigi della Caffetteria, si dovrebbe trovare intorno ai 18/20€) ed imparare a fare un Negroni decente.

Ma non è di questo che voglio parlarvi!

Voglio parlarvi della dicotomia tra pratica e teoria.

Che sia il medico, che sia qualsiasi altra professione, studiare soltanto non è sufficiente, c’è bisogno di pratica.

Ma la pratica a sua volta ha bisogno di studio per affinare la tecnica.

Voi non vi fareste mai operare da un medico che ha studiato tutto sui libri ma non ha esperienza pratica, ne fareste fare esperienza sulla vostra pelle ad un medico che non ha studiato nulla.

Io tendo ad essere molto teorico, a studiare un problema in tutte le sue sfaccettature prima di arrivare al risultato finale e questa tendenza può essere estremamente negativa se non la si compensa con un po’ di pratica.

Questo è verissimo soprattutto con Python.

 

“La teoria è quando si sa tutto e niente funziona. La pratica è quando tutto funziona e nessuno sa il perchè. Noi abbiamo messo insieme la teoria e la pratica: non c’è niente che funzioni e nessuno sa il perchè”-Albert Einstein *

Durante le prossime settimane riuscirò a dedicare 20h a Python e l’errore che potrei commettere è quello di stare solo sui libri o sui corsi online e focalizzarmi sulla teoria.

Per evitare questo ho creato delle etichette per le attività che registro attraverso la Tecnica del Pomodoro.

Queste etichette servono per un piccolo programma (uno script) che riceve come input le informazioni su come ho distribuito il tempo nell’ultima settimana e mi restituisce la % di completamento, sulla base di una proporzione che deve esserci tra Pratica, Teoria e Comunicazione del Lavoro Svolto, in sintesi:

  • Lavoro 10 h
  • Studio 6 h
  • Marketing 4h

Lo script è molto grezzo e perfettibile, potevo sfruttare dei cicli for e renderlo più leggibile (vi ringrazio in anticipo per ogni feedback positivo su cosa va potenziato e negativo su cosa va migliorato).

 

La prima parte del programma mi aggiorna sul come sta procedendo l’esperienza con Python, uno script di cui vi avevo già parlato, la seconda parte è quella che valuta il “mix”.

 

Un abbraccio e grazie per aver letto il mio articolo.

 

Andrea

 

ps se noti qualche errore scrivimi pure, se ti è piaciuto ricondividilo! 🙂

 

In [2]:
import pandas as pd 
import matplotlib.pyplot as plt
import numpy as np
from datetime import datetime, timedelta


va='Python'
tvoi='Length'

csvname="logs2.csv"
#read the csv	
columns_name=['Year', 'Month', 'Day', 'Time', 'Length', 'Start', 'End', 'Activity']
dfraw=pd.read_csv(csvname,names=columns_name,sep=',',skiprows=1,skipfooter=0, index_col=False)


dfraw[tvoi] = dfraw[tvoi].astype('str')
mask = (dfraw[tvoi].str.len() == 6) 
dfraw = dfraw.loc[mask]

dfraw[tvoi]=dfraw[tvoi].str.strip()

dfraw[tvoi]=pd.to_datetime(dfraw[tvoi], format='%M:%S')
dfraw['Date'] = dfraw.apply(lambda row: datetime(row['Year'], row['Month'], row['Day']), axis=1)


pythondf=dfraw[(dfraw['Activity'].str.contains("Python",na=False)) | (dfraw['Activity'].str.contains("python",na=False))] 
numacti=pythondf.groupby('Date').count()
numacti=numacti['Activity']
numacti=numacti.divide(2)
cumulata=numacti.cumsum()


day=pd.concat([numacti, cumulata], axis=1)
day.columns=['pgiorno','cumulata']
maxh=cumulata.max()
plt.plot(day.index,day['cumulata'])
plt.xticks(rotation=90)
plt.title('Totale ore di studio e lavoro con Python (%d ore)' %(maxh))
plt.tight_layout()
plt.show()
In [26]:
#Questa parte è per l'analisi della settimana 
python_work=10
python_study=6
sutdy='study'
marketing='marketing'

python_marketing=4
total=python_work+python_study+python_marketing

#Selezioniamo solo gli ultimi giorni oggetto di analisi 
days=7
cutoff_date= pythondf['Date'].iloc[-1]- pd.Timedelta(days=days)
print(cutoff_date)
last_7days= pythondf[pythondf['Date'] > cutoff_date] 
#Qualsiasi attivita' che non abbia come label "marketing" o "study" "datacamp" "ripasso" "libro" é considerata "work"
#Per del codice migliore cercherò nei prossimi log di avere solo tre label study work marketing come metag
study_mask=(last_7days['Activity'].str.contains("ripasso",na=False) | last_7days['Activity'].str.contains("datacamp",na=False)) | (last_7days['Activity'].str.contains("Libro",na=False))
pythondf_study=last_7days[study_mask]

pythondf_marketing=last_7days[last_7days['Activity'].str.contains("marketing",na=False)]


pythondf_work=last_7days[~study_mask]

#Ricordando che i pomodori sono slot da 30 min 
#dobbiamo contare per categoria il numero di pomodori e dividere per 2
#Qui sotto si poteva realizzare un ciclo for, scusate la pigrizia, suggerimenti ben accetti 

print("Weekly % of Python Working",round(pythondf_work['Activity'].count()/2/python_work*100,2))
print("Weekly % of Python Study", round(pythondf_study['Activity'].count()/2/python_study*100,2))
print("Weekly % of Python Marketng",round(pythondf_marketing['Activity'].count()/2/python_marketing*100,2))
2018-07-18 00:00:00
Weekly % of Python Working 45.0
Weekly % of Python Study 58.33
Weekly % of Python Marketng 0.0

 

*fonte da verificare

Lascia un commento

Archiviato in riflessioni, Salute e Benessere, Scritti sparsi, Tecnologia

La vita non è un biglietto della lotteria.

Il fallimento di un nostro progetto è una evento molto frequente ed ogni volta che mi capita di viverlo in prima persona o capita a qualche amico, oltre alla profonda tristezza che mi assale, vivo un intenso periodo di riflessione.
La cosa più sbagliata da fare è non pensarci, catastrofico è non assumere un atteggiamento critico verso i propri pensieri ed il progetto in se.
Questa mattina dopo aver chiuso dei lavori preliminari stavo aiutando un amico ad un progetto che temo non sia andato bene. Dopo esserci salutati, mi è venuta in mente una frase di Andy Groove:

When you say “yes” to one thing, you are inevitably saying “no” to another

Quando dici “si” a qualcuno o qualcosa, inevitabilmente stai dicendo “no” a qualcos’altro

La frase è tratta dal libro di Andy Groove che ho letto un paio di anni fa “High Output Management”, una lettura suggerita in un’intervista da uno dei fondatori di Airbnb.
Il tempo resta una risorsa scarsissima e spesso commettiamo, inconsapevolmente, numerose azioni che portano a procrastinare le attività importanti per terminare delle attività che nello scenario migliore sono classificabili come urgenze, più frequentemente sono attività posticipabili.

 

Molto spesso siamo noi ad autosabotarci (metti che scopriamo di essere bravi?), ma di questo ne vorrei parlare con il mio amico psicologo Francesco Tramontana https://francescotramontana.com e realizzare un bel video divulgativo.

 

Bisogna programmare il proprio tempo con tutta l’incertezza che governa la nostra vita, impegnarci nel definire in modo chiaro il tempo da dedicare ai nostri progetti importanti, altrimenti i nostri discorsi, azioni e riflessioni saranno incentrate sulla fortuna/sfortuna del caso.

Le variabili esterne ci sono, sempre, ma spesso sono una giustificazione nei confronti di una sbagliata organizzazione.

Nella sfortuna i perseveranti emergono sempre.

Qui sotto il link del libro  vi interessa la lettura:

High Output Management

 

Un abbraccio e grazie per aver letto il mio articolo.

 

Andrea

 

ps se noti qualche errore scrivimi pure, se ti è piaciuto ricondividilo! 🙂

Lascia un commento

23/07/2018 · 14:47