Salta al contenuto principale

Interviste

Team Digitale: modernizzare il Paese con l’open source

A settembre abbiamo parlato con Leonardo Favario, componente del Team per la Trasformazione Digitale. Il “Team Digitale” è un gruppo di esperti formato nel 2016 per volere del Governo, il cui scopo è preparare il necessario alla digitalizzazione della pubblica amministrazione.

L’attuale epidemia ha mostrato quanto importante sia la digitalizzazione per il futuro, visto che l’unico modo per non diffondere il contagio è contattare gli uffici pubblici da casa propria, ma è una cosa a cui che il Team Digitale lavora da tempo. Il rapporto tra i cittadini e la pubblica amministrazione è farraginoso, comporta ancora dover fare la fila presso gli uffici per poter consegnare un modulo o anche semplicemente ottenere informazioni per capire cosa bisogna fare. E anche il funzionamento interno alla pubblica amministrazione stessa è complicato, a causa di inconsistenze tra uffici diversi per competenze e territorialità e anche a causa della necessità di fare continuamente copie cartacee di documenti che potrebbero rimanere esclusivamente digitali. Negli ultimi anni il Team Digitale ha costruito il “sistema operativo del paese”, un insieme di software e linee guida che permettono alla pubblica amministrazione di digitalizzare man mano sempre più parti della propria attività.

Con Leonardo abbiamo parlato di quanto è stato fatto, come la piattaforma Developers Italia, l’identità elettronica, e la fatturazione elettronica. Per il futuro, possiamo solo sperare che da questo lockdown dovuto all’epidemia si impari l’importanza della digitalizzazione.

Intervista a Linus Torvalds

Alcuni anni fa Linus Torvalds, principale autore del kernel Linux, aveva accettato una nostra intervista. I temi discussi sono tutt’ora rilevanti e sempre interessanti per gli appassionati del software libero e open source, quindi abbiamo deciso di ripubblicarla online.

Era il 25 agosto 1991 quando Linus Torvalds comunicò di aver cominciato a lavorare su un sistema operativo open source: il sistema era basato sui programmi del progetto GNU e su un kernel di sua concezione chiamato Linux (il nome originale doveva essere Freax, ma il suo amico Ari Lemmke chiamò “linux” la cartella che conteneva il codice sul server FTP). Finalmente, il progetto GNU aveva un kernel a disposizione, e quindi il primo sistema operativo FOSS era pronto (anche se ancora non stabile). Linux stesso era nato da un controversia di Torvalds con il professor Tanebaum, docente della sua università, che aveva realizzato il kernel Minix. Questo aveva, secondo il padre di Linux, due fondamentali pecche: la prima è di essere realizzato con una struttura a microkernel (molto più complicato di un kernel monolitico), e di non essere liberamente modificabile. Il tempo ha dato ragione a Linus Torvalds: infatti Minix non ha avuto successo, a differenza di Linux, perché non era veramente open source, ed anche perché non solo Minix ma anche Hurd (entrambe microkernel) sono risultati troppo complessi per poter essere realmente funzionali.
Oggi Linus Torvalds è uno dei personaggi più influenti del mondo del Free Open Source Software, assieme a Richard Stallman (l’ideatore del progetto GNU e padre della filosofia free software). A differenza di Stallman, però, il padre del pinguino ha sempre mantenuto un profilo di basso livello, cercando di farsi trascinare il meno possibile nelle varie dispute della comunità. In questa intervista Torvalds ci rivela il suo pensiero e scopriamo che, forse, il principale motivo per cui riesce a rimanere super partes è l’essere estremamente razionale, capace quindi di mettere da parte i moralismi in favore di ciò che, semplicemente, funziona. Possiamo dire che se Stallman è il pastore spirituale della comunità FOSS, sempre pronto a tirare le orecchie a chi non segue le tavole dei comandamenti, Torvalds è un regista che dirige il film che la comunità sta realizzando.

LM – Ciao Linus, tutti noi sappiamo che sei il creatore del kernel Linux e di Git. Però sappiamo poco della tua vita personale. Puoi dirci qualcosa al riguardo?
Linus Torvalds – Non so da dove cominciare… ho avuto a che fare con i computer sin dall’inizio della mia adolescenza: mio nonno (da parte di mia madre) era professore di statistica all’università di Helsinki, ed aveva uno dei primi computer per uso domestico (un Commodore VIC-20) che portava a casa per fare dei calcoli, a volte, quando avevo 11 o 12 anni. Io lo aiutavo a scrivere alcuni dei programmi (senza capire nulla della matematica che c’era dietro), e poi sono finito a scrivere giochi ed altri programmi presi da riviste d’informatica e manuali dell’epoca. Ed in certi casi scrivendo i miei stessi programmi.

I computer sono ancora il mio hobby, oltre che il mio lavoro. Al di là di quello, io leggo molto (ma per la maggior parte cose che si possono dimenticare senza problemi, come fantascienza e fantasy) e faccio scuba diving (immersioni subacquee – n.d.r.) ogni volta che posso.

Vivo a Portland, Oregon, in questi giorni (sono nato e cresciuto a Helsinki, Finlandia), sono sposato ed ho tre figlie adolescenti. E… no, nessuna di loro è molto interessata ai computer, se non come utente.

LM – Tu hai detto “Il software è come il sesso: è meglio quando è libero e gratuito”. Quindi qual’è la tua idea di software libero ed open source, ed in che modo questa è differente dall’idea di Richard Stallman?
Eh. Io non uso nemmeno più il termine “free software”, perché penso che sia un punto di partenza sbagliato.

Sia per l’ambiguità presente in lingua inglese tra “free” inteso come “libero” e “free” come “gratuito”, sia perché anche quando capisci la differenza dei due significati (che poi non è così difficile da comprendere) la parola “free” è talmente piena di carico emotivo (soprattutto negli Stati Uniti, “Land of the Free, rah, rah, USA USA USA!”) che chiunque la fa significare qualsiasi cosa voglia. Richard Stallman, in particolare, vuole definirla in un modo molto specifico ed usarla per un discorso sulla morale.

Io penso che la morale sia qualcosa di privato, e chiunque la utilizzi per fare una discussione qualunque stia sbagliando. Io posso avere le mie personali ragioni per preferire l’open source, ma sono le mie motivazioni personali, e non hanno nulla a che vedere con i motivi per i quali suggerisco agli altri di adottare l’open source.

Quindi io (ed anche altre persone) uso il termine “open source software”, e non mi disturbo a fare alcun stupido ragionamento moralistico. L’open source tende a essere semplicemente migliore dal punto vista tecnico, ed è molto più divertente partecipare al processo creativo quando questo è “open” e tutti possono collaborare. Open source significa che non c’è una singola entità che controlla, e nessuno può nascondere quello che sta facendo. Significa anche che le persone e le aziende possono competere a livelli differenti oltre al semplice software. E mi sembra interessante notare come delle persone si siano messe insieme per rendere Linux stesso migliore, ma poi altre persone prendono il risultato e lo utilizzano per fare delle altre cose interessanti che non hanno nulla a che vedere con Linux di per se, se non il fatto che avevano bisogno di un sistema operativo.

Quindi l’open source è un’ottima strada per i tecnici, affinchè possano lavorare insieme senza dover essere legati a un particolare ambito o a una azienda. Questo lo rende molto più interessante. Ma fornisce la possibilità di fare comunque cose interessanti, anche se il tuo obiettivo primario non è il software open source stesso.

LM – Che cosa ne pensi del progetto GNU HURD? Bisogna dire che HURD viene sviluppato dal 1990 e non è ancora stabile. Forse questo dimostra che i microkernel sono troppo complessi e il gioco non vale la candela?
Io penso che i microkernels siano fondamentalmente una idea sbagliata, perché pongono la complessità del progetto nel punto sbagliato (la comunicazione tra diverse entità) e ti limitano troppo dal punto di vista tecnico, mettendo da parte quel tipo di condivisione che è invece standard nei sistemi operativi tradizionali. Poi ci sono stati altri problemi con Hurd, e mentre una volta era un progetto interessante penso che ormai non sia più di rilievo da un bel po’ di tempo.

Detto questo, una delle belle cose dell’open source è che non deve necessariamente essere di rilievo: per persone che si divertono semplicemente a giocare con le cose, penso che Hurd possa essere ancora interessante.

LM – Sembra che tu non sia soddisfatto degli ultimi contributi degli sviluppatori al codice di Linux (hai detto che potresti “tornare a imprecare”)…
Questa non è certo una discussione nuova, c’è sempre stata questa tensione tra “persone che pensano sia più bello scrivere nuovo codice” e “hei, dobbiamo sistemare le cose per rilasciare la nuova versione”. Penso che al momento abbiamo trovato il giusto bilanciamento tra i due, ed il nostro ciclo di rilascio di circa 3 mesi, con una finestra di due settimane per il merge di tutti i nuovi contributi, e con poi circa 6-8 settimane per darsi una calmata funzioni piuttosto bene.

Però io finisco ancora per dover ogni tanto ricordare alle persone di darsi una calmata: capita nella maggior parte dei rilasci di una nuova versione, non è una novità, e penso che sia quasi naturale. In alcune versioni di più rispetto a altre, ma è una normale fluttuazione statistica.

LM – Quindi cosa vorresti vedere in un prossimo rilascio del kernel?
Beh, c’è un gran numero di cose su cui le persone stanno lavorando, ma alla fin fine le funzionalità di base del kernel si sono stabilizzate.

Per me personalmente, le modifiche più interessanti stanno nei miglioramenti del core, ma sono spesso molto piccole e difficili da notare: in un progetto che è vecchio più di 20 anni, il codice del core è abbastanza stabile, ed i miglioramenti sono dettagli che non importano a nessuno al di fuori del progetto stesso (a parte il fatto che rendono il kernel più efficiente e rendono più facili altri miglioramenti del codice).

