venerdì 30 aprile 2010

Pensieri su Ubuntu,GNU/Linux e l'open source


Attenzione: questo post è molto lungo, ma vale la pena leggero.
Che voi siate utenti Windows , Mac o esperti utenti GNU/Linux vi consiglio vivamente di leggere queste riflessioni. Il post pur essendo lungo scivolerà via in 5 minuti a dir tanto...buona lettura!

Articolo tratto da : guiodic.wordpress.com

Oggi, nel giorno del rilascio di Ubuntu 10.04 Lucid Lynx, è probabilmente tempo di bilanci e di previsioni.

Ho iniziato ad usare Ubuntu come unico sistema operativo esattamente tre anni fa. Stava per essere rilasciata Feisty (considerata da molti una delle migliori release di Ubuntu). In questi tre anni, in cui ho speso tanto tempo ad imparare ed aiutare gli utenti, prima su Ubuntu-it poi su LQH, mi sono reso conto di un po’ di cose, positive e negative, che riguardano non solo GNU/Linux in quanto sistema, ma anche le persone che lo usano. In fondo il software libero non è solo un mezzo tecnico, ma per sua natura è un catalizzatore che crea comunità e queste ultime vanno considerate come parte del sistema stesso.
Ubuntu, ovvero GNU/Linux che non si piange addosso

Ubuntu forse non ha nulla di particolare rispetto ad altre distribuzioni pensate per il desktop. Non è più facile da usare di Mandriva o OpenSuse. Anzi, queste due distro hanno strumenti di configurazione molto avanzati che Ubuntu non ha e una storia alle spalle decisamente più lunga. Ci sono distribuzioni che includono di default i driver proprietari, mentre Ubuntu chiede un piccolo sforzo di installarli a parte (ok è facile, ma se non riesci a connetterti ad Internet non lo è poi così tanto). Ubuntu non include neppure codec liberi per i formati proprietari e qui è l’utente che deve occuparsene (anche se il sistema, alla bisogna, una mano gliela dà). E non include neppure Flash.

Insomma presa così, dal punto di vista puramente tecnico, non sembrerebbe una distribuzione più adatta di altre a chi non ha mai installato un sistema da solo (vedremo più avanti che in realtà non è così).

Ma Ubuntu – e Canonical – hanno un merito sopra gli altri. Ci credono. Credono a GNU/Linux sul desktop delle persone comuni e ne hanno fatto davvero il loro obiettivo, anche di business, cosa mai accaduta prima. Hanno incominciato a dire, dal 2004, che Ubuntu era facile da usare. Non era vero, o meglio non era più vero rispetto ad alcune altre distribuzioni, ma dicendolo sempre, in continuazione, è comunque passata l’idea che non è poi così complicato usare Linux.

Novell e Red Hat, gli attori più importanti nell’ambito open source, a cui dobbiamo moltissimo del sistema che usiamo, non ci credono e lo hanno detto più volte. Eppure sono proprio loro ad aver creato gran parte di GNOME, che è proprio un ambiente desktop. Sicuramente in relazione alle esigenze dei desktop aziendali, segmento sul quale peraltro solo Novell ha investito dal punto di vista pubblicitario, mentre RH si è sempre concentrata sull’ambito server.

Il fatto è che, per chi guarda ad oggi, il settore desktop fa guadagnare zero. Spaccato. Anzi fa perdere soldi.

Eppure Mark Shuttleworth, compilando il bug numero 1 su Launchpad, ha scritto che Windows ha la maggioranza schiacciante del mercato desktop e che Ubuntu è progettato per risolvere il bug. Una scelta quindi che è avvenuta sin dal primo giorno. E allora perché Canonical ha scelto questa strada?

Il motivo è che Windows ha avuto successo, anche nell’ambito server, anche nell’ambito remunerativo delle aziende, grazie al fatto che è (ed era) presente su tutti i desktop.

Quando c’era solo UNIX, Bill Gates pensò che…

C’è stata un’epoca, non così lontana, in cui nessuno avrebbe usato altro sistema che Unix nella propria infrastruttura informatica. Certo poi magari le postazioni degli impiegati potevano avere DOS, Windows 3.1 o Windows 95, ma nella sala macchine solo Unix.

Poi però la Microsoft creò Windows NT, disse che si poteva avere lo stesso sistema su client e server, disse che così il tutto diventava più semplice. I dirigenti che avevano sulla scrivania Windows, a casa Windows, sul PC dove il figlio giocava avevano Windows, che avevano iniziato con il DOS e che insomma conoscevano solo prodotti Microsoft, ci credettero subito. E non è che avessero tutti i torti. Far dialogare Windows e Unix non è impresa facile e spesso si deve sottostare a limitazioni.

