Google sui Desktop, ora si può… anzi si deve.

Mi accingo a scrivere questa serie di articoli nel giorno in cui arriva in Italia il primo vero PC Google-based, l’Asus Chromebox, macchina in grado di coprire ogni tipo di utilizzo a partire dalla fascia medio-bassa fino alle esigenze più alte che necessitano di un Core i7 e 16GB di RAM.
Questo sistema, oltre a rappresentare un valido aggancio per ciò di cui ormai da molto tempo volevo parlarvi, rappresenta anche una pietra miliare nella storia del computing “fisso”, che finalmente si scrolla dalle spalle un duopolio che con i suoi trentacinque anni di esistenza aveva finito per confinare l’informatica in una stagnazione insopportabile.

Come tutti sanno già da un anno avevo cercato di portare qualcosa di nuovo per mezzo di quello che continua ad essere il miglior strumento disponibile per i PC da usare in alternativa a Mac/Windows: Phoenix OS. Migliore sì, ma anche non alla portata di tutti.
Con Chrome OS (o FydeOS nella versione che gli utenti di Uncino impiegheranno) la potenza e la flessibilità restano quasi pari, ma grazie all’incredibile lavoro compiuto da Google nel corso dell’ultimo triennio tutto si fa semplice, alla portata perfino del meno smaliziato fra i professionisti.

Anticipando quelle che sicuramente saranno le obiezioni, prima ancora della trattazione delle differenze questo nuovo modo di concepire i sistemi operativi e quello legacy, Windows, Mac OS e, per alcuni versi, Linux, taglio la testa al toro dicendo cosa (al momento) non ci si può fare: grafica professionale di alto livello, editing video professionale, CAD/CAM, contabilità generali e software aziendali legacy, utilizzo della suite Office che preveda l’impiego di VBA ed in generale tutto quel software (a dire il vero piuttosto poco) esistente solo ed esclusivamente in ambiente Windows o Mac.
Per tutto il resto non solo è possibile, ma è anche decisamente preferibile scrollarvi di dosso i dinosauri ed entrare in questo mondo più moderno, flessibile, affidabile e maggiormente produttivo.

La prima differenza he salta agli occhi (vabbè, la seconda perchè la prima è la totale e profondissima integrazione con il vostro teminale mobile, fino al punto di poter utilizzare il medesimo software) è la tipologia di distribuzione, dovuta alle scelte fatte per l’architettura della parte esterna dei sistemi operativi legacy (qui non parliamo di kernel ma di ciò che sta sopra al kernel): i dinosauri hanno struttura esterna monolitica, mentre il nuovo modello è fortemente modulare.

Questo significa che nei sistemi classici è il produttore del sistema operativo a decidere una volta per tutte non solo quale sarà il suo aspetto, ma anche quali saranno le caratteristiche e le necessità operative che il sistema operativo dovrà coprire, e quella scelta è definitiva.
Questo significa che la piccolissima macchina destinata a far da supporto agli allievi di una scuola elementare ed il sistema professionale in mano all’ufficio studi di una multinazionale non solo avranno in comune il medesimo kernel ed in generale tutti gli strati più profondi del sistema operativo (cosa fortemente auspicabile) ma anche tutte le sovrastrutture, i programmi a corredo ed i servizi offerti. Non esiste alternativa perchè in una distribuzione monolitica le caratteristiche del sistema operativo devono necessariamente essere adeguate al più complesso dei possibili scenari.

Il risultato comunemente sperimentato è che la gran parte delle funzioni offerte dai sistemi operativi legacy non vengono mai utilizzate dalla stragrande parte dei loro utenti.
Ma non finisce qui, perchè anche molti dei problemi incontrati da questi mostri preistorici trovano origine in quelle parti di sistema operativo che magari l’utente che si ritrova con il sistema fermo non userebbe mai perchè semplicemente non gli occorrono per il tipo di attività volta.
Sarebbe molto bello se con questa seconda osservazione avessimo concluso, ma non è così. Un sistema operativo basato su un’architettura esterna monolitica presenta anche inimmaginabili difficoltà di debugging, perchè quando l complessità dei sistemi esplode e non è possibile “sganciare” le singole parti per testarne individualmente il funzionamento perchè sono mutualmente interconnesse, capire che diavolo è successo quando arriva l’accidente è come cercare il famoso ago in un pagliaio… e va a finire che la October Update non si riesce ancora a rilasciarla sebbene si sia alla metà di Novembre… vero Microsoft?
Abbiamo finito? possiamo passare ai moderni sistemi modulari?
No, temo di no. Resta ancora da citare l’assurdo spreco di risorse indispensabile a distribuire e successivamente far stare su una memoria di massa un sistema operativo che deve essere in grado di coprire ogni possibile caso della vita. Ci si ritrova a stare stretti con un SSD da 250GB quando un OS modulare ben carico di software gira allegramente in uno da 128GB. Il doppio dell’occupazione per fare le stesse cose.
E siccome mi sono scocciato di parlare di paleologia tralascio i capitoli relativi al consumo di RAM ed a quello della CPU.