Per quanto riguarda le nuove caratteristiche, la maggior parte di esse riguarda supporto per nuovo hardware. La maggior parte del lavoro fatto nel kernel è per supportare nuovo hardware e nuove architetture. Finchè i “ragazzi dell’hardware” continueranno a produrre versioni nuove e migliorate del loro hardware, noi “ragazzi del sistema operativo” avremo del lavoro da fare. Quindi non avremo mai veramente “finito”.

A volte – ma non così spesso – introduciamo anche nuove interfacce, specialmente con nuovi modelli d’uso (per esempio quando l’hardware diventa talmente piccolo ed economico da poter essere usato in modi completamente nuovi).

LM – Parlando del mondo mobile, al momento Android è il sistema operativo mobile open source più famoso. Vorremmo sapere che cosa pensi del sistema di Google ed anche dei concorrenti (per esempio Mer o Ubuntu Phone).
Ehi, io ero abituato a odiare i telefonini, perché per me erano semplicemente un altro modo per essere infastidito in qualsiasi posto io fossi. Ma con la nascita di Android per me non è più un telefonino, è un dispositivo mobile per leggere le email, ed ora lo porto sempre con me. Quindi io amo Android. E quando altri concorrenti saranno pronti, sarò felice di provarli. Una delle belle cose nell’avere a che fare con Linux è vedere come persone diverse usino Linux in modi che non erano assolutamente nei miei piani originali. Amo vedere nuovi dispositivi come questi.

LM – Sappiamo che hai utilizzato diversi ambienti desktop,passando da KDE a GNOME e poi XFCE. Quindi la domanda è: che cosa cerchi in un DE?
Quello che io cerco, più che altro, è essere lasciato in pace, ed avere la possibilità di adattare il DE in modo che le poche cose di cui ho bisogno siano a posto. Ed io non voglio che questa personalizzazione sia qualcosa su cui devo pensare più di tanto, per questo mi lamento se le poche cose che mi servono sono difficili da fare.

Per esempio, io voglio dei font più piccoli di quanto la gente normalmente desidera, perché sono abituato a avere un sacco di linee di codice (ed email) sullo schermo. Quindi i grandi font (soprattutto in cose “secondarie” come icone e barre del titolo delle finestre) che stanno prendendosi troppo spazio inutilmente, sono qualcosa di cui mi voglio liberare. Voglio che il mio lavoro sia fatto, le mie poche finestre aperte, ed il DE non dovrebbe intralciarmi. “Veloce, pronto, e leggero” è spesso più importante per me di “carino”.

E voglio che quelle poche cose che faccio siano facili da realizzare. Se non posso aprire un nuovo terminale con un singolo click del mouse su una icona che sia sempre visibile, allora c’è qualcosa di strano. Il fatto che io, a volte, abbia addirittura dovuto discutere con qualcuno su questa cosa è un po’ triste.

LM – Tornando al kernel Linux, oggi la maggior parte dei server di internet e dei dispositivi di ridotte dimensioni (dai telefoni ai router e le stampanti…) funzionano grazie a questo kernel. Forse, senza Linux queste tecnologie non esisterebbero nemmeno. Come ci si sente sapendo che miliardi di persone nel mondo utilizzano tecnologie e strumenti basati su un progetto software che tu hai creato?
Non ci penso molto, in realtà, ma penso al fatto che quello che io costruisco è importante per le persone, ed è importante per me.

Perché, certo, a me piace semplicemente programmare e giocherellare con la tecnologia, ma allo stesso tempo non voglio giocare tanto per il piacere di farlo: voglio lavorare su qualcosa che abbia un impatto sul resto del mondo. E quindi il fatto che Linux sia riuscito a avere un grande impatto, è una gran bella sensazione.

Rimac: la supercar con GNU/Linux

Chi è appassionato di automobili conosce già Rimac, ma per il resto del pubblico il nome potrebbe risultare nuovo. In effetti si tratta di una azienda decisamente moderna, fondata nel 2009 in Croazia. Rimac ha rilasciato nel 2019 il suo secondo grande progetto la Rimac C_Two: si tratta di una automobile elettrica capace di raggiungere la velocità di 415km/h, con una accelerazione da 0 a 100 km/h in appena 1,97 secondi. Per fare un confronto, la Bugatti Veyron (a combustione) arriva a 407 km/h, con una accelerazione da 0 a 100 in 2,5 secondi. Mentre la Tesla Model S, l’auto elettrica più famosa ma non progettata per le corse, arriva al massimo a 250km/h, anche se può accelerare da 0 a 100 in 2,6 secondi (quindi paragonabile alla Veyron). Ma non solo: il vero punto di forza della Rimac non è la grande velocità, ma l’alto livello di automazione. Presentata nell’estate del 2019, e in consegna ai clienti che l’hanno prenotata nei primi mesi del 2020, è la prima auto a guida autonoma di livello 4.

Per capire di cosa si tratti, ricordiamo che questo è lo standard dei sei differenti livelli di guida autonoma delle automobili:
Livello 0: Sono presenti sistemi automatici che intervengono in casi specifici (es: ABS in caso di frenata), ma nessun computer gestisce la guida per lunghi periodi di tempo
Livello 1 (hands on): I sistemi di guida automatica possono controllare l’andamento della macchina, ma solo se anche il guidatore la gestisce. Esempio: cruise control o parcheggio assistito.
Livello 2 (hands off): I computer sono in grado di guidare la macchina, ma solo per brevi periodi di tempo, quindi una persona deve sempre avere le mani sullo sterzo. Se si tolgono le mani dal volante per più di qualche minuto, la guida autonoma deve essere interrotta.
Livello 3 (eyes off): La macchina può guidare da sola in quasi ogni situazione, senza che il guidatore presti attenzione alla strada. Però la macchina può richiedere all’uomo, in situazioni complicate, di riprendere il controllo manuale.
Livello 4 (mind off): Non c’è alcun bisogno dell’intervento umano per garantire la sicurezza del viaggio: l’uomo può anche dormire durante il viaggio. In caso di problemi, la macchina riesce a parcheggiarsi da sola in luoghi dedicati al soccorso (es: piazzole o corsia di emergenza).
Livello 5: Non è mai richiesto alcun intervento dell’uomo, e non è previsto che una persona guidi l’auto. Per esempio, un servizio di taxi senza autista in cui la macchina raccoglie e trasporta i clienti senza che vi sia un pilota, oppure un veicolo per il trasporto di merci senza impiego di personale.

Per capirci, le macchine come la Tesla Model S al momento si trovano al livello 3. Raggiungendo il livello 4, la Rimac C Two è effettivamente la prima auto in grado di guidare da sola a essere consegnata nelle mani di clienti (150 persone hanno pagato i quasi 1,8 milioni di euro richiesti per questa hypercar in tre settimane dall’annuncio dell’apertura delle prenotazioni).

Ci si potrebbe chiedere: che importanza ha la Rimac C_Two per il mercato globale? A un prezzo che sfiora i due milioni di euro di sicuro nessun cliente comune se la può permettere. Ma la realtà è che la Rimac potrebbe cambiare il mercato automobilistico molto più della Tesla. Se Tesla infatti punta proprio a vendere veicoli, Rimac punta a vendere tecnologia. Le tecnologie che Rimac ha implementato nella sua lussuosa automobile a tiratura limitata verranno infatti presto cedute in licenza a altri produttori di automobili, diffondendole. Non avendo accordi di esclusiva con altri produttori, questo permetterà l’abbassamento dei prezzi dei vari sistemi di guida autonoma, perché Fiat, Mercedes, Peugeot, Toyota, e altri marchi potranno integrare le soluzioni inventate da Rimac senza dover spendere un capitale enorme per reinventare la ruota.

Ne abbiamo parlato con Tomislav Lugarić, ICU Software Manager di Rimac Automobili. Le tecnologie di Rimac sono infatti basate sull’open source: i computer di bordo utilizzano una distro Linux embedded e le librerie Qt.

Linux Magazine – Schermi e computer sono presenti nelle automobili da decenni, ma fino a pochi anni fa venivano usati più che altro per sistemi di intrattenimento. Oggi, invece, sono sempre più usati per visualizzare statistiche e permettere all’utente di modificare parametri relativi al motore, la distribuzione della coppia, lo stile di guida. Cosa si può fare con gli schermi presenti nella Rimac C Two?
Tomislav Lugarić – In effetti, la transizione dalle classiche manopole analogiche, interruttori, e rotelle verso il mondo digitale ha ridefinito completamente il modo in cui interagiamo con le automobili.
Nell’hypercar Rimac C Two il nostro obiettivo era di trovare il compromesso perfetto tra le classiche interazioni tattili e meccaniche, e i vantaggi che gli schermi digitali ci offrono. Ci sono ben 6 schermi all’interno della macchina. Il cruscotto digitale, davanti al guidatore, è dedicato a fornire solo i dati relativi alla guida. Questo display ha diverse configurazioni, che cambiano a seconda dell’attuale modalità dell’auto. Per esempio, quando si è in modalità di navigazione la maggioranza dello spazio sullo schermo è dedicato a una mappa 3D, con cose come la velocità e altri indicatori posizionati ai lati. In modalità sportiva cose come la velocità, la coppia, l’accelerazione e i tempi del giro di pista vengono presentate al pilota. C’è un certo numero di widget aggiuntivi, che il guidatore può attivare a seconda della modalità di guida usando dei pulsanti sul volante. Una parte di queste informazioni viene mostrata sullo schermo del passeggero, proprio sopra il vano portaoggetti, così anche il copilota può vedere le informazioni più importanti. I parametri più importanti della trazione sono configurati tramite tre rotelle su schermo. Queste rotelle hanno uno o più anelli come fonte di input, e al centro possono visualizzare un output. Uno di questi display viene anche usato come pulsante. Queste manopole digitali possono essere usate per attivare il motore, cambiare marcia, modificare la distribuzione della coppia tra gli assi, selezionare la modalità di guida e il controllo di trazione. Le rotelle sono posizionate vicino lo sterzo, per permettere al guidatore di impostare il comportamento dell’automobile e visualizzare l’attuale configurazione con una sola occhiata. Infine, lo schermo centrale è quello in cui si trova la maggioranza delle funzioni interattive. Qui il guidatore e il passeggero possono accedere a tutte le funzioni standard dell’auto, come il climatizzatore, la regolazione dei sedili, le luci, le funzioni multimediali (riproduzione da USB, streaming, e radio), il bluetooth con lo smartphone, Android Auto, Apple CarPlay, e un navigatore intelligente sempre connesso a internet. Abbiamo in programma anche di integrare il supporto per l’analisi dei dati raccolti dall’auto, come foto e video dalla videocamere oppure statistiche sulla guida. Dal momento che l’auto è connessa a internet, abbiamo pianificato il rilascio di nuove funzioni anche dopo la vendita.

