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ò
Nessun commento:
Posta un commento