Ovviamente Microsoft non si è sforzata molto nell’interoperabilità. Anzi più precisamente ha usato sue estensioni proprietarie contro l’interoperabilità, secondo la filosofia “abbraccia-estendi-estingui”, per cui si fa finta di abbracciare uno standard, poi lo si estende con aggiunte proprietarie e non documentate, o documentate male e scarsamente, (così che altri non possano riprodurle) e infine in tal modo si sostituisce uno standard pubblico con uno privato.

E così la sua supremazia sul desktop l’ha portata a primeggiare anche sui server, fino all’arrivo di GNU/Linux che ha fatto rivivere Unix grazie alla sua competitività.

Diffondere GNU/Linux tra le masse

Il fatto che un ragazzino di 15 anni installi Ubuntu per fare il figo con il cubo di compiz non porta neppure un centesimo nelle casse di Canonical. Oggi. Ma domani il discorso è diverso. Quel ragazzino conoscerà un altro sistema, userà OpenOffice, navigherà con Firefox, si abituerà all’ordine del menu di GNOME. E se domani quel ragazzino si troverà ad essere il capo di una azienda, o il capo del settore IT di un ente pubblico, forse farà scelte diverse rispetto ai dirigenti che negli anni ’90 sostituivano Sun OS con Windows NT. Forse già oggi il papà di quel ragazzino usa un po’ Ubuntu anche lui e forse quel papà ha una qualche responsabilità, magari è semplicemente padrone di un negozio e pensa che la prossima volta che acquisterà un PC potrà risparmiare la tassa Microsoft. O forse è titolare di una piccola impresa con 10 computer e incomincia a pensare che può risparmiare davvero tanto in licenze.

Certo, capita relativamente di rado uno scenario simile. Non è una semina il cui raccolto sarà rapido. Ma può essere una scelta vincente.

Sta già accadendo, anche se non ne parlano

Si potrebbe pensare che questo è uno scenario futuribile. Niente affatto. Ieri mi sono fermato davanti ad una edicola. C’erano più riviste dedicate a Linux che a Mac. Non male in un mese in cui il governo ha tagliato i contributi per i giornali. Quando Apple dice che venderà 10 milioni di iPad nel 2010 (quindi solo una previsione), tutti i giornali ne parlano. Ma se Canonical annuncia che già oggi esistono 12 milioni di utenti Ubuntu, non vedrete servizi su Repubblica.it

Eppure, ripeto, succede, anche se è una rivoluzione silenziosa. Altrimenti non si spiegherebbe perché un software eccezionale come Lightworks, già presente da tempo su GNU/Linux, ora diventerà pure open source, aprendo la strada all’uso massiccio del nostro sistema operativo anche nell’ambito dell’editing video desktop. Altrimenti non si spiega perché persino un settore di mercato così ostico per il pinguino come i videogiochi potrebbe presto vedere la novità di Steam per GNU/Linux.

E’ vero, ogni tanto ci sono notizie in controtendenza, ad esempio la fine dello sviluppo di Songbird. E poi c’è il clamoroso fallimento di GNU/Linux sui netbook di cui abbiamo già parlato, a causa di scelte a dir poco ridicole e controproducenti.

Eppure, se ci allontaniamo un attimo dal giorno per giorno e guardiamo la situazione in un periodo di qualche anno (ad esempio proprio i tre anni in cui uso Ubuntu), be’ non solo la tendenza è positiva, ma è tremendamente positiva. Insomma nel post sui netbook ci sono andato pesante nel pessimismo. Mi sbagliavo.

Basti pensare, ad esempio, al fatto che il fallimento sui netbook non ha per nulla scoraggiato grandi gruppi come Google, Nokia e Intel a investire sul pinguino per questi dispositivi. Anzi, quest’anno vedremo Chrome OS e Meego.

C’è poi il mercato mobile. Tutti parlano di iPhone, ma in realtà Android è il fenomeno del momento e sta scalando velocissimamente le vette delle preferenze degli utenti. Le statistiche sono confuse (e spesso manchevoli di confronti adeguati) ma tutte dicono una cosa evidente: il mercato degli smartphone, nel 2010/2011, vedrà le piattaforme aperte primeggiare. Ma non leggerete mai su Repubblica.it dell’ultima applicazione del cavolo uppata in Android Market, leggerete sempre invece notizie sull’ultima scoreggia di Steve Jobs. Io ormai ci ho fatto il callo.
E torniamo ad Ubuntu Lucid