LM- Per quali applicazioni usate le librerie libere Qt, e perché le avete preferite alle alternative?
TL- Le Qt hanno dimostrato diversi punti di forza negli anni. Anche se sono più che altro conosciute come uno strumento per creare interfacce grafiche, offrono un modo semplice e cross-platform per fare molto di più. Al di là della progettazione delle interfacce grafiche, abbiamo usato le Qt anche per cose come le interfacce di rete, la memorizzazione dei dati, la transcodifica e l’interazione con il CAN bus dell’auto. Occupandosi di un sacco di cose a basso livello per noi, le Qt ci hanno permesso di concentrarci sul nostro problema piuttosto che costringerci a creare uno strumento di sviluppo tutto nostro.

LM – Voi utilizzate Toradex come piattaforma hardware, che supporta diversi sistemi operativi. Quale sistema avete scelto?
TL – Finora abbiamo sempre avuto una buona collaborazione con Toradex, usando il loro Apalis i.MX6 SoM. Quindi per la prossima generazione di infotainment di Rimac Automobili la nostra idea è di passare al nuovo e più potente Apalis i.MX8 SoM. Utilizziamo una distro Linux embedded personalizzata, basata su Yocto. Dal momento che sviluppiamo un sacco di hardware personalizzato, e abbiamo dei requisiti molto particolari, la natura open source di Linux ci fornisce la libertà e il controllo sul prodotto finale di cui abbiamo bisogno.

LM – Rimac realizza le proprie interfacce anche per altri produttori di automobili. Come progettare il vostro hardware/software?
TL – In Rimac Automobili vediamo i nostri veicoli come il nostro brand e un modo per presentare la nostra tecnologia. Tutta la tecnologia che inseriamo nelle nostre auto rappresenta il fiore all’occhiello di quello che possiamo offrire agli altri. Questo si riflette nella filosofia con cui progettiamo il nostro hardware e software. Siccome puntiamo a un mercato di lusso e di nicchia, il numero limitato di esemplari prodotti per ogni serie ci spinge a progettare dell’hardware altamente adattabile e un software modulare. L’hardware è progettato per supportare un ampia gamma delle ultime tecnologie disponibili, permettendoci di adattarlo rapidamente alle specifiche richieste dei nostri clienti. Allo stesso modo, il nostro software è progettato con un approccio basato sui microservizi e un sistema distribuito, il che ci permette di portare rapidamente le funzionalità da un progetto all’altro e avere sistemi che possono supportare un qualsiasi numero di schermi gestiti da un qualsiasi numero di unità computazionali.

LM – La Rimac C_Two sarà la prima automobile con una guida autonoma di livello 4. Dal momento che l’auto può raggiungere velocità notevoli, avrete bisogno di molti sensori e computer con bassa latenza. Quali sensori utilizzate?
TL – Anche se la guida autonoma è gestita da un altro team di sviluppatori, farò del mio meglio per rispondere. L’auto è equipaggiata con sensori a ultrasuoni, diversi radar, un lidar, e un totale di 8 videocamere per monitorare ci che la circonda. Ci sono altri sensori come unità di misura inerziali, sistemi di rilevamento del guidatore, eccetera. Sono usati per diverse cose, dal rilevamento della pioggia alla verifica del fatto che il guidatore sia sveglio e cosciente, mappatura di ciò che circonda l’auto, evitare le collisioni, e molto altro. È difficile dare una idea della potenza di calcolo della C Two, ma diciamo che se si programmasse la macchina per minare criptovalute l’auto si ripagherebbe da sola piuttosto velocemente.

LM – È vero che un’ora di guida sulla Rimac C Two produce circa 6TeraByte di dati? Come fate a gestire tutte queste informazioni senza stalli?
TL – A seconda della modalità di guida, la quantità di dati processata dal sistema può essere anche superiore ai 6TB per ogni ora. La maggioranza delle unità computazionali è connessa tramite la rete CAN, che gestisce la maggior parte del traffico dati dipendente dal tempo, che è relativamente ridotto in termini di volume. La parte che genera più dati è rappresentata dalle mappe dell’ambiente circostante del sistema ADAS, che includono video HD, modelli 3D della strada, e centinaia di segnali con una risoluzione di un millisecondo, che devono essere rilevati sia per l’ADAS che per l’algoritmo di gestione della coppia, e per la scatola nera del veicolo. Inoltre, catturiamo diverse centinaia di segnali con diverse risoluzioni per il nostro sistema di telemetria, che ci permette di monitorare la salute del veicolo in ogni momento. L’ammontare totale dei dati prodotti dall’automobile dipendono dal fatto che si stia usando la guida autonoma o no, da come è configurata la telemetria, e quali dati il proprietario decide di registrare.

LM – La Rimac C_Two ha un sistema di riconoscimento facciale che sostituisce la chiave di avviamento. Al momento molte persone non sono convinte dal fatto di essere riprese da una videocamera se non sanno come funzioni esattamente il sistema. È una situazione in cui l’open source può risultare utile: se il codice è liberamente disponibile i clienti potranno sapere che le immagini non verranno usate senza il loro permesso. A suo parere, può essere possibile in futuro rilasciare il codice di alcuni sistemi dell’auto, per guadagnare la fiducia dei clienti?
TL – Questo è un problema complicato, che deve essere esaminato sotto diversi punti di vista. Nonostante io personalmente sia convinto che rendere alcuni sistemi open source aumenterebbe la fiducia del cliente, potrebbe anche rendere più facile per i malintenzionati la progettazione di attacchi contro il sistema stesso. Inoltre, da un lato l’open source aiuta a costruire una community che utilizza attivamente la tecnologia, la migliora e corregge gli errori. Ma allo stesso tempo è diametralmente opposto al mantenere la proprietà intellettuale del prodotto. La mia opinione è che in Rimac Automobili dovremmo provare questa opzione.

LM – Più in generale, quale dovrebbe essere il corretto equilibrio tra open source e segreti industriali?
TL – Personalmente, credo che il bilancio dovrebbe puntare all’open source più di quanto molte persone potrebbero pensare. Molti sistemi potrebbero essere rilasciati come open source senza alcun danno per l’azienda. Solo un gruppo molto ristretto di informazioni dovrebbe rimanere un segreto brevettato. Credo che oggi come oggi sia molto più importante fare una cosa bene, avere un buon rapporto con le aziende partner e un buon prodotto, piuttosto che provare a avere una monopolio su qualcosa. Prima o poi, qualcuno farà il reverse engineering delle tecnologie. È meglio porre gli sforzi nel produrre nuova tecnologia piuttosto che nel tenere nascosto per sempre quello che si è già fatto.

LM – Gli appassionati di automobili amano fare il car tuning, sostituire i motori, gli scarichi, eccetera. Con le auto elettriche e ad alta automazione c’è il potenziale anche per personalizzazioni a livello software. C’è la possibilità che rilasciate un SDK per permettere ad altri di sviluppare applicazioni per le vostre auto, oppure ritiene che potrebbe essere pericoloso?
TL – Vedo già apparire rari esempi di queste personalizzazioni. C’è una serie di strumenti, come FORScan, che permettono di collegare la propria macchina al computer con un adattatore USB-OBDII e modificare una serie di parametri. Un mio collega ha una automobile che permette un certo grado di personalizzazione dell’interfaccia grafica degli schermi usando uno strumento per PC. C’è un certo numero di appassionati che comprano una automobile proprio perché offre questo tipo di caratteristica. Un dettaglio interessante è che su quella specifica auto il produttore ha disabilitato questa funzione con un aggiornamento del software, quindi gli appassionati si rifiutano di fare quell’aggiornamento, e hanno trovato modi per fare il roll back dell’aggiornamento in modo da mantenere quella funzionalità. Credo che questa cosa succederà ovunque in un prossimo futuro. Però ci deve essere una qualche forma di restrizione. Permettere agli appassionati di modificare il layout dei loro schermi o la struttura dei menù degli schermi centrali è una cosa buona, visto che nella peggiore delle ipotesi ci si ritroverebbe con una interfaccia grafica brutta. Ma permettere l’accesso software alle unità computazionali, come la centralina ABS o gli airbag, è estremamente pericoloso, e credo che il rischio per la vita umana, così come la responsabilità legale, sia semplicemente troppo grande per consentire questo tipo di modifiche.

