Quanto è “open” Android?

Quanto è “open” Android?
{ "img": {"small":"https:\/\/img.tuttoandroid.net\/wp-content\/uploads\/2011\/08\/android-open.jpg","medium":"https:\/\/img.tuttoandroid.net\/wp-content\/uploads\/2011\/08\/android-open-300x190.jpg","large":"https:\/\/img.tuttoandroid.net\/wp-content\/uploads\/2011\/08\/android-open.jpg","full":"https:\/\/img.tuttoandroid.net\/wp-content\/uploads\/2011\/08\/android-open.jpg","retina":"https:\/\/img.tuttoandroid.net\/wp-content\/uploads\/2011\/08\/android-open.jpg"}, "title": "Quanto \u00e8 “open” Android?" }

Una delle caratteristiche che vengono riportate come positive di Android è il fatto che sia un sistema operativo “open”. Ma cosa significa esattamente “open”? Ciò che sta alla base di un progetto open è il fatto che sia in primo luogo open source, cioè i codici sorgenti di ogni sua parte devono essere resi pubblici, tant’è che la dicitura completa dovrebbe essere proprio open source software. Ma basta così?

In realtà non c’è una vera definizione con qualche valore legale di software open source, né esiste un qualche ente universalmente riconosciuto che stabilisca cosa è “open” e cosa no. È più un riconoscimento comune che parte proprio dal fatto che i sorgenti siano pubblici e distribuiti sotto una delle più comuni licenze del software open, come GPL, MPL, APL, CCDL e via dicendo. Ma raramente chi non ha un qualche interesse nella programmazione si rende conto che, intorno ai vari progetti open, si formano solitamente delle community che stabiliscono le linee guida dello sviluppo e vagliano l’integrazione delle modifiche proposte dai componenti della community. Questo si esplica nella formazione di una governance, che spesso ha un importante esponente di spicco e che solitamente coincide col fondatore del progetto, e la definizione di precise roadmap per lo sviluppo del software, con una sistematica produzione di documentazione ed eventuali aggiornamenti dei software development kit (SDK) per la creazione, se prevista, di patch/plugin/widget/applicazioni a corredo del progetto.

All’inizio del mese, uno studio della compagnia di ricerche di mercato VisionMobile ha dato dei punteggi di “apertura” a otto dei più noti progetti open: si tratta di Firefox, Webkit, Eclipse, Symbian, le librerie Qt, il kernel Linux, MeeGo e Android. Al di là di alcune osservazioni che si possono fare in merito al metodo di valutazione utilizzato, ne emerge un risultato che può lasciare spiazzati gli estimatori di Android: il sistema operativo del robottino verde, infatti, si è classificato all’ultimo posto con un magro 23%, a fronte del “vincitore” Eclipse con l’84% (ironia della sorte, è proprio Eclipse lo strumento di gran lunga più usato per sviluppare app per Android). Possiamo cambiare anche qualche criterio ma la classifica non viene ribaltata.

Ma cos’è che è andato storto con Android? In realtà, per quanto detto in precedenza, la risposta è abbastanza chiara: non basta che siano state rese pubbliche oltre 10 milioni di righe di codice. Il fatto è che lo sviluppo di Android è in pratica unicamente nelle mani di Google e di nessun altro. Chiunque può prendere il codice di Android e modificarlo, ma la chances che le sue modifiche vengano incluse nel branch principale sono trascurabili. Anche per questo, la roadmap pubblica di Android è molto limitata e di scarso aiuto. L’aggiornamento dell’SDK spesso accumula ritardi e si porta dietro fastidiosi bug che potrebbero essere velocemente corretti se ci fosse una vera community coinvolta. Idem per la documentazione delle API.

Di sicuro, Android non è un progetto chiuso, o un progetto come Boot 2 Gecko non sarebbe possibile. Ma si tratta di un fork alternativo di Android, e non di Android stesso, la cui governance ricorda più da vicino i progetti closed. Se a questo ci aggiungiamo la (seppur giustificata) decisione di Google di non rilasciare i sorgenti di Honeycomb, non possiamo che storcere il naso se prima immaginavamo Android come una fraterna comunità di illuminati programmatori che d’amore e d’accordo sviluppano un sistema operativo per tutti e lo distribuiscono generosamente gratis alla collettività.

Guardiamo in faccia la realtà: le cose non stanno così. Anzi, anche solo a pensarci la cosa fa sorridere. Alla fine anche Google ha il suo business, e anche se ne apprezziamo la filofofia di base, l’intento numero uno è sempre quello di fare introiti. E questo intento non ha neppure nulla di male, in sé.