Le novità più evidenti di Lucid vanno considerate in prospettiva, nei prossimi 2 anni, fino alla successiva LTS. L’indicator-applet, qualcosa che non si capiva bene a che servisse, ora ha un senso: lancia certe applicazioni, ti segnala se sono aperte ma soprattutto ti permette di interagire con esse, ricevendo informazioni o immettendo dati (lo stato sui social network, ad esempio). Funzionalmente è in pratica la dockbar di Mac OS X, ma la realizzazione è del tutto originale e pensata per GNOME. Personalmente la considero una pallida imitazione, ma non è un giudizio negativo: le vere imitazioni (AWN, Docky, ecc.) portano con loro parte dei difetti della dockbar stessa. Viceversa uno dei punti di forza di GNOME come di KDE è proprio unire aspetti originali al meglio delle interfacce di Mac OS X e Windows.

C’è tanto da fare ancora e per ora l’utilità appare ancora limitata e soprattutto c’è un po’ di confusione. Ad esempio certe applicazioni si lanciano dall’indicator applet, come Evolution o Gwibber, tutte le altre dal menu Applicazioni, cosa che può rendere “nervoso” l’utente. Ma l’obiettivo di integrare perfettamente desktop e applicazioni, soprattutto quelle di comunicazione, è molto chiaro e condivisibile.

Una novità che vedremo a partire dalla versione successiva sarà un bottone nella barra del titolo chiamato Esfera che, in prospettiva, dovrebbe permettere l’interazione tra l’applicazione, il resto del desktop e altre applicazioni. In pratica è l’intercomunicazione tra processi applicata all’ennesima potenza, grazie all’ottimo dbus.

E che dire infine di Ubuntu One, che ora ha tutte le stesse funzione di Dropbox, te lo trovi già installato e pronto e in più conserva contatti, note, segnalibri e permette la sincronizzazione con gli smartphone? E poi l’Ubuntu Music Store.
Le armi segrete di Ubuntu

Il successo di Ubuntu, a mio parere, è nell’umanizzazione di Debian. Chi ha mai usato Debian conosce i problemi cui si va incontro nell’uso desktop: la stable è troppo vecchia; la testing è già migliore, ma ogni pacchetto sembra fare storia a sé, non esiste un desktop debian e l’utente deve costruirsi il suo sistema personalizzato (il che può anche essere visto come un vantaggio, ma solo per utenti che hanno tempo, voglia e capacità ); Sid è un terno al lotto, non sai mai se un aggiornamento ti sputtanerà tutto il sistema. Per poi passare a piccole ma importanti cose come l’hinting dei caratteri che non raggiunge la perfezione di Ubuntu (su Karmic la cosa che m’ha fatto incavolare di più era il bug di Firefox proprio riguardo l’hinting).

Ubuntu è invece una Debian più umana. Gli sviluppatori hanno pensato ad un ambiente desktop ottimale e cercano di prendere il meglio e metterlo insieme, armonizzandolo. Be’ non sempre ci riescono, ma questo è l’obiettivo.

Lucid da questo punto di vista è una ciambella ben riuscita. La uso da circa un mese e i difetti sono davvero pochi mentre i passi in avanti per avere un desktop pienamente integrato e fruibile sono considerevoli.

Un altro aspetto fondamentale è l’ottimo riconoscimento hardware rispetto non solo a Debian, ma a qualsiasi altra distribuzione, grazie all’inclusione dei driver, anche i più sperimentali. Cosa che evita all’utente problemi, senza che servano particolari interfacce di configurazione, Che poi in fondo è quello che l’utente si aspetta: che funzioni, subito, senza smanettamenti.

E’ questa la carta vincente. Sarà pure stata questione di fortuna, ma ho comprato un portatile praticamente a caso, solo perché costava poco ed era venduto senza sistema operativo. Lucid lo ha riconosciuto al 99,9%, funziona senza problemi la sospensione, l’audio e solo un tasto della luminosità mi ha dato rogne. Ho rubato una pennetta per il digitale terrestre a mia sorella e, guarda caso, funziona pure questa senza installare nulla. Lavoro in un ufficio dove nulla è stato comprato pensando a Linux, eppure uso stampante e scanner. Certo non tutto è perfetto ancora, qualche piccolo ritocco l’ho dovuto fare, il telecomando della dvb stick non va, ma ripeto, solo perché ho preso in considerazione dispositivi totalmente a caso. Con pochi controlli preventivi, probabilmente non avrei avuto neppure un solo problema, per quanto piccolo e facilmente risolvibile.

L’altra grande arma di Ubuntu è Launchpad. Lanchpad è l’unione di tutti gli strumenti di sviluppo di una distro in un unico posto: controllo versione, traduzione, bug tracker, supporto, persino compilazione remota e distribuzione del software stesso. Un grande lavoro che l’utente medio magari non vede, ma che permette uno sviluppo rapido e pienamente collaborativo, anche verso gli utenti che non sono programmatori ma che possono aiutare, ad esempio, con le traduzioni o nella distribuzione del software attraverso i repository PPA.
I falsi luoghi comuni