LM – Ovviamente, una automobile altamente automatizzata può essere vittima di pirateria informatica, è già successo a altri produttori di auto. Come avete protetto i computer della Rimac C_Two dai potenziali attacchi?
TL – Stiamo attivamente proteggendo la C_Two con più livelli di protezione possibili. Non possiamo pensare di proteggerci con uno strumento solo: ogni livello deve proteggere la macchina da uno specifico tipo di attacco. A basso livello cose come la numerazione della sequenza dei messaggi CAN e la loro checksum proteggono dall’iniezione di messaggi non validi. Sul livello dell’infotainment, cose come la crittografia delle partizioni e la firma digitale dell’intera immagine del sistema operativo proteggono dall’avvio di un sistema operativo compromesso. La macchina di per se non ha servizi che possano accettare connessioni da internet, è sempre la macchina a connettersi a un server. Utilizziamo gli ultimi algoritmi di crittografia e dei messaggi di autorizzazione per garantire l’identità dell’automobile e del server. Il server che ospita il sistema M2M presenta le sue sfide, simili alle sfide di una banca per proteggere i dati dei suoi clienti. In Rimac Automobili vediamo questa cosa come uno sforzo congiunto di diversi team di progettisti e, come in tutti i problemi di cybersecurity, rimarrà sempre una gara tra noi e i pirati informatici.

Arriva il PinePhone con KDE Plasma Mobile

Gli appassionati della tecnologia libera e della sicurezza dei propri dati conoscono già il PinePhone, smartphone basato sulla scheda di prototipazione Pine64 (una alternativa al RaspberryPi). La novità è che dal giorno 1 dicembre sarà però possibile preordinare una nuova versione, dotata di Plasma Mobile. Si tratta del primo sistema operativo progettato proprio in collaborazione con gli sviluppatori del PinePhone, che permette quindi di sfruttare le caratteristiche di questo dispositivo. Il PinePhone è infatti uno smartphone, ma essendo dotato di una vera e propria distribuzione GNU/Linux (basata su Ubuntu) è anche uno strumento perfetto per lavorare, vista la possibilità di installare software dai repository come su un qualsiasi PC. Naturalmente si possono anche installare le app Android, grazie a AnBox.

Il PinePhone è ovviamente adatto alla conservazione di dati sensibili e alla protezione della nostra privacy, visto che contiene degli interruttori hardware per disattivare l’antenna LTE, il WiFi, il microfono, le videocamere, e l’altoparlante.

Il vantaggio dell’ecosistema di app Plasma Mobile è la perfetta integrazione con gli altri dispositivi: traferire file e persino controllare il proprio smartphone dal PC (o viceversa) è facilissimo, grazie a KDE Connect. Le applicazioni tipiche di KDE, come l’editor di testi Kate e il visualizzatore di documenti Okular, sono tra le più avanzate in circolazione e rendono il PinePhone un dispositivo mobile potenzialmente adatto per lavorare. La versione con 3GB di RAM è fornita con una dock di ricarica che offre delle prese USB per collegare mouse e tastiera, oltre a una porta video HD, per utilizzare lo smartphone come un vero e proprio PC tascabile.

Per chi vuole approfondire il funzionamento di questo sistema, pubblichiamo il video dell’intervista che aveva realizzato l’anno scorso ad alcuni sviluppatori di Plasma Mobile:

Team Digitale: modernizzare il Paese con l’open source

A settembre abbiamo parlato con Leonardo Favario, componente del Team per la Trasformazione Digitale. Il “Team Digitale” è un gruppo di esperti formato nel 2016 per volere del Governo, il cui scopo è preparare il necessario alla digitalizzazione della pubblica amministrazione.

L’attuale epidemia ha mostrato quanto importante sia la digitalizzazione per il futuro, visto che l’unico modo per non diffondere il contagio è contattare gli uffici pubblici da casa propria, ma è una cosa a cui che il Team Digitale lavora da tempo. Il rapporto tra i cittadini e la pubblica amministrazione è farraginoso, comporta ancora dover fare la fila presso gli uffici per poter consegnare un modulo o anche semplicemente ottenere informazioni per capire cosa bisogna fare. E anche il funzionamento interno alla pubblica amministrazione stessa è complicato, a causa di inconsistenze tra uffici diversi per competenze e territorialità e anche a causa della necessità di fare continuamente copie cartacee di documenti che potrebbero rimanere esclusivamente digitali. Negli ultimi anni il Team Digitale ha costruito il “sistema operativo del paese”, un insieme di software e linee guida che permettono alla pubblica amministrazione di digitalizzare man mano sempre più parti della propria attività.

Con Leonardo abbiamo parlato di quanto è stato fatto, come la piattaforma Developers Italia, l’identità elettronica, e la fatturazione elettronica. Per il futuro, possiamo solo sperare che da questo lockdown dovuto all’epidemia si impari l’importanza della digitalizzazione.

Intervista a Linus Torvalds

Alcuni anni fa Linus Torvalds, principale autore del kernel Linux, aveva accettato una nostra intervista. I temi discussi sono tutt’ora rilevanti e sempre interessanti per gli appassionati del software libero e open source, quindi abbiamo deciso di ripubblicarla online.

Era il 25 agosto 1991 quando Linus Torvalds comunicò di aver cominciato a lavorare su un sistema operativo open source: il sistema era basato sui programmi del progetto GNU e su un kernel di sua concezione chiamato Linux (il nome originale doveva essere Freax, ma il suo amico Ari Lemmke chiamò “linux” la cartella che conteneva il codice sul server FTP). Finalmente, il progetto GNU aveva un kernel a disposizione, e quindi il primo sistema operativo FOSS era pronto (anche se ancora non stabile). Linux stesso era nato da un controversia di Torvalds con il professor Tanebaum, docente della sua università, che aveva realizzato il kernel Minix. Questo aveva, secondo il padre di Linux, due fondamentali pecche: la prima è di essere realizzato con una struttura a microkernel (molto più complicato di un kernel monolitico), e di non essere liberamente modificabile. Il tempo ha dato ragione a Linus Torvalds: infatti Minix non ha avuto successo, a differenza di Linux, perché non era veramente open source, ed anche perché non solo Minix ma anche Hurd (entrambe microkernel) sono risultati troppo complessi per poter essere realmente funzionali.
Oggi Linus Torvalds è uno dei personaggi più influenti del mondo del Free Open Source Software, assieme a Richard Stallman (l’ideatore del progetto GNU e padre della filosofia free software). A differenza di Stallman, però, il padre del pinguino ha sempre mantenuto un profilo di basso livello, cercando di farsi trascinare il meno possibile nelle varie dispute della comunità. In questa intervista Torvalds ci rivela il suo pensiero e scopriamo che, forse, il principale motivo per cui riesce a rimanere super partes è l’essere estremamente razionale, capace quindi di mettere da parte i moralismi in favore di ciò che, semplicemente, funziona. Possiamo dire che se Stallman è il pastore spirituale della comunità FOSS, sempre pronto a tirare le orecchie a chi non segue le tavole dei comandamenti, Torvalds è un regista che dirige il film che la comunità sta realizzando.

LM – Ciao Linus, tutti noi sappiamo che sei il creatore del kernel Linux e di Git. Però sappiamo poco della tua vita personale. Puoi dirci qualcosa al riguardo?
Linus Torvalds – Non so da dove cominciare… ho avuto a che fare con i computer sin dall’inizio della mia adolescenza: mio nonno (da parte di mia madre) era professore di statistica all’università di Helsinki, ed aveva uno dei primi computer per uso domestico (un Commodore VIC-20) che portava a casa per fare dei calcoli, a volte, quando avevo 11 o 12 anni. Io lo aiutavo a scrivere alcuni dei programmi (senza capire nulla della matematica che c’era dietro), e poi sono finito a scrivere giochi ed altri programmi presi da riviste d’informatica e manuali dell’epoca. Ed in certi casi scrivendo i miei stessi programmi.

I computer sono ancora il mio hobby, oltre che il mio lavoro. Al di là di quello, io leggo molto (ma per la maggior parte cose che si possono dimenticare senza problemi, come fantascienza e fantasy) e faccio scuba diving (immersioni subacquee – n.d.r.) ogni volta che posso.

Vivo a Portland, Oregon, in questi giorni (sono nato e cresciuto a Helsinki, Finlandia), sono sposato ed ho tre figlie adolescenti. E… no, nessuna di loro è molto interessata ai computer, se non come utente.

LM – Tu hai detto “Il software è come il sesso: è meglio quando è libero e gratuito”. Quindi qual’è la tua idea di software libero ed open source, ed in che modo questa è differente dall’idea di Richard Stallman?
Eh. Io non uso nemmeno più il termine “free software”, perché penso che sia un punto di partenza sbagliato.

Sia per l’ambiguità presente in lingua inglese tra “free” inteso come “libero” e “free” come “gratuito”, sia perché anche quando capisci la differenza dei due significati (che poi non è così difficile da comprendere) la parola “free” è talmente piena di carico emotivo (soprattutto negli Stati Uniti, “Land of the Free, rah, rah, USA USA USA!”) che chiunque la fa significare qualsiasi cosa voglia. Richard Stallman, in particolare, vuole definirla in un modo molto specifico ed usarla per un discorso sulla morale.

Io penso che la morale sia qualcosa di privato, e chiunque la utilizzi per fare una discussione qualunque stia sbagliando. Io posso avere le mie personali ragioni per preferire l’open source, ma sono le mie motivazioni personali, e non hanno nulla a che vedere con i motivi per i quali suggerisco agli altri di adottare l’open source.

Quindi io (ed anche altre persone) uso il termine “open source software”, e non mi disturbo a fare alcun stupido ragionamento moralistico. L’open source tende a essere semplicemente migliore dal punto vista tecnico, ed è molto più divertente partecipare al processo creativo quando questo è “open” e tutti possono collaborare. Open source significa che non c’è una singola entità che controlla, e nessuno può nascondere quello che sta facendo. Significa anche che le persone e le aziende possono competere a livelli differenti oltre al semplice software. E mi sembra interessante notare come delle persone si siano messe insieme per rendere Linux stesso migliore, ma poi altre persone prendono il risultato e lo utilizzano per fare delle altre cose interessanti che non hanno nulla a che vedere con Linux di per se, se non il fatto che avevano bisogno di un sistema operativo.