Un sistema operativo modulare, sia esso Android o Chrome OS, è costruito in modo radicalmente diverso.
C’è una base comune per tutti dalle dimensioni piuttosto ridotte (veramente piccola nel caso di Android) al di sopra e perfino all’interno della quale sia gli OEM che gli utenti possono aggiungere, togliere o usare di tipo diverso i moduli che assolvono alle varie funzioni.
Dunque, sebbene la base del sistema operativa sia la medesima per tutti, ogni costruttore sarà poi libero di personalizzare le sue linee di prodotto al fine di offrire caratteristiche differenti che meglio si adattano alle varie tipologie di utenza.
Ma non solo questo, perchè anche l’interfaccia utente e l’interfaccia di sistema (i settings) sono personalizzabili dai vari costruttori sia per distinguersi dal grigiume uniforme (interfaccia utente) che per meglio supportare particolari hardware in dotazione ai loro terminali (interfaccia di sistema).
A differenza di quanto avviene nei sistemi monolitici, tutti questi elementi che messi assieme vanno a comporre il sistema operativo per così dire godono di vita autonoma e quindi sono testabili individualmente. Come si può facilmente immaginare, questo porta immensi benefici per quella che sarà la facilità di debugging dei singoli moduli che, una volta riuniti, permetteranno di ottenere un risultato di gran lunga più stabile ed affidabile.Ma non finisce qui, perchè dalla versione 7 di Android è concesso anche all’utente ordinario di intervenire con ampie personalizzazioni senza dover far ricorso a pericolosi stratagemmi.
Quindi non solo maggior affidabilità ma anche libertà di scegliere il costruttore che offre i terminali più vicini alle proprie esigenze e, a partire da quello che si acquista, cucire con gran semplicità un oggetto perfetto per ciò che serve o che piace.

Abbiamo finito? affidabilità e posibilità di personalizzazione?
No, questo era solo l’antipasto.
I moderni Android non consentono solo questo ma permettono anche di includere alla bisogna interi sottosistemi neppure previsti quando Android fu ideato: le funzionalità Desktop.
La flessibilità è tale che tutto il sistema di gestione dell’interfaccia utente può essere rimpiazzato, perfino dinamicamente, con un altro adatto ai grandi schermi, alla tastiera e al mouse.
Quando questo avviene la macchina su cui gira Android si trasforma in un normalissimo ambiente Desktop come quello cui siete abiuati, con le finestre che si spostano e ridimensionano, la barra dei programmi, il menù di avvio, l’orologio e le notifiche… insomma tutte le cose che vi fanno dire che quello è un PC.

A questo punto, immancabile, arriva l’obiezione del fanboy: ma quelle sono app e non programmi (vabbè questo era un fanboy paticolarmente idiota e disattento, perchè quelli un po’ più svegli sanno che le cosiddette app sono programmi, che ormai quelle grosse sono scritte in C/C++ e che praticamente tutto il contenuto del Play Store è ormai concepito sia per l’impiego portrait che per il landscape). Però vabbè diciamo che un fondo di ragione può anche averlo dl momento che molto grande software scarseggia (ma è in continuo aumento).
E allora che si fa? allora si fa che ci si aggiunge Linux!
Nei terminali mobili mgari la cosa è un po’ scomoda, ma quando penste ad un Pc Android non dovete immaginare un “semplice” PC su cui vengono eseguiti Android ed il suo Play Store, questo era il passato.
Adesso un PC Android è un sistema che esegue una sinergia di software Android e Linux fusi assieme e perfettamente integrati.
Se si vuol vederla in altro modo: un paio di milioni di pacchetti pensati prevalentemente per il Mobile (ma perfettamente usabili anche con tastiera e mouse) più un altro milione di software di ogni genere e tipo progettati per gli ambienti Desktop, spesso gratuiti, che vivono allegramente sullo stesso desktop in perfetta armonia.

Poi è venuto ChromeOS.
O meglio, Chrome OS c’è da anni, quindi sarebbe meglio dire che poi sono venuti gli investimenti a pioggia su Chrome OS!
Crome OS fu ideato come un sistemino semplice in grado di entrare nelle scuole americane di primo livello… una cosetta economica e senza pretese in grado di girare anche su macchinette da tre dollari.
Dopo la cura a base di miliardi operata da Google i bambini delle scuole americane sono andati a farsi benedire e Chrome OS è diventato l’apoteosi del sistema operativo modulare!
Immaginate un OS che di base esegue ciò per cui era nato, ossia le web app (ormai defunte ma ancora vive sulla carta).
Poi si fa click su un’icona e… pufff… ci si ritrova con affiancato un Android completo.
ltro click, altro pufff… e compare pure una bella distribuzione Debian completa.
Insomma, a seconda di quello che ti serve fai click da una parte o dall’altra e quindi metti e togli quello che ti serve e non i serve.
E nessuna difficoltà di amministrazione per l’ostico Linux… nono, tutto grafico, tutte cose belle da vedere e click di mouse!

Il risultato è il troiaio che vedete in questa slide fatta a scopo dimostrativo, dove assieme ad un normalissimo Chrome Desktop sono presenti il mio immancabile Spotify proveniente dal Play Store e il Gimp del Linux per chi vuol disegnare; sulla destra per confronto abbiamo sopra il Play Store e sotto l’installer grafico dei pacchetti Linux, come vedete divisi per categoria di appartenenza.

E con questo chiudo la prima puntata… Chicco vuole uscire.

Al solito domande ed osservazioni nei commenti.

Federico