Spesso leggo dei falsi luoghi comuni che impedirebbero – in teoria – la diffusione di GNU/Linux. Ne ho presi di mira alcuni già tempo fa. Ma è il caso di tornarci sopra.
Ci sono troppe distribuzioni e questo rallenta l’adozione di Linux

In realtà è vero il contrario. Per esempio Ubuntu è nata come fork di Debian. E diciamoci la verità, quanti degli utenti Ubuntu avevano mai sentito solo parlare di Debian? Pochissimi. Questo dimostra semmai che proprio la libertà di creare nuovi progetti basandosi su quelli esistenti è uno stimolo alla diffusione.

GNU/Linux è frammentato, ci sono troppi formati di pacchetti e incompatibilità tra varie distribuzioni, se ci fosse un’unica distro questi problemi non ci sarebbero.

Uno dei maggiori problemi che si ritrovano gli sviluppatori di Android è la sua frammentazione. Le versioni successive non sono compatibili con quelle precedenti e viceversa, così gli sviluppatori devono creare diverse versioni dei programmi. Eppure Android è praticamente uno solo, non ci sono millemila distro, a parte alcune personalizzazioni che ciascun produttore immette nel suo telefonino. Lo stesso discorso potrebbe adattarsi a Windows XP contro Windows Vista, tanto che Seven (solo nelle versioni più care) ha un XP Mode (in pratica XP virtualizzato). E ovviamente vale anche per Ubuntu: i pacchetti per Karmic non vanno su Jaunty e spesso vale persino il contrario. Le incompatibilità non sono dovute, nella grande maggioranza dei casi, alla frammentazione: sono dovute al progresso. Pretendere la piena compatibilità nel tempo, pretendere la piena compatibilità tra varie distro, significherebbe semplicemente dire che per 10 anni bisogna fermare le macchine. Cosa che in effetti Sun ha fatto con Solaris (fino all’introduzione di OpenSolaris), ottenendo come risultato la perdita di quote di mercato a favore … del caotico GNU/Linux.
Certo si può dire agli sviluppatori: cercate di non esagerare. E a volte qualche esagerazione accade. Ma non si può né di deve pretendere che un programma di 5 anni fa giri su una distro di oggi, né tantomeno che un programma di oggi giri su una di 5 anni fa.

Non ci sono applicazioni professionali per Linux

Questo luogo comune si basa su due errori: il primo è la definizione di “professionale”. Una volta mi è capitato un utente che chiedeva un programma “professionale” per fare gli screenshot, come se fosse una attività professionale (cioè qualcosa per cui si viene pagati). Certo a volte qualche “professionista” ha l’esigenza di fare screenshot, ma in genere si guarda bene da usare programmi strani… preme Stamp e via.

Quello che tanti non sanno è che… GNU/Linux è esso stesso un sistema professionale. Milioni di programmatori e amministratori di sistema usano GNU/Linux. E fanno soldi grazie al fatto che sanno usarlo, configurarlo o programmarlo. Apache è un server professionale, MySQL è un DBMS professionale, Sugar CRM è un sistema CRM professionale, gcc è un compilatore professionale, eccetera eccetera eccetera.

In secondo luogo, tantissimi programmi professionalissimi sono sviluppati per GNU/Linux: il già citato Lightworks, il Siemens NX (forse il più avanzato sistema CAD/CAM esistente), Autodesk Maya e una caterva di altri programmi sia liberi che proprietari.

Il luogo comune nasce semplicemente da fatto che non esistono Autocad, Photoshop e Premiere per GNU/Linux. Cioè quelle applicazioni desktop che, per forza di cose, non conviene portare sul pinguino. E qui nasce il successivo luogo comune.

Bisogna costringere le grandi case di software a fare programmi per Linux

Programmi proprietari, chiaramente. Nessuno si illude di avere Autocad open, non accadrà mai. Ma all’utente che dice questa cosa non viene neppure in mente che poi dovrà pagare Autocad per Linux, e poi Premiere, e poi … oppure crackarli, fino a riempire il suo sistema open source di programmi proprietari crackati. E quale sarebbe, a questo punto, il vantaggio di usare GNU/Linux rispetto, ad esempio, a Mac?

La strada semmai è un’altra: trovare nuove modalità di competizione con il software proprietario e dimostrare che l’open source, che ha già vinto in alcuni ambiti professionali, può vincere anche in quelli che oggi sono più difficili. Non c’è alcuna ragione per la quale non possa accadere. Anzi sta già accadendo: il rilascio di Lightworks come software libero è un segnale che si può fare.