Quindi l’open source è un’ottima strada per i tecnici, affinchè possano lavorare insieme senza dover essere legati a un particolare ambito o a una azienda. Questo lo rende molto più interessante. Ma fornisce la possibilità di fare comunque cose interessanti, anche se il tuo obiettivo primario non è il software open source stesso.

LM – Che cosa ne pensi del progetto GNU HURD? Bisogna dire che HURD viene sviluppato dal 1990 e non è ancora stabile. Forse questo dimostra che i microkernel sono troppo complessi e il gioco non vale la candela?
Io penso che i microkernels siano fondamentalmente una idea sbagliata, perché pongono la complessità del progetto nel punto sbagliato (la comunicazione tra diverse entità) e ti limitano troppo dal punto di vista tecnico, mettendo da parte quel tipo di condivisione che è invece standard nei sistemi operativi tradizionali. Poi ci sono stati altri problemi con Hurd, e mentre una volta era un progetto interessante penso che ormai non sia più di rilievo da un bel po’ di tempo.

Detto questo, una delle belle cose dell’open source è che non deve necessariamente essere di rilievo: per persone che si divertono semplicemente a giocare con le cose, penso che Hurd possa essere ancora interessante.

LM – Sembra che tu non sia soddisfatto degli ultimi contributi degli sviluppatori al codice di Linux (hai detto che potresti “tornare a imprecare”)…
Questa non è certo una discussione nuova, c’è sempre stata questa tensione tra “persone che pensano sia più bello scrivere nuovo codice” e “hei, dobbiamo sistemare le cose per rilasciare la nuova versione”. Penso che al momento abbiamo trovato il giusto bilanciamento tra i due, ed il nostro ciclo di rilascio di circa 3 mesi, con una finestra di due settimane per il merge di tutti i nuovi contributi, e con poi circa 6-8 settimane per darsi una calmata funzioni piuttosto bene.

Però io finisco ancora per dover ogni tanto ricordare alle persone di darsi una calmata: capita nella maggior parte dei rilasci di una nuova versione, non è una novità, e penso che sia quasi naturale. In alcune versioni di più rispetto a altre, ma è una normale fluttuazione statistica.

LM – Quindi cosa vorresti vedere in un prossimo rilascio del kernel?
Beh, c’è un gran numero di cose su cui le persone stanno lavorando, ma alla fin fine le funzionalità di base del kernel si sono stabilizzate.

Per me personalmente, le modifiche più interessanti stanno nei miglioramenti del core, ma sono spesso molto piccole e difficili da notare: in un progetto che è vecchio più di 20 anni, il codice del core è abbastanza stabile, ed i miglioramenti sono dettagli che non importano a nessuno al di fuori del progetto stesso (a parte il fatto che rendono il kernel più efficiente e rendono più facili altri miglioramenti del codice).

Per quanto riguarda le nuove caratteristiche, la maggior parte di esse riguarda supporto per nuovo hardware. La maggior parte del lavoro fatto nel kernel è per supportare nuovo hardware e nuove architetture. Finchè i “ragazzi dell’hardware” continueranno a produrre versioni nuove e migliorate del loro hardware, noi “ragazzi del sistema operativo” avremo del lavoro da fare. Quindi non avremo mai veramente “finito”.

A volte – ma non così spesso – introduciamo anche nuove interfacce, specialmente con nuovi modelli d’uso (per esempio quando l’hardware diventa talmente piccolo ed economico da poter essere usato in modi completamente nuovi).

LM – Parlando del mondo mobile, al momento Android è il sistema operativo mobile open source più famoso. Vorremmo sapere che cosa pensi del sistema di Google ed anche dei concorrenti (per esempio Mer o Ubuntu Phone).
Ehi, io ero abituato a odiare i telefonini, perché per me erano semplicemente un altro modo per essere infastidito in qualsiasi posto io fossi. Ma con la nascita di Android per me non è più un telefonino, è un dispositivo mobile per leggere le email, ed ora lo porto sempre con me. Quindi io amo Android. E quando altri concorrenti saranno pronti, sarò felice di provarli. Una delle belle cose nell’avere a che fare con Linux è vedere come persone diverse usino Linux in modi che non erano assolutamente nei miei piani originali. Amo vedere nuovi dispositivi come questi.

LM – Sappiamo che hai utilizzato diversi ambienti desktop,passando da KDE a GNOME e poi XFCE. Quindi la domanda è: che cosa cerchi in un DE?
Quello che io cerco, più che altro, è essere lasciato in pace, ed avere la possibilità di adattare il DE in modo che le poche cose di cui ho bisogno siano a posto. Ed io non voglio che questa personalizzazione sia qualcosa su cui devo pensare più di tanto, per questo mi lamento se le poche cose che mi servono sono difficili da fare.

Per esempio, io voglio dei font più piccoli di quanto la gente normalmente desidera, perché sono abituato a avere un sacco di linee di codice (ed email) sullo schermo. Quindi i grandi font (soprattutto in cose “secondarie” come icone e barre del titolo delle finestre) che stanno prendendosi troppo spazio inutilmente, sono qualcosa di cui mi voglio liberare. Voglio che il mio lavoro sia fatto, le mie poche finestre aperte, ed il DE non dovrebbe intralciarmi. “Veloce, pronto, e leggero” è spesso più importante per me di “carino”.

E voglio che quelle poche cose che faccio siano facili da realizzare. Se non posso aprire un nuovo terminale con un singolo click del mouse su una icona che sia sempre visibile, allora c’è qualcosa di strano. Il fatto che io, a volte, abbia addirittura dovuto discutere con qualcuno su questa cosa è un po’ triste.

LM – Tornando al kernel Linux, oggi la maggior parte dei server di internet e dei dispositivi di ridotte dimensioni (dai telefoni ai router e le stampanti…) funzionano grazie a questo kernel. Forse, senza Linux queste tecnologie non esisterebbero nemmeno. Come ci si sente sapendo che miliardi di persone nel mondo utilizzano tecnologie e strumenti basati su un progetto software che tu hai creato?
Non ci penso molto, in realtà, ma penso al fatto che quello che io costruisco è importante per le persone, ed è importante per me.

Perché, certo, a me piace semplicemente programmare e giocherellare con la tecnologia, ma allo stesso tempo non voglio giocare tanto per il piacere di farlo: voglio lavorare su qualcosa che abbia un impatto sul resto del mondo. E quindi il fatto che Linux sia riuscito a avere un grande impatto, è una gran bella sensazione.

Rimac: la supercar con GNU/Linux

Chi è appassionato di automobili conosce già Rimac, ma per il resto del pubblico il nome potrebbe risultare nuovo. In effetti si tratta di una azienda decisamente moderna, fondata nel 2009 in Croazia. Rimac ha rilasciato nel 2019 il suo secondo grande progetto la Rimac C_Two: si tratta di una automobile elettrica capace di raggiungere la velocità di 415km/h, con una accelerazione da 0 a 100 km/h in appena 1,97 secondi. Per fare un confronto, la Bugatti Veyron (a combustione) arriva a 407 km/h, con una accelerazione da 0 a 100 in 2,5 secondi. Mentre la Tesla Model S, l’auto elettrica più famosa ma non progettata per le corse, arriva al massimo a 250km/h, anche se può accelerare da 0 a 100 in 2,6 secondi (quindi paragonabile alla Veyron). Ma non solo: il vero punto di forza della Rimac non è la grande velocità, ma l’alto livello di automazione. Presentata nell’estate del 2019, e in consegna ai clienti che l’hanno prenotata nei primi mesi del 2020, è la prima auto a guida autonoma di livello 4.

Per capire di cosa si tratti, ricordiamo che questo è lo standard dei sei differenti livelli di guida autonoma delle automobili:
Livello 0: Sono presenti sistemi automatici che intervengono in casi specifici (es: ABS in caso di frenata), ma nessun computer gestisce la guida per lunghi periodi di tempo
Livello 1 (hands on): I sistemi di guida automatica possono controllare l’andamento della macchina, ma solo se anche il guidatore la gestisce. Esempio: cruise control o parcheggio assistito.
Livello 2 (hands off): I computer sono in grado di guidare la macchina, ma solo per brevi periodi di tempo, quindi una persona deve sempre avere le mani sullo sterzo. Se si tolgono le mani dal volante per più di qualche minuto, la guida autonoma deve essere interrotta.
Livello 3 (eyes off): La macchina può guidare da sola in quasi ogni situazione, senza che il guidatore presti attenzione alla strada. Però la macchina può richiedere all’uomo, in situazioni complicate, di riprendere il controllo manuale.
Livello 4 (mind off): Non c’è alcun bisogno dell’intervento umano per garantire la sicurezza del viaggio: l’uomo può anche dormire durante il viaggio. In caso di problemi, la macchina riesce a parcheggiarsi da sola in luoghi dedicati al soccorso (es: piazzole o corsia di emergenza).
Livello 5: Non è mai richiesto alcun intervento dell’uomo, e non è previsto che una persona guidi l’auto. Per esempio, un servizio di taxi senza autista in cui la macchina raccoglie e trasporta i clienti senza che vi sia un pilota, oppure un veicolo per il trasporto di merci senza impiego di personale.

Per capirci, le macchine come la Tesla Model S al momento si trovano al livello 3. Raggiungendo il livello 4, la Rimac C Two è effettivamente la prima auto in grado di guidare da sola a essere consegnata nelle mani di clienti (150 persone hanno pagato i quasi 1,8 milioni di euro richiesti per questa hypercar in tre settimane dall’annuncio dell’apertura delle prenotazioni).