Dunque, perché Android non è poi così tanto open? La verità è che ci sono delle entità privilegiate per cui Android è “più open”, e queste sono i partner dell’Open Handset Alliance. Cioè coloro i quali progettano e producono i nostri smartphone. Hanno i sorgenti prima di tutti e possono lavorarci su prima di tutti. Hanno messo sul mercato versioni personalizzate di Honeycomb mentre i poveri mortali dovranno aspettare forse dicembre per vedere quelle righe di codice. A Google interessa che i produttori ricevano dei pacchetti di Android il più possibile omogenei e non siano costretti a perdersi dietro a infinite versioni nightly del progetto solo per correggere l’ultimo bug o introdurre l’ultima feature, perché ha caro il fatto che i loro dispositivi escano ben studiati e si accattivino il pubblico. I puristi del software open source griderebbero all’abominio per una politica del genere ma, in seconda battuta, forse non ci va tanto male…

Pensiamoci un attimo: perché piacciono i progetti open source? Perché sono gratis? Android lo è. Perché consentono di vedere cosa ci sta dietro il codice? Android lo permette (a parte la pecca di Honeycomb). Perché si possono modificare liberamente i sorgenti e ridistribuirli nel rispetto delle licenze? Con Android ci siamo. Perché abbiamo aggiornamenti frequenti e puntuali? Anche quelli ci sono (semmai sono i produttori e gli operatori che non li implementano). Perché vengono sempre supportate le ultime tecnologie? Sissignore, abbiamo anche quelle. E allora che ci manca? Del resto, i “rivali” della Apple hanno dimostrato che un progetto closed può benissimo essere valido (e non parlo delle potenzialità limitate dalle arbitrarie politiche di Apple – che non ci piacciono – ma della qualità del software, della frequenza degli aggiornamenti e pure della loro disponibilità nel tempo – e queste cose ci piacciono). Per essere onesti, alla maggior parte degli utenti che Android sia open o closed non interessa affatto, né gli farebbe differenza.

Insomma, alla fine va tutto bene. In tutto questo scenario, però, si è introdotta un’altra, imprevista incognita: nonostante in passato avesse dichiarato che non gli interessasse entrare direttamente nel mercato della telefonia, a Ferragosto Google ha annunciato l’acquisizione di Motorola Mobility. I motivi di questa mossa sono già stati ampiamente discussi e non sto qui a ripeterli – basti sapere che in molti ipotizzano che Big G sia più interessata ai brevetti di Motorola che alla sua effettiva produzione di telefoni. Ma cosa c’entra, questo, col fatto che Android sia più o meno open?

Innanzitutto, come per mettere le mani avanti, il comunicato stampa dell’acquisizione riporta esplicitamente: “Android rimarrà open“. Dunque, a Mountain View sapevano che, potenzialmente, la mossa poteva mettere dei dubbi sulla natura open di Android in futuro. Questo rende chiaro che la nostra domanda ha fondamento, ma non gli dà una risposta.

Il fatto è che, potenzialmente, Google può usare Motorola come un’arma per far strada ad Android e buttare giù definitivamente i rivali storici. Il prossimo Nexus pare sarà prodotto ancora da Samsung, ma dai successivi Mountain View può cambiare molte carte in tavola, perché può direttamente stabilire cosa è “buono” e cosa non lo è in un dispositivo mobile, plasmando il connubio Android-Motorola che gli altri partner saranno costretti a seguire. Spingerebbe direttamente tutto l’ecosistema Android ad essere al centro del business in costante evoluzione del mondo mobile, esattamente dove Google vuole essere. Avremmo forse un Android meno frammentato e meglio aggiornato dai produttori, ma tutto potrebbe essere realizzato a discapito delle politiche (già poco) open di Android. Fantapolitica?

In un’email dell’agosto 2010, Dan Morrill si era lasciato sfuggire che i produttori di telefoni fossero consapevoli che Google stesse usando i criteri di compatibilità “come una clava per costringerli a fare ciò che vogliamo”. I produttori, infatti, possono eseguire modifiche al codice di Android ed usarlo nei loro telefoni purché conformi a dei criteri di compatibilità che vengono stabiliti da Google. Dunque, se il suddetto scenario a qualcuno può apparire poco probabile, sappia che Mountain View ha già dalla sua delle armi per renderlo possibile, e Motorola si aggiungerebbe al suo arsenale.

Per la verità, non credo che Android verrà mai reso chiuso. Non credo che le politiche di Google a riguardo cambieranno significativamente. Non credo che l’acquisizione di Motorola porterà particolari scossoni al mondo Android. E non credo che lo scenario di cui sopra si verificherà mai. Il motivo è semplice: non c’è alcun bisogno che avvenga. Android sta guadagnando quote di mercato con un trend che non conosce rallentamenti ed ogni volta si rivela più marcato delle previsioni. Finché i numeri sono questi, per Google è perfettamente inutile rischiare un sacco di cattiva pubblicità solo per ottenere – e forse neppure riuscirci – un obiettivo che potrebbe conseguire semplicemente aspettando.

Condividimi!