Su Linux è difficile installare i programmi

Chi sa usare Ubuntu sa che non è vero. Sa anche che da 15 anni tutti i sistemi GNU/Linux hanno il loro “app-store”, cosa che Apple ha introdotto solo pochi anni fa con iPhone. Ma se lo fa Apple è una figata, se lo fa GNU/Linux è una stronzata. Chissà perché.

Il pericolo dei luoghi comuni è far perdere tempo alla gente in discussioni inutili se non addirittura dannose. E allontanare così l’attenzione da ciò che, per davvero, bisogna fare.

E i problemi veri
I driver proprietari

Il primo problema vero di GNU/Linux sono i driver proprietari. Un driver proprietario è un freno allo sviluppo del sistema e, quindi, al suo miglioramento e in prospettiva alla sua diffusione. Non posso introdurre un server grafico più leggero e orientato al desktop se poi non sono in grado di farlo funzionare su una scheda Nvidia. Non posso migliorare quella ciofeca di driver Fglrx se non ho il codice.
I formati e protocolli proprietari

Per la verità questo è un problema che sta incominciando a scemare. La maggioranza degli utenti ancora usa MSN ma sempre più gente è attratta dalle chat di Google e Facebook, che sono basate su Jabber. Rimane però il grossissimo problema dei formati proprietari, penso soprattutto ai documenti di MS Office e al formato di Autocad. E’ chiaro che un’alternativa ad Autocad è credibile solo se permette alla gente di non perdere i vecchi progetti. E l’uso massiccio di OpenOffice è possibile solo se sono sicuro che non perderò la formattazione se scambio file con la suite di Windows. E’ il vecchio problema del vendor lock-in, inizi con un certo software e sei obbligato tutta la vita a usare quello.

Per risolvere davvero il problema basterebbe anche solo che la Pubblica Amministrazione fosse obbligata ad usare formati liberi. A quel punto qualsiasi azienda o privato sentirebbe il bisogno di usare programmi liberi.
I brevetti software

GNU/Linux legge (e scrive) praticamente qualsiasi formato audio/video esistente. E però nel Paese più ricco del mondo, dove l’informatica è più sviluppata, i brevetti software impediscono di farlo gratis: devi pagare la licenza al detentore dei brevetti, col risultato che un mondo come l’open source, che basa molto della sua competitività sul prezzo, si trova a dover scaricare sull’utente il rischio legale di installare codec che magari sono software libero, ma servono a scrivere e leggere formati coperti da brevetti. La battaglia contro i brevetti dovrebbe vedere tutti impegnati.

Certo è che se Google – come dicono i rumors – libererà il codec V8 (che per inciso è cugino di Theora, il codec libero) e lo userà per Youtube, le cose cambieranno rapidamente.

Il web e il cloud computing

Standardizzare il Web è l’assoluta priorità. Il W3C è troppo debole e non è riuscito ad imporre l’uso di un solo codec per il tag

L’altro problema, sempre legato al web, è l’uso di programmi via browser che potrebbe conoscere una impennata con Chrome OS. Con il risultato che un sistema open come Chrome potrebbe uccidere un software libero come OpenOffice. O forse no, se al contrario Google facesse la scelta di rendere ODF il formato predefinito di salvataggio dei file. Ma è una partita rischiosissima.

Gli utenti che non usano GNU/Linux

Sì, uno dei problemi è rappresentato dagli utenti di altri sistemi che rifiutano non dico il cambiamento, ma anche solo la sperimentazione. Perché cambiare? In fondo Windows funziona, ogni tanto e poi devo usare Photoshop per ritoccare gli occhi rossi nelle foto.

E quelli che lo usano

Paradossalmente il problema più grosso non sono gli utenti che non usano GNU/Linux, ma una parte consistente di quelli che lo fanno per poi non perdere occasione per denigrarlo (e poi non si capisce allora perché lo usino). Basta visitare e leggere i commenti su ossblog oppure oneopensource per rendersi conto di quanto larga sia questa fascia di utenti. Alcuni magari sono solo troll che in realtà non hanno mai visto GNU/Linux in vita loro. Ma altri no. Sono quelli che non si informano, che parlano per sentito dire, che sparano sulla filosofia che ha permesso la nascita di GNU/Linux senza in realtà neppure conoscerla e senza capire che – per citare il progetto Fedora – la libertà è una feature del software open source che il software proprietario non può vantare, una caratteristica che poi implica tutta una serie di vantaggi – tecnici, economici – che altrimenti non ci sarebbero.