Ci si potrebbe chiedere: che importanza ha la Rimac C_Two per il mercato globale? A un prezzo che sfiora i due milioni di euro di sicuro nessun cliente comune se la può permettere. Ma la realtà è che la Rimac potrebbe cambiare il mercato automobilistico molto più della Tesla. Se Tesla infatti punta proprio a vendere veicoli, Rimac punta a vendere tecnologia. Le tecnologie che Rimac ha implementato nella sua lussuosa automobile a tiratura limitata verranno infatti presto cedute in licenza a altri produttori di automobili, diffondendole. Non avendo accordi di esclusiva con altri produttori, questo permetterà l’abbassamento dei prezzi dei vari sistemi di guida autonoma, perché Fiat, Mercedes, Peugeot, Toyota, e altri marchi potranno integrare le soluzioni inventate da Rimac senza dover spendere un capitale enorme per reinventare la ruota.

Ne abbiamo parlato con Tomislav Lugarić, ICU Software Manager di Rimac Automobili. Le tecnologie di Rimac sono infatti basate sull’open source: i computer di bordo utilizzano una distro Linux embedded e le librerie Qt.

Linux Magazine – Schermi e computer sono presenti nelle automobili da decenni, ma fino a pochi anni fa venivano usati più che altro per sistemi di intrattenimento. Oggi, invece, sono sempre più usati per visualizzare statistiche e permettere all’utente di modificare parametri relativi al motore, la distribuzione della coppia, lo stile di guida. Cosa si può fare con gli schermi presenti nella Rimac C Two?
Tomislav Lugarić – In effetti, la transizione dalle classiche manopole analogiche, interruttori, e rotelle verso il mondo digitale ha ridefinito completamente il modo in cui interagiamo con le automobili.
Nell’hypercar Rimac C Two il nostro obiettivo era di trovare il compromesso perfetto tra le classiche interazioni tattili e meccaniche, e i vantaggi che gli schermi digitali ci offrono. Ci sono ben 6 schermi all’interno della macchina. Il cruscotto digitale, davanti al guidatore, è dedicato a fornire solo i dati relativi alla guida. Questo display ha diverse configurazioni, che cambiano a seconda dell’attuale modalità dell’auto. Per esempio, quando si è in modalità di navigazione la maggioranza dello spazio sullo schermo è dedicato a una mappa 3D, con cose come la velocità e altri indicatori posizionati ai lati. In modalità sportiva cose come la velocità, la coppia, l’accelerazione e i tempi del giro di pista vengono presentate al pilota. C’è un certo numero di widget aggiuntivi, che il guidatore può attivare a seconda della modalità di guida usando dei pulsanti sul volante. Una parte di queste informazioni viene mostrata sullo schermo del passeggero, proprio sopra il vano portaoggetti, così anche il copilota può vedere le informazioni più importanti. I parametri più importanti della trazione sono configurati tramite tre rotelle su schermo. Queste rotelle hanno uno o più anelli come fonte di input, e al centro possono visualizzare un output. Uno di questi display viene anche usato come pulsante. Queste manopole digitali possono essere usate per attivare il motore, cambiare marcia, modificare la distribuzione della coppia tra gli assi, selezionare la modalità di guida e il controllo di trazione. Le rotelle sono posizionate vicino lo sterzo, per permettere al guidatore di impostare il comportamento dell’automobile e visualizzare l’attuale configurazione con una sola occhiata. Infine, lo schermo centrale è quello in cui si trova la maggioranza delle funzioni interattive. Qui il guidatore e il passeggero possono accedere a tutte le funzioni standard dell’auto, come il climatizzatore, la regolazione dei sedili, le luci, le funzioni multimediali (riproduzione da USB, streaming, e radio), il bluetooth con lo smartphone, Android Auto, Apple CarPlay, e un navigatore intelligente sempre connesso a internet. Abbiamo in programma anche di integrare il supporto per l’analisi dei dati raccolti dall’auto, come foto e video dalla videocamere oppure statistiche sulla guida. Dal momento che l’auto è connessa a internet, abbiamo pianificato il rilascio di nuove funzioni anche dopo la vendita.

LM- Per quali applicazioni usate le librerie libere Qt, e perché le avete preferite alle alternative?
TL- Le Qt hanno dimostrato diversi punti di forza negli anni. Anche se sono più che altro conosciute come uno strumento per creare interfacce grafiche, offrono un modo semplice e cross-platform per fare molto di più. Al di là della progettazione delle interfacce grafiche, abbiamo usato le Qt anche per cose come le interfacce di rete, la memorizzazione dei dati, la transcodifica e l’interazione con il CAN bus dell’auto. Occupandosi di un sacco di cose a basso livello per noi, le Qt ci hanno permesso di concentrarci sul nostro problema piuttosto che costringerci a creare uno strumento di sviluppo tutto nostro.

LM – Voi utilizzate Toradex come piattaforma hardware, che supporta diversi sistemi operativi. Quale sistema avete scelto?
TL – Finora abbiamo sempre avuto una buona collaborazione con Toradex, usando il loro Apalis i.MX6 SoM. Quindi per la prossima generazione di infotainment di Rimac Automobili la nostra idea è di passare al nuovo e più potente Apalis i.MX8 SoM. Utilizziamo una distro Linux embedded personalizzata, basata su Yocto. Dal momento che sviluppiamo un sacco di hardware personalizzato, e abbiamo dei requisiti molto particolari, la natura open source di Linux ci fornisce la libertà e il controllo sul prodotto finale di cui abbiamo bisogno.

LM – Rimac realizza le proprie interfacce anche per altri produttori di automobili. Come progettare il vostro hardware/software?
TL – In Rimac Automobili vediamo i nostri veicoli come il nostro brand e un modo per presentare la nostra tecnologia. Tutta la tecnologia che inseriamo nelle nostre auto rappresenta il fiore all’occhiello di quello che possiamo offrire agli altri. Questo si riflette nella filosofia con cui progettiamo il nostro hardware e software. Siccome puntiamo a un mercato di lusso e di nicchia, il numero limitato di esemplari prodotti per ogni serie ci spinge a progettare dell’hardware altamente adattabile e un software modulare. L’hardware è progettato per supportare un ampia gamma delle ultime tecnologie disponibili, permettendoci di adattarlo rapidamente alle specifiche richieste dei nostri clienti. Allo stesso modo, il nostro software è progettato con un approccio basato sui microservizi e un sistema distribuito, il che ci permette di portare rapidamente le funzionalità da un progetto all’altro e avere sistemi che possono supportare un qualsiasi numero di schermi gestiti da un qualsiasi numero di unità computazionali.

LM – La Rimac C_Two sarà la prima automobile con una guida autonoma di livello 4. Dal momento che l’auto può raggiungere velocità notevoli, avrete bisogno di molti sensori e computer con bassa latenza. Quali sensori utilizzate?
TL – Anche se la guida autonoma è gestita da un altro team di sviluppatori, farò del mio meglio per rispondere. L’auto è equipaggiata con sensori a ultrasuoni, diversi radar, un lidar, e un totale di 8 videocamere per monitorare ci che la circonda. Ci sono altri sensori come unità di misura inerziali, sistemi di rilevamento del guidatore, eccetera. Sono usati per diverse cose, dal rilevamento della pioggia alla verifica del fatto che il guidatore sia sveglio e cosciente, mappatura di ciò che circonda l’auto, evitare le collisioni, e molto altro. È difficile dare una idea della potenza di calcolo della C Two, ma diciamo che se si programmasse la macchina per minare criptovalute l’auto si ripagherebbe da sola piuttosto velocemente.

LM – È vero che un’ora di guida sulla Rimac C Two produce circa 6TeraByte di dati? Come fate a gestire tutte queste informazioni senza stalli?
TL – A seconda della modalità di guida, la quantità di dati processata dal sistema può essere anche superiore ai 6TB per ogni ora. La maggioranza delle unità computazionali è connessa tramite la rete CAN, che gestisce la maggior parte del traffico dati dipendente dal tempo, che è relativamente ridotto in termini di volume. La parte che genera più dati è rappresentata dalle mappe dell’ambiente circostante del sistema ADAS, che includono video HD, modelli 3D della strada, e centinaia di segnali con una risoluzione di un millisecondo, che devono essere rilevati sia per l’ADAS che per l’algoritmo di gestione della coppia, e per la scatola nera del veicolo. Inoltre, catturiamo diverse centinaia di segnali con diverse risoluzioni per il nostro sistema di telemetria, che ci permette di monitorare la salute del veicolo in ogni momento. L’ammontare totale dei dati prodotti dall’automobile dipendono dal fatto che si stia usando la guida autonoma o no, da come è configurata la telemetria, e quali dati il proprietario decide di registrare.

LM – La Rimac C_Two ha un sistema di riconoscimento facciale che sostituisce la chiave di avviamento. Al momento molte persone non sono convinte dal fatto di essere riprese da una videocamera se non sanno come funzioni esattamente il sistema. È una situazione in cui l’open source può risultare utile: se il codice è liberamente disponibile i clienti potranno sapere che le immagini non verranno usate senza il loro permesso. A suo parere, può essere possibile in futuro rilasciare il codice di alcuni sistemi dell’auto, per guadagnare la fiducia dei clienti?
TL – Questo è un problema complicato, che deve essere esaminato sotto diversi punti di vista. Nonostante io personalmente sia convinto che rendere alcuni sistemi open source aumenterebbe la fiducia del cliente, potrebbe anche rendere più facile per i malintenzionati la progettazione di attacchi contro il sistema stesso. Inoltre, da un lato l’open source aiuta a costruire una community che utilizza attivamente la tecnologia, la migliora e corregge gli errori. Ma allo stesso tempo è diametralmente opposto al mantenere la proprietà intellettuale del prodotto. La mia opinione è che in Rimac Automobili dovremmo provare questa opzione.

LM – Più in generale, quale dovrebbe essere il corretto equilibrio tra open source e segreti industriali?
TL – Personalmente, credo che il bilancio dovrebbe puntare all’open source più di quanto molte persone potrebbero pensare. Molti sistemi potrebbero essere rilasciati come open source senza alcun danno per l’azienda. Solo un gruppo molto ristretto di informazioni dovrebbe rimanere un segreto brevettato. Credo che oggi come oggi sia molto più importante fare una cosa bene, avere un buon rapporto con le aziende partner e un buon prodotto, piuttosto che provare a avere una monopolio su qualcosa. Prima o poi, qualcuno farà il reverse engineering delle tecnologie. È meglio porre gli sforzi nel produrre nuova tecnologia piuttosto che nel tenere nascosto per sempre quello che si è già fatto.

LM – Gli appassionati di automobili amano fare il car tuning, sostituire i motori, gli scarichi, eccetera. Con le auto elettriche e ad alta automazione c’è il potenziale anche per personalizzazioni a livello software. C’è la possibilità che rilasciate un SDK per permettere ad altri di sviluppare applicazioni per le vostre auto, oppure ritiene che potrebbe essere pericoloso?
TL – Vedo già apparire rari esempi di queste personalizzazioni. C’è una serie di strumenti, come FORScan, che permettono di collegare la propria macchina al computer con un adattatore USB-OBDII e modificare una serie di parametri. Un mio collega ha una automobile che permette un certo grado di personalizzazione dell’interfaccia grafica degli schermi usando uno strumento per PC. C’è un certo numero di appassionati che comprano una automobile proprio perché offre questo tipo di caratteristica. Un dettaglio interessante è che su quella specifica auto il produttore ha disabilitato questa funzione con un aggiornamento del software, quindi gli appassionati si rifiutano di fare quell’aggiornamento, e hanno trovato modi per fare il roll back dell’aggiornamento in modo da mantenere quella funzionalità. Credo che questa cosa succederà ovunque in un prossimo futuro. Però ci deve essere una qualche forma di restrizione. Permettere agli appassionati di modificare il layout dei loro schermi o la struttura dei menù degli schermi centrali è una cosa buona, visto che nella peggiore delle ipotesi ci si ritroverebbe con una interfaccia grafica brutta. Ma permettere l’accesso software alle unità computazionali, come la centralina ABS o gli airbag, è estremamente pericoloso, e credo che il rischio per la vita umana, così come la responsabilità legale, sia semplicemente troppo grande per consentire questo tipo di modifiche.

LM – Ovviamente, una automobile altamente automatizzata può essere vittima di pirateria informatica, è già successo a altri produttori di auto. Come avete protetto i computer della Rimac C_Two dai potenziali attacchi?
TL – Stiamo attivamente proteggendo la C_Two con più livelli di protezione possibili. Non possiamo pensare di proteggerci con uno strumento solo: ogni livello deve proteggere la macchina da uno specifico tipo di attacco. A basso livello cose come la numerazione della sequenza dei messaggi CAN e la loro checksum proteggono dall’iniezione di messaggi non validi. Sul livello dell’infotainment, cose come la crittografia delle partizioni e la firma digitale dell’intera immagine del sistema operativo proteggono dall’avvio di un sistema operativo compromesso. La macchina di per se non ha servizi che possano accettare connessioni da internet, è sempre la macchina a connettersi a un server. Utilizziamo gli ultimi algoritmi di crittografia e dei messaggi di autorizzazione per garantire l’identità dell’automobile e del server. Il server che ospita il sistema M2M presenta le sue sfide, simili alle sfide di una banca per proteggere i dati dei suoi clienti. In Rimac Automobili vediamo questa cosa come uno sforzo congiunto di diversi team di progettisti e, come in tutti i problemi di cybersecurity, rimarrà sempre una gara tra noi e i pirati informatici.

Arriva il PinePhone con KDE Plasma Mobile

Gli appassionati della tecnologia libera e della sicurezza dei propri dati conoscono già il PinePhone, smartphone basato sulla scheda di prototipazione Pine64 (una alternativa al RaspberryPi). La novità è che dal giorno 1 dicembre sarà però possibile preordinare una nuova versione, dotata di Plasma Mobile. Si tratta del primo sistema operativo progettato proprio in collaborazione con gli sviluppatori del PinePhone, che permette quindi di sfruttare le caratteristiche di questo dispositivo. Il PinePhone è infatti uno smartphone, ma essendo dotato di una vera e propria distribuzione GNU/Linux (basata su Ubuntu) è anche uno strumento perfetto per lavorare, vista la possibilità di installare software dai repository come su un qualsiasi PC. Naturalmente si possono anche installare le app Android, grazie a AnBox.

Il PinePhone è ovviamente adatto alla conservazione di dati sensibili e alla protezione della nostra privacy, visto che contiene degli interruttori hardware per disattivare l’antenna LTE, il WiFi, il microfono, le videocamere, e l’altoparlante.

Il vantaggio dell’ecosistema di app Plasma Mobile è la perfetta integrazione con gli altri dispositivi: traferire file e persino controllare il proprio smartphone dal PC (o viceversa) è facilissimo, grazie a KDE Connect. Le applicazioni tipiche di KDE, come l’editor di testi Kate e il visualizzatore di documenti Okular, sono tra le più avanzate in circolazione e rendono il PinePhone un dispositivo mobile potenzialmente adatto per lavorare. La versione con 3GB di RAM è fornita con una dock di ricarica che offre delle prese USB per collegare mouse e tastiera, oltre a una porta video HD, per utilizzare lo smartphone come un vero e proprio PC tascabile.

Per chi vuole approfondire il funzionamento di questo sistema, pubblichiamo il video dell’intervista che aveva realizzato l’anno scorso ad alcuni sviluppatori di Plasma Mobile:

Team Digitale: modernizzare il Paese con l’open source

A settembre abbiamo parlato con Leonardo Favario, componente del Team per la Trasformazione Digitale. Il “Team Digitale” è un gruppo di esperti formato nel 2016 per volere del Governo, il cui scopo è preparare il necessario alla digitalizzazione della pubblica amministrazione.

L’attuale epidemia ha mostrato quanto importante sia la digitalizzazione per il futuro, visto che l’unico modo per non diffondere il contagio è contattare gli uffici pubblici da casa propria, ma è una cosa a cui che il Team Digitale lavora da tempo. Il rapporto tra i cittadini e la pubblica amministrazione è farraginoso, comporta ancora dover fare la fila presso gli uffici per poter consegnare un modulo o anche semplicemente ottenere informazioni per capire cosa bisogna fare. E anche il funzionamento interno alla pubblica amministrazione stessa è complicato, a causa di inconsistenze tra uffici diversi per competenze e territorialità e anche a causa della necessità di fare continuamente copie cartacee di documenti che potrebbero rimanere esclusivamente digitali. Negli ultimi anni il Team Digitale ha costruito il “sistema operativo del paese”, un insieme di software e linee guida che permettono alla pubblica amministrazione di digitalizzare man mano sempre più parti della propria attività.

Con Leonardo abbiamo parlato di quanto è stato fatto, come la piattaforma Developers Italia, l’identità elettronica, e la fatturazione elettronica. Per il futuro, possiamo solo sperare che da questo lockdown dovuto all’epidemia si impari l’importanza della digitalizzazione.

Intervista a Linus Torvalds

Alcuni anni fa Linus Torvalds, principale autore del kernel Linux, aveva accettato una nostra intervista. I temi discussi sono tutt’ora rilevanti e sempre interessanti per gli appassionati del software libero e open source, quindi abbiamo deciso di ripubblicarla online.

Era il 25 agosto 1991 quando Linus Torvalds comunicò di aver cominciato a lavorare su un sistema operativo open source: il sistema era basato sui programmi del progetto GNU e su un kernel di sua concezione chiamato Linux (il nome originale doveva essere Freax, ma il suo amico Ari Lemmke chiamò “linux” la cartella che conteneva il codice sul server FTP). Finalmente, il progetto GNU aveva un kernel a disposizione, e quindi il primo sistema operativo FOSS era pronto (anche se ancora non stabile). Linux stesso era nato da un controversia di Torvalds con il professor Tanebaum, docente della sua università, che aveva realizzato il kernel Minix. Questo aveva, secondo il padre di Linux, due fondamentali pecche: la prima è di essere realizzato con una struttura a microkernel (molto più complicato di un kernel monolitico), e di non essere liberamente modificabile. Il tempo ha dato ragione a Linus Torvalds: infatti Minix non ha avuto successo, a differenza di Linux, perché non era veramente open source, ed anche perché non solo Minix ma anche Hurd (entrambe microkernel) sono risultati troppo complessi per poter essere realmente funzionali.
Oggi Linus Torvalds è uno dei personaggi più influenti del mondo del Free Open Source Software, assieme a Richard Stallman (l’ideatore del progetto GNU e padre della filosofia free software). A differenza di Stallman, però, il padre del pinguino ha sempre mantenuto un profilo di basso livello, cercando di farsi trascinare il meno possibile nelle varie dispute della comunità. In questa intervista Torvalds ci rivela il suo pensiero e scopriamo che, forse, il principale motivo per cui riesce a rimanere super partes è l’essere estremamente razionale, capace quindi di mettere da parte i moralismi in favore di ciò che, semplicemente, funziona. Possiamo dire che se Stallman è il pastore spirituale della comunità FOSS, sempre pronto a tirare le orecchie a chi non segue le tavole dei comandamenti, Torvalds è un regista che dirige il film che la comunità sta realizzando.

LM – Ciao Linus, tutti noi sappiamo che sei il creatore del kernel Linux e di Git. Però sappiamo poco della tua vita personale. Puoi dirci qualcosa al riguardo?
Linus Torvalds – Non so da dove cominciare… ho avuto a che fare con i computer sin dall’inizio della mia adolescenza: mio nonno (da parte di mia madre) era professore di statistica all’università di Helsinki, ed aveva uno dei primi computer per uso domestico (un Commodore VIC-20) che portava a casa per fare dei calcoli, a volte, quando avevo 11 o 12 anni. Io lo aiutavo a scrivere alcuni dei programmi (senza capire nulla della matematica che c’era dietro), e poi sono finito a scrivere giochi ed altri programmi presi da riviste d’informatica e manuali dell’epoca. Ed in certi casi scrivendo i miei stessi programmi.

I computer sono ancora il mio hobby, oltre che il mio lavoro. Al di là di quello, io leggo molto (ma per la maggior parte cose che si possono dimenticare senza problemi, come fantascienza e fantasy) e faccio scuba diving (immersioni subacquee – n.d.r.) ogni volta che posso.

Vivo a Portland, Oregon, in questi giorni (sono nato e cresciuto a Helsinki, Finlandia), sono sposato ed ho tre figlie adolescenti. E… no, nessuna di loro è molto interessata ai computer, se non come utente.

LM – Tu hai detto “Il software è come il sesso: è meglio quando è libero e gratuito”. Quindi qual’è la tua idea di software libero ed open source, ed in che modo questa è differente dall’idea di Richard Stallman?
Eh. Io non uso nemmeno più il termine “free software”, perché penso che sia un punto di partenza sbagliato.

Sia per l’ambiguità presente in lingua inglese tra “free” inteso come “libero” e “free” come “gratuito”, sia perché anche quando capisci la differenza dei due significati (che poi non è così difficile da comprendere) la parola “free” è talmente piena di carico emotivo (soprattutto negli Stati Uniti, “Land of the Free, rah, rah, USA USA USA!”) che chiunque la fa significare qualsiasi cosa voglia. Richard Stallman, in particolare, vuole definirla in un modo molto specifico ed usarla per un discorso sulla morale.

Io penso che la morale sia qualcosa di privato, e chiunque la utilizzi per fare una discussione qualunque stia sbagliando. Io posso avere le mie personali ragioni per preferire l’open source, ma sono le mie motivazioni personali, e non hanno nulla a che vedere con i motivi per i quali suggerisco agli altri di adottare l’open source.

Quindi io (ed anche altre persone) uso il termine “open source software”, e non mi disturbo a fare alcun stupido ragionamento moralistico. L’open source tende a essere semplicemente migliore dal punto vista tecnico, ed è molto più divertente partecipare al processo creativo quando questo è “open” e tutti possono collaborare. Open source significa che non c’è una singola entità che controlla, e nessuno può nascondere quello che sta facendo. Significa anche che le persone e le aziende possono competere a livelli differenti oltre al semplice software. E mi sembra interessante notare come delle persone si siano messe insieme per rendere Linux stesso migliore, ma poi altre persone prendono il risultato e lo utilizzano per fare delle altre cose interessanti che non hanno nulla a che vedere con Linux di per se, se non il fatto che avevano bisogno di un sistema operativo.

Quindi l’open source è un’ottima strada per i tecnici, affinchè possano lavorare insieme senza dover essere legati a un particolare ambito o a una azienda. Questo lo rende molto più interessante. Ma fornisce la possibilità di fare comunque cose interessanti, anche se il tuo obiettivo primario non è il software open source stesso.

LM – Che cosa ne pensi del progetto GNU HURD? Bisogna dire che HURD viene sviluppato dal 1990 e non è ancora stabile. Forse questo dimostra che i microkernel sono troppo complessi e il gioco non vale la candela?
Io penso che i microkernels siano fondamentalmente una idea sbagliata, perché pongono la complessità del progetto nel punto sbagliato (la comunicazione tra diverse entità) e ti limitano troppo dal punto di vista tecnico, mettendo da parte quel tipo di condivisione che è invece standard nei sistemi operativi tradizionali. Poi ci sono stati altri problemi con Hurd, e mentre una volta era un progetto interessante penso che ormai non sia più di rilievo da un bel po’ di tempo.

Detto questo, una delle belle cose dell’open source è che non deve necessariamente essere di rilievo: per persone che si divertono semplicemente a giocare con le cose, penso che Hurd possa essere ancora interessante.

LM – Sembra che tu non sia soddisfatto degli ultimi contributi degli sviluppatori al codice di Linux (hai detto che potresti “tornare a imprecare”)…
Questa non è certo una discussione nuova, c’è sempre stata questa tensione tra “persone che pensano sia più bello scrivere nuovo codice” e “hei, dobbiamo sistemare le cose per rilasciare la nuova versione”. Penso che al momento abbiamo trovato il giusto bilanciamento tra i due, ed il nostro ciclo di rilascio di circa 3 mesi, con una finestra di due settimane per il merge di tutti i nuovi contributi, e con poi circa 6-8 settimane per darsi una calmata funzioni piuttosto bene.

Però io finisco ancora per dover ogni tanto ricordare alle persone di darsi una calmata: capita nella maggior parte dei rilasci di una nuova versione, non è una novità, e penso che sia quasi naturale. In alcune versioni di più rispetto a altre, ma è una normale fluttuazione statistica.

LM – Quindi cosa vorresti vedere in un prossimo rilascio del kernel?
Beh, c’è un gran numero di cose su cui le persone stanno lavorando, ma alla fin fine le funzionalità di base del kernel si sono stabilizzate.

Per me personalmente, le modifiche più interessanti stanno nei miglioramenti del core, ma sono spesso molto piccole e difficili da notare: in un progetto che è vecchio più di 20 anni, il codice del core è abbastanza stabile, ed i miglioramenti sono dettagli che non importano a nessuno al di fuori del progetto stesso (a parte il fatto che rendono il kernel più efficiente e rendono più facili altri miglioramenti del codice).

Per quanto riguarda le nuove caratteristiche, la maggior parte di esse riguarda supporto per nuovo hardware. La maggior parte del lavoro fatto nel kernel è per supportare nuovo hardware e nuove architetture. Finchè i “ragazzi dell’hardware” continueranno a produrre versioni nuove e migliorate del loro hardware, noi “ragazzi del sistema operativo” avremo del lavoro da fare. Quindi non avremo mai veramente “finito”.

A volte – ma non così spesso – introduciamo anche nuove interfacce, specialmente con nuovi modelli d’uso (per esempio quando l’hardware diventa talmente piccolo ed economico da poter essere usato in modi completamente nuovi).

LM – Parlando del mondo mobile, al momento Android è il sistema operativo mobile open source più famoso. Vorremmo sapere che cosa pensi del sistema di Google ed anche dei concorrenti (per esempio Mer o Ubuntu Phone).
Ehi, io ero abituato a odiare i telefonini, perché per me erano semplicemente un altro modo per essere infastidito in qualsiasi posto io fossi. Ma con la nascita di Android per me non è più un telefonino, è un dispositivo mobile per leggere le email, ed ora lo porto sempre con me. Quindi io amo Android. E quando altri concorrenti saranno pronti, sarò felice di provarli. Una delle belle cose nell’avere a che fare con Linux è vedere come persone diverse usino Linux in modi che non erano assolutamente nei miei piani originali. Amo vedere nuovi dispositivi come questi.

LM – Sappiamo che hai utilizzato diversi ambienti desktop,passando da KDE a GNOME e poi XFCE. Quindi la domanda è: che cosa cerchi in un DE?
Quello che io cerco, più che altro, è essere lasciato in pace, ed avere la possibilità di adattare il DE in modo che le poche cose di cui ho bisogno siano a posto. Ed io non voglio che questa personalizzazione sia qualcosa su cui devo pensare più di tanto, per questo mi lamento se le poche cose che mi servono sono difficili da fare.

Per esempio, io voglio dei font più piccoli di quanto la gente normalmente desidera, perché sono abituato a avere un sacco di linee di codice (ed email) sullo schermo. Quindi i grandi font (soprattutto in cose “secondarie” come icone e barre del titolo delle finestre) che stanno prendendosi troppo spazio inutilmente, sono qualcosa di cui mi voglio liberare. Voglio che il mio lavoro sia fatto, le mie poche finestre aperte, ed il DE non dovrebbe intralciarmi. “Veloce, pronto, e leggero” è spesso più importante per me di “carino”.

E voglio che quelle poche cose che faccio siano facili da realizzare. Se non posso aprire un nuovo terminale con un singolo click del mouse su una icona che sia sempre visibile, allora c’è qualcosa di strano. Il fatto che io, a volte, abbia addirittura dovuto discutere con qualcuno su questa cosa è un po’ triste.

LM – Tornando al kernel Linux, oggi la maggior parte dei server di internet e dei dispositivi di ridotte dimensioni (dai telefoni ai router e le stampanti…) funzionano grazie a questo kernel. Forse, senza Linux queste tecnologie non esisterebbero nemmeno. Come ci si sente sapendo che miliardi di persone nel mondo utilizzano tecnologie e strumenti basati su un progetto software che tu hai creato?
Non ci penso molto, in realtà, ma penso al fatto che quello che io costruisco è importante per le persone, ed è importante per me.

Perché, certo, a me piace semplicemente programmare e giocherellare con la tecnologia, ma allo stesso tempo non voglio giocare tanto per il piacere di farlo: voglio lavorare su qualcosa che abbia un impatto sul resto del mondo. E quindi il fatto che Linux sia riuscito a avere un grande impatto, è una gran bella sensazione.