Forse
partirò da lontano, ma se avete la pazienza di leggere tutto quanto segue vi
renderete conto che il mio discorso segue una percorso logico che giustifica le
conclusioni.
Sono
un informatico e non da ieri, ma dal 1960.
Ho iniziato questo interessante lavoro con i grandi mainframe IBM in una
grande Banca. All’inizio ero un semplice programmatore e dopo 32 anni ero
diventato un dirigente responsabile di tutto lo sviluppo hardware e software dell’Istituto.
E’ stata più una grande passione che un lavoro, e ancora oggi a 89 anni mi
piace programmare, anche se ora utilizzo linguaggi moderni.
E sono
convinto anche che sono sveglio quasi come quando avevo 20 anni, esclusivamente
perché non ho mai smesso di programmare,
cosa che ha mantenuto sempre in esercizio la mia materia grigia.
Prima di tutto è importante capire bene
perché IL SOFTWARE è così interessante
Ho
vissuto quindi quasi tutta l’evoluzione che hanno avuto i computer e il
software, e ritengo quest’ultimo uno strumento particolarmente interessante
perché è l’unico prodotto al mondo che con il passare del tempo non solo non
invecchia, ma è in grado di migliorare sempre.
Tutti
i dispositivi realizzati dall’uomo sono soggetti a guastarsi tanto è vero che è
stato definito un parametro con la sigla MTBO (Mean Time Between Outages) che in
rete potete trovare così definito: “il tempo medio tra i
guasti delle apparecchiature che comportano la perdita di continuità del
sistema o un degrado inaccettabile”.
L’MTBO per il software invece non esiste perché il suo tempo di vita
è infinito e se si riscontra un’anomalia (dovuta in genere ad un errore di
programmazione) una volta corretto esso diventa più perfetto e non presenterà
MAI PIU’ lo stesso errore; diverso invece è il caso di un dispositivo hardware
che anche se viene riparato (cosa che ha inoltre un costo certamente molto
maggiore che non una correzione di software) può invece guastarsi nuovamente.
Quindi il software, specie se manutenuto opportunamente, più
vecchio è, più è sicuro e più è performante; oltre al fatto che con degli
aggiornamenti successivi può fornire anche nuove funzioni che nel progetto
iniziale non erano state previste.
Tutti i dispositivi realizzati dall’uomo che nel passato erano
costituiti da solo hardware si sono arricchiti di molto software che ha
sostituito buona parte delle funzionalità realizzate inizialmente in hardware.
Ma c’è un’altra caratteristica importantissima che ha il
software ed è che esso è trasferibile perché basta copiarlo per averlo
disponibile su altri dispositivi.
Prendiamo ad esempio le lavatrici nelle quali è sempre stato
necessario disporre di un TIMER che si deve occupare di gestire le varie fasi
del lavaggio; nel passato questo timer era meccanico (era un grosso bussolotto)
e doveva essere costruito per ogni lavatrice con ovviamente un suo costo; oggi
il timer meccanico (quindi l’hardware) è stato sostituito da un software che
una volta realizzato può essere copiato in ogni nuova lavatrice a costo ZERO e
in più mentre i vecchi timer di tanto in tanto si guastavano e dovevano essere
sostituiti pagando il nuovo pezzo e il lavoro del tecnico che lo sostituiva, il
timer software NON SI GUASTA MAI.
E per essere completi visto che ho detto che un software può
presentare qualche anomalia per errori di programmazione, cosa che di solito
può avvenire nei primi tempi di uso, è perfino possibile, una volta corretto il
difetto, distribuire la correzione a tutti i dispositivi interessati anche già
venduti; e in molti casi questo può essere fatto via rete per cui in un
battibaleno tutte le apparecchiature possono acquisire le modifiche gratuitamente.
Questo avviene oggi regolarmente per i computer, per gli smartphone, per gli
smartwatch, per i televisori, ecc. ecc.
E vi prego di notare che questo sarebbe assolutamente
impossibile a realizzarsi con un hardware che ha un difetto di progettazione se
non realizzando tantissimi dispositivi riprogettati da far installare
uno per uno al posto di quelli difettosi nelle apparecchiature già vendute.
E’ infine c’è anche da considerare che se il produttore del
dispositivo pensa che possa essere utile una nuova funzione, quando la si
realizza con il software, la può aggiungere tranquillamente e distribuirla a
tutti i clienti sempre senza costi.
Quindi i vantaggi derivanti dall’uso di software risultano
evidentissimi sia per le aziende produttrici delle apparecchiature sia per gli
utenti.
Se ci pensate un momento, vi accorgerete che oggi non esiste più
alcun dispositivo realizzato dall’uomo che non sia un insieme di hardware e
software e ogni progetto tende ovviamente a minimizzare l’hardware e
massimizzare il software visto che quest’ultimo offre notevoli vantaggi
rispetto all’altro.
E quindi il software è
oggi anche nelle automobili
Era ovvio allora già da molto da tempo che anche l’automobile
dovesse subire questa trasformazione e che molte parti, che erano state
realizzate nel passato con apposito hardware, venissero sostituite da funzioni
software.
Ho fatto l’esempio della lavatrice, ma nel caso dell’automobile
è facile vedere che tutta la strumentazione: contachilometri, contagiri,
orologio e altri strumenti presenti sul cruscotto delle auto del passato, vengono
oggi sostituiti da un'unica parte hardware e cioè da un piccolo computer dotato
di un semplice display come monitor.
Tutti gli strumenti costosi del cruscotto sono oggi realizzati
da un software che li disegna sul display più o meno grande di corredo
dell’auto. MAI NESSUNO di quegli strumenti disegnati si guasterà richiedendo
una costosa sostituzione e/o riparazione.
E’ facile capire quando grande è stato il vantaggio economico ottenuto
dalle case produttrici di auto; basta pensare che oggi in luogo di tante parti
da costruire per ciascuna auto, occorre solo un piccolo computer, che oltre
tutto può essere lo stesso da installare su tutte le auto: dalla piccola
economica alla grande lussuosa; poi sarà il software che, come ho detto, costa
solo una volta per la realizzazione e va solo copiato sulle varie auto SENZA
COSTI, a rendere diversi i vari modelli; basterà che nelle auto più lussuose vengano
mostrate sul display più funzioni per renderle diverse dalle vetture piccole ed
economiche.
I costi di produzione dei cruscotti sia per le piccole che per
le grandi auto si è quindi fortemente ridotto rispetto al passato perché spesso
si tratta solo di copiare del codice; quindi non più produzione di pezzi da
montare su ogni singola auto, ma una sola produzione (pure molto meno costosa)
da utilizzare su TUTTE le auto prodotte.
Un altro grosso vantaggio, sempre per le case produttrici, è che
gli errori di progetto di quelle parti possono essere risolti senza più
eseguire COSTOSI RICHIAMI e senza dover produrre i pezzi difettosi tante volte
per quante vetture sono state già vendute; e in più, VOLENDO, le case
costruttrici possono regalare ai clienti delle nuove funzioni che possono
essere pensate anche in tempi successivi alla vendita di una serie di auto.
Quindi i vantaggi dell’introduzione del software sono moltissimi
e per la maggior parte sono utili alle case produttrici, ma se queste ultime lo
vogliono, possono anche interessare i clienti.
Come l’automobilista deve
valutare il software delle auto
Ma ora che penso sia chiaro un po’ di più a tutti di cosa stiamo
parlando è giunto il momento di pensare a come dovrebbe comportarsi di fronte a
questa novità un automobilista di oggi.
Chi acquista oggi una vettura deve sapere che molte delle parti
che la costituiscono, e proprio quelle con cui avrà a che fare per il suo
utilizzo, sono realizzate in software ed allora è bene informarsi per tempo sulla
posizione che ha il fornitore a tale riguardo.
Ci sono infatti case produttrici di auto che aggiornano
frequentemente il software delle proprie auto mantenendo all’ultima versione anche
quello presente sulle quelle già vendute e che magari vi aggiungono anche altre
funzioni fornendole gratuitamente a tutti; e altre aziende che invece
approfittano della flessibilità del software ad esclusivo proprio vantaggio limitandosi
soltanto a correggere qualche difetto di programmazione su quelle già vendute e
riservando le nuove funzioni solo alle nuove serie di auto da loro prodotte.
Di solito queste ultime lo fanno anche in maniera subdola per
cui difficilmente faranno capire apertamente il loro comportamento; ad esempio
c’è chi ha deciso di lucrare ulteriormente con il proprio software offrendo
alcune funzioni utili a pagamento (anzi a noleggio mensile) e per non farlo
notare all’utente all’acquisto, offre quelle funzioni gratuitamente per tre
anni; quando sarà passato quel tempo il malcapitato o non potrà più utilizzare
quelle funzioni perché disattivate dal fornitore, oppure dovrà noleggiarle (Mercedes-Benz
si comporta proprio così); è dunque opportuno indagare sull’argomento
consultando altri utenti che invece sicuramente sapranno bene per esperienza
diretta come si comporta quel dato produttore.
Se ci pensate voi credete di aver acquistato un auto con certe
caratteristiche, ma essa non è vostra in tutte le sue partii perché la fabbrica
ha tenuto per se certi dispositivi, Mercedes ha fatto finta di vendervela
come è descritta, ma ha trattenuto alcune sue parti, pure a vostra insaputa, tanto che dopo tre anni decide di farvele
pagare noleggiandovele.
In pratica è’ bene allora acquistare da quelle aziende che
utilizzano la flessibilità del software non solo a proprio vantaggio ma anche a
vantaggio del cliente.
Ma siamo sicuri che la
scelta fatta dai costruttori è corretta e coerente?
Detto questo a tutti gli automobilisti, in questo mio documento vorrei
valutare da informatico come in generale si sta diffondendo l’uso del software
sulle auto.
Io noto che i settori informatici delle varie case costruttrici
di auto (settori giovani perché nati da poco) sono molto diversi tra loro e
sono anche mediamente poco capaci.
C’è da dire che forse, anche giustamente, chi costruisce auto
predilige l’hardware anche perché da anni si è interessato solo ad esso e considera
il software uno strumento aggiuntivo a cui non ha saputo dare il giusto valore.
I risultati, dipendono ovviamente molto dai brand, ma sono però
più spesso deludenti che interessanti. Ripeto che ci sono molte differenze, ma come
ho già anticipato direi che mediamente TUTTI sono molto meno capaci in software
che non nel loro vecchio lavoro.
Io credo per la verità che anche un’azienda che fosse
specializzata nella realizzazione di software avrebbe difficoltà a realizzare
un’auto con tutte le parti hardware che le sono necessarie; in quel caso i
tecnici sarebbero bravissimi nel software e però abbastanza scarsi
nell’hardware.
E allora la domanda è: come si potrebbero produrre delle auto
che fossero quanto di meglio oggi si possa avere in quel campo, ma corredate da
un software che fosse di vera alta qualità?
Al solito si potrebbe rispondere che sarebbe bene che ognuno
possa fare il suo mestiere; i tecnici e gli ingegneri della meccanica dovrebbero
occuparsi della progettazione e realizzazione delle parti hardware dell’auto
(che non sono per niente poche) mentre per il software dovrebbero rivolgersi ai
veri esperti di quel campo e affidare a loro quella parte del lavoro.
Io penso quindi che tutti i produttori di auto dovrebbero
continuare a occuparsi della progettazione e realizzazione delle parti
meccaniche e dovrebbero affidare a degli esperti informatici la realizzazione
del software.
I costruttori dovrebbero però anche capire che non possono
proporre ciascuno un certo modo di operare pensando di essere i più bravi,
perché gli utenti non gradiscono che ogni volta che acquistano una nuova auto debbano
imparare ad interagire con un software che risulta completamente diverso da
costruttore a costruttore.
Tutti
noi saremmo disorientati se ad ogni cambio di una nuova auto dovessimo
adattarci a sistemi di guida diversa; non ci piacerebbe certamente trovare
nella nuova auto il pedale del freno in un posto diverso dal solito o il
volante sostituito da una cloche o l’acceleratore non più a pedale ma da
azionare a mano; quando cambiamo l’auto apprezziamo qualche novità ma vogliamo
comunque che certi standard siano rispettati.
E
poiché il software è in pratica il mezzo attraverso il quale l’utente colloquia
con l’autovettura è ovvio che analogamente al freno, al volante e
all’acceleratore, il modo con cui colloquiarvi debba essere abbastanza
standard.
Sta
accadendo invece la stessa idiozia che ho sempre criticato parlando del gestori
delle colonnine di ricarica dove ognuno ha inventato una propria applicazione
necessaria per ricaricare, cosa che fa solo impazzire gli utenti.
Le
auto non si cambiano così frequentemente come si va a ricaricare, ma certamente
è molto scomodo per gli utenti dover imparare ad usare un software
completamente diverso quando acquistano una nuova auto che non sia dello stesso
costruttore di quella vecchia.
E’
quindi un problema di standard che non esiste ma che dovrebbe esistere. E
allora ora provo a dimostrarvi quanto è vero quello che ho affermato.
Tutti
noi usiamo certamente un computer e l’abbiamo cambiato anche più volte ma se
fino a ieri abbiamo avuto un computer
con un sistema operativo Windows è quasi certo che non ne acquisteremo uno col
sistema operativo OSX di Apple né uno con Linux.
Questo
perché per molto tempo abbiamo interagito con il computer attraverso un sistema
operativo che ci è diventato familiare; e allora anche se cambiamo computer,
che sia più potente più capiente o meno ingombrante, comunque vorremmo
continuare ad interagirvi allo stesso modo.
Quello
che accade invece con le auto, da quando il software è presente su di esse, è
che cambiando auto si deve ricominciare ad imparare come si possono attivare le
tante funzioni, che pur essendo in buona parte le stesse su tutte le auto,
vengono messe a disposizione degli utenti in modi completamente diversi visto
che ogni costruttore ha progettato il proprio modo di colloquiare con l’utente.
E
allora non sarebbe utile e ben fatto che anche per le auto esistessero uno o
due sistemi operativi ben fatti, progettati e realizzati da chi questo lavoro
lo fa da decenni?
Certamente
sia Apple che Microsoft sarebbero in grado di realizzare due diversi ma
entrambi eccellenti sistemi operativi per auto, e se lo facessero loro,
entrambi vi integrerebbero le altre apparecchiature informatiche esistenti (PC,
telefoni, orologi, ecc) e lo farebbero ad arte e rispettando le forme a cui gli
utenti sono abituati da anni.
Quello
che dico non è una eresia perché tutti sappiamo che esiste uno standard “de
facto” (Car Play e Android auto) realizzato dalle grandi case di software che
consente di integrare gli SmartPhone con il software dell’auto di qualunque
marca; ed infatti ormai tutti i produttori di auto consentono l’uso di questa
integrazione anche se qualche brand poco corretto (tanto per non cambiare Mercedes)
la fornisce a pagamento; chi utilizza questa integrazione, e sono moltissimi,
molto spesso finisce per preferire le funzioni disponibili nell’integrazione in
luogo di quelle offerte dall’auto perché esse sono realizzate in maniera già molto
nota all’utente dato che ricalcano i metodi usati sui telefonini.
Accade
quindi spesso che non si utilizzi più il navigatore fornito dal software
dell’auto, ma un navigatore più performante, più aggiornato e gratuito e anche
a cui si è abituati da tempo; si utilizza la radio e la telefonia offerta
dall’integratore e si abbandona quasi tutto il resto del software dell’auto.
I
costruttori di auto hanno creato i propri navigatori che sono sempre peggiori
di quelli gratuiti disponibili con Car Play o Android Auto e che richiedono
aggiornamento spesso anche molto costosi, mentre quelli come Apple Maps o
Google Maps sono gratuiti, sempre aggiornatissimi e tengono conto del traffico.
I
costruttori di auto, quasi tutti, offrono una interfaccia vocale che il più
delle volte è assolutamente ridicola se raffrontata con Siri o con Alexa o con
l’assistente vocale di Google.
Insomma
questa è la dimostrazione che non è facile improvvisarsi informatici e che
sarebbe molto più saggio affidarsi a chi progetta e realizza sistemi operativi
da decenni.
Il
risultato sarebbe anche una standardizzazione dei sistemi operativi anche nelle
auto che assomiglierebbero certamente a quelli che da anni noi siamo abituati
ad usare.
Conclusione
Sarebbe
bello nel futuro poter acquistare un auto di qualunque marca e poi scegliere di
farsela consegnare con il software Windows o quello Apple o quello Linux giusto
per poter continuare a interagire con essa alla maniera a cui ciascuno di noi è avvezzo.
Questa
soluzione renderebbe anche più indipendenti gli utenti dalle manovre poco
corrette dei produttori di auto e consentirebbe a ciascuno di scegliersi il
software che più gli piace e che offre la migliore assistenza che ritiene di
poter avere.
Se
ci saranno solo pochi diversi sistemi operativi, chi ne avrà scelto uno lo continuerà
ad usare anche con la nuova auto; forse troverà nella nuova auto qualche
funzione non presente nella vecchia, ma il modo con cui la funzione sarà messa
a disposizione non differirà dalle altre già note; e se sulla vecchia auto avrà
installata qualche applicazione a lui comoda, potrà trasferirla certamente sul
sistema operativo della nuova auto senza dovervi rinunziare.
Franco
Fellicò