Esempio: perché GNU/Linux è più sicuro di Windows? Perché è Unix? Non solo: anche Mac OS X è Unix ma non è sicuro come GNU/Linux perché Apple è lentissima negli aggiornamenti di sicurezza. Viceversa su GNU/Linux è l’esatto opposto, le correzioni sono velocissime, spesso e volentieri arrivano prima che il problema diventi noto proprio grazie al fatto che si può esplorare il codice e modificarlo.

Le cose da migliorare

L’aggiornamento dei programmi

E veniamo a una nota dolente nell’esperienza comune di tutti. Ok, installare un programma è facilissimo. Ma aggiornarlo? Molto meno. Per aggiornare OpenOffice o aggiorno tutto Ubuntu (il che significa, peraltro, aspettare mesi) oppure uso un repository da Launchpad. Però devo sapere che esiste devo sapere come si fa ad aggiungerlo (cosa molto facile da Karmic in poi) ma soprattutto devo capire se è affidabile o no, se cioè non contiene programmi e librerie che mi sminchierebbero il sistema sovrascrivendo quelle originarie. Cosa non facile da capire, persino per un utente esperto, che quindi di norma o si tiene lontano da repo troppo pieni o corre il rischio. Anche perché il downgrade non è sempre immediato e spesso occorre farlo con apt-get da terminale perché Synaptic non funziona bene se devi downgradare 20 pacchetti ognuno dei quali è mutualmente dipendete da altri.

Lo stesso discorso vale per programmi non inclusi nei repository. E allora che si fa? Si torna al sistema stile Windows? Scarica, clicca, installa? Con i problemi di sicurezza, occupazione di risorse e inefficienza nella disinstallazione? Certo che no.

La soluzione al problema è già nel sistema stesso, ma richiede lavoro: le distribuzioni devono impegnarsi ad aggiornare periodicamente alcuni programmi chiave (Firefox e OpenOffice in primis) e lasciare alla comunità il resto, “certificando” repository che si dimostrino affidabili.

E’ più o meno quello che accadrà, nei piani di Ubuntu, dalla versione 10.10 con i miglioramenti al software center.

L’installazione e l’aggiornamento dei driver

Linux è un kernel fantastico, ma ha un grosso difetto: per installare un driver, devi ricompilarlo per quello specifico kernel. E’ un difetto strutturale che difficilmente verrà mai risolto e che, di contro, ha pure qualche vantaggio, visto che induce (quasi costringe) a rilasciare più driver liberi e a far collaborare i produttori con gli sviluppatori del kernel stesso. Ma questo impedisce, nei fatti, ai produttori di allegare i driver al loro hardware, o allegare solo un inutile (all’utente comune) sorgente. Un’escamotage l’ha inventato Dell: è DKMS. Questo programma, l’uovo di colombo, semplicemente prende il sorgente (se pacchettizzato per Dkms però), lo compila e lo installa senza che l’utente faccia altro. Non solo: se arriva un aggiornamento del kernel, si occupa di ricompilare il driver sul nuovo kernel. Ottimo. Però nessun produttore rilascia sorgenti in formato dkms. Molti preferiscono semplicemente lavorare con il team del kernel Linux e così succede che l’aggiornamento di un driver sia rilasciato solo con il nuovo kernel, costringendo ad esempio Ubuntu a creare i backport per le schede wifi e i driver delle schede audio. Ok, in fondo va abbastanza bene, ma l’uso estensivo di dkms sarebbe la soluzione pressoché definitiva. Perché la Linux Foundation e il team del kernel non lo adottano?

Altro aspetto sempre legato ai driver sono le incompatibilità tra kernel differenti anche a livello di sorgenti. Ci sono driver che non vengono mantenuti dal produttore in modo efficiente, col risultato che non si compilano su una versione successiva del kernel. E qui c’è poco da fare: è il team del kernel che deve evitare repentini cambiamenti delle API, altrimenti non se ne esce.

Adottare le nuove tecnologie più velocemente

Una delle cose più interessanti negli ambienti desktop come GNOME e KDE, sono i cosiddetti framework. Si tratta di insiemi di librerie, script e programmi di supporto, fino anche a ambienti di sviluppo veri e propri per sfruttarli al meglio. Un esempio di framework è gstreamer che si occupa di tutta la multimedialità su GNOME. Ora però mentre gstreamer ha tanti pregi, perché permette di creare applicazioni multimediali complete con poche righe di codice, ha un difetto: il suo sviluppo è lento. Dopo due anni ancora non c’è un plugin stabile per la decodifica video della Nvidia (vdpau). Lo stesso vale per VLC che incomincerà solo ora, pur essendo senz’altro il miglior lettore multimediale del mondo (sia open che proprietario).

Mentre così abbiamo il paradosso che Linux supporta USB 3.0 prima ancora che sia distribuito sul mercato, dall’altro dopo tanto tempo ancora aspettiamo il supporto vdpau su gstreamer, mentre Mplayer e Xine già ce l’hanno. Ok, posso usare Mplayer o Xine ma perché dovrei farlo se io ho preinstallato Totem?

Il problema è che siccome un intero ambiente come GNOME è legato a gstreamer, un ritardo di gstreamer significa un ritardo di GNOME e un ritardo di GNOME significa un ritardo di Ubuntu.

A dirla tutta, il plugin per vdpau esiste già, ma nessuna distro lo installa e lo usa. Col risultato che ovviamente solo pochi intraprendenti possono testarlo e fare bug report.

Standardizzare le API

Sempre parlando di decodifica video, Adobe ha sostenuto che il nuovo Flash player su Linux non la supporterà perché la decodicifa video su Linux è un casino. In realtà non è proprio così, però in parte è vero. Ogni scheda video ha la sua API per la decodifica, un po’ come se invece di OpenGL avessimo ¾ librerie grafiche 3D: sarebbe disastroso. Ma una libreria unificante esiste già e l’ha fatta Intel: si chiama libva e funziona nativamente con le schede Intel (come la 4500HD e la GMA500) e su alcune Via, ma fa anche da frontend per le equivalenti API della Nvidia (vdpau) e della ATI (chiamata xvba). Il che significa che basterebbe usare libva per coprire il 99% delle schede esistenti (ovviamente di quelle che hanno la decodifica video). Solo che nessuna distro la adotta. Si può obiettare: se non la adottano è perché non è matura. Ma non diventerà mai matura se qualcuno non lo farà: l’open source funziona così.

Maggiore integrazione con le applicazioni esterne

Su Ubuntu ci sono due grandi applicazioni esterne a GNOME installate di default: Firefox e OpenOffice. Ora, mentre OOo è, a parte piccole sbavature grafiche, perfettamente integrato i GNOME grazie al lavoro di Novell (non di Ubuntu), Firefox è ancora troppo alieno. Esempio: se installo Epiphany, che è il browser di GNOME, per la decodifica dei video nelle pagine HTML5 userò gstreamer. Il che significa che potrò vedere i video h264, non solo quelli Ogg/theora. Firefox invece supporta solo questo formato per cui niente versione di Youtube senza il fastidiosissimo Flash.

Filesystem basato su database

Tempo fa parlavo di una feature straordinaria di Beagle, il programma di ricerca desktop, purtroppo ormai abbandonato, che funziona con Mono. BeagleFS permette di creare delle cartelle sulla base delle ricerche. Cartelle vere, presenti per davvero sul filesystem e quindi usabili in qualsiasi programma, persino da terminale. Significa poter salvare i file dove capita ma ritrovarli sempre. Non è solo una comodità, è un modo diverso di approcciarsi ai propri dati, è un modo diverso di usare i computer, l’innovazione più significativa negli ultimi 40 anni. Eppure non sembra interessare molti, nonostante tutti gli sproloqui sul desktop semantico.

Ma io non demordo: tra tracker, GNOME Zeitgeist e robe varie un giorno non troppo lontano vedremo qualcosa del genere. Avvicinandoci passo passo, in modo che gli utenti si abituino a lasciare perdere le abitudini delle cartelline o dei file salvati sul desktop.

Come si vede non sono problemi insormontabili: anzi, la soluzione o esiste già, o è proprio ad un passo, lì dietro l’angolo. Basta crederci, basta lavorarci. Ci sono tante cose da fare, ma, diciamoci la verità: sono più importanti queste cose o l’indicator-applet, che pure prima ho elogiato? Forse era il caso di ricalibrare le priorità, o almeno di dividersi i compiti preventivamente tra varie distro, ognuna della quali dovrebbe lavorare fianco a fianco con gli sviluppatori upstream: io miglioro GNOME, tu migliori Firefox, un altro migliora OpenOffice, un altro ancora lavora sull’adozione di dkms, eccetera. Non è una lamentela, è solo un modesto suggerimento. Non ci perdo nulla a usare Mplayer invece che Totem ma mi dà fastidio che il mio sistema non sia completo di già appena installato. Vivo lo stesso dovendo usare Flash ma vivrei meglio se potessi evitarlo, senza però rinunciare a Firefox.

Le cose che sono già migliori

Sia chiaro, GNU/Linux è un sistema fantastico. Molto migliore di Windows, più o meno alla pari con Mac OS X (faccio una media: ci sono punti su cui Mac primeggia, altri in cui è indietro). Faccio un breve elenco delle cose che considero più importanti, suggeritemene altre:

a) Posso scegliere. GNOME o KDE? O forse XFCE. Oppure LXDE. Solo per fare l’esempio più lampante, immediatamente visibile. E di ogni ambiente desktop, posso cambiare tutti gli aspetti.

b) Il computer è nelle mie mani, non io nelle sue: sicurezza, niente backdoor, niente spyware, il software fa esattamente ciò che dice e non si rifiuta di fare qualcosa perché non è autorizzato, i programmi non scadono come il latte, e soprattutto non devo crackare nulla per avere del buon software.

c) Usabilità: prendere il menu di Windows; ora prendete quello di GNOME. Qual è più facile da usare? Evidentemente quello di GNOME che mi cataloga le applicazioni, senza che io debba intervenire. Prendete Mac: come si lancia un’applicazione se non ho creato l’icona sulla dock? Devo aprire il finder o spotlight… un dramma.

d) Gestione centralizzata dell’installazione e degli aggiornamenti: su Windows e Mac non esiste nulla del genere. Molti programmi non si aggiornano (anche perché gli aggiornamenti costano) e alcuni ti installano un loro demone di aggiornamento. Se lo facessero tutti: dieci programmi, dieci demoni, venti programmi, venti demoni. Un casino tremendo.

e) compatibilità: sì, compatibilità. GNU/Linux supporta molto più hardware di Mac, ad esempio. E supporta piattaforme che né Mac né Windows supportano, come gli smartbook con processori ARM che presto usciranno sul mercato, promettendo ore e ore di funzionamento. Posso installarlo sulle console per videogiochi (anche se ultimamente Sony ha tolto il supporto per la Play Station, si può fare lo stesso). Lo troviamo persino nei televisori più moderni. Credo che solo il tostapane non vada, ma potrei essere smentito.

Conclusioni

Devo dire che tante volte mi dà fastidio l’atteggiamento di tanti utenti che si piangono addosso. Che non credono nel futuro di questo sistema. Alcuni danno la colpa alla congiura dei produttori hardware, altri a quella dei produttori software. Altri – comprensibilmente – sono frustrati dal fatto che un certo componente o un certo software non funzionino come dovrebbero o a volte per nulla.

Però, complessivamente, e insisto, le cose vanno molto diversamente dall’immagine che noi stessi a volte diamo. GNU/Linux e in generale il software libero stanno conquistando spazio, credibilità e consenso. Senza che magari questo venga strombazzato. Ma succede. Succede perché è una tendenza generale quella della costruzione collaborativa della conoscenza. Il successo di Wikipedia, che ha già battuto Microsoft e la sua Encarta, non è qualcosa di diverso, è solo una faccia della stessa medaglia. Forse – speriamo – un’anticipazione.

Le cose da fare per avere un desktop libero perfetto e decisamente più avanzato della concorrenza, non sono tante. Siamo a buon punto.

Ma ci riusciremo, come comunità, solo se non perdiamo di vista due imperativi.

Il primo, ricordare perché esiste il software che usiamo: il software libero nasce per risolvere un problema, l’esistenza del software proprietario. Ok all’interoperabilità, ok agli investimenti aziendali, ok anche ai compromessi quando servono a fare un passo in avanti. Va bene pure imitare Mac e sforzarsi di creare delle GUI più fighette. Ma se cadiamo nella trappola che per diffondere GNU/Linux serve più software proprietario in realtà uccideremmo GNU/Linux stesso, mancando l’obiettivo. Il punto è diffondere l’open source, non un certo sistema operativo, perché poi di sistemi liberi non c’è solo GNU/Linux ma tanti altri. Arrivo a dire che per me, utente Ubuntu, è meglio se tutti usassero Windows con OpenOffice e Firefox, piuttosto che avere centinaia di milioni di utenti GNU/Linux con MS Office e Internet Explorer (ovviamente è una iperbole, dubito che vedremo mai IE e Office per Linux).

Il secondo imperativo è non scoraggiarsi. Non credere che un certo evento possa interrompere il nostro percorso. Non credere che siccome tutti parlano di Mac, iPhone, iPad, Windows 7, eccetera allora GNU/Linux non conta nulla. Il software libero è molto ma molto più presente di quanto crediamo e vediamo. E sta cambiando il modo in cui ci rapportiamo ai computer e all’informatica.

4 commenti:

  1. molto bello.
    grazie per le parole
    liveD

    RispondiElimina
  2. bisogna credere in GNU/Linux! solo così lo porteremo in alto!

    RispondiElimina
  3. Grazie utente 15enne che mi assumerai ad usare il tuo linux...io sto imparando ad usarlo...lol

    RispondiElimina