Android sembra destinato a diventare il sistema dominante nel settore mobile (che in futuro sarà orientato per buona parte sugli smartphone), almeno secondo le ultime stime, grazie a una crescente adozione da parte dei produttori unita alla disponibilità anche su terminali di fascia più economica (se ne trovano sui 100€).
La presenza del Marketplace è anch’essa di fondamentale importanza per fornire agli utenti quello che ci si aspetta da questi dispositivi: il software. Sappiamo bene che una piattaforma può essere “bella” quanto si vuole, ma senza software è destinata al declino.
Un altro elemento che ha contribuito al successo, specialmente nella fascia d’utenza più “smanettona”, è il concetto di sistema “aperto”, che ha consentito il praticare e diffondersi di personalizzazioni fra le più disparate.
Questa “apertura” finora era stata garantita dalla disponibilità dei sorgenti di Android, rilasciati da Google (che comunque acquisì l’azienda ideatrice del progetto originale), che in teoria dovrebbero consentire un controllo e una customizzazione completi dei dispositivi.
In realtà la situazione non è così semplice, in quanto Android risulta costituito da un “cocktail” di elementi che, messi assieme, concorrono a definire la piattaforma finale: il kernel, le librerie, i driver, la virtual machine, il software (le applicazioni).
Il kernel è un fork di Linux (e tale sembra destinato a rimanere, a causa di alcune divergenze), di cui sono ovviamente disponibili i sorgenti, in quanto il codice di Linux è sotto GPL, per cui la distribuzione di eventuali binari comporta l’obbligo del rilascio dei sorgenti.
Delle librerie possono essere disponibili i sorgenti, oppure no (come nel caso di quelle per l’accesso al Marketplace o al GPS, ad esempio). Quelle rilasciate da Google in genere sono coperte da licenza Apache.
Lo status dei driver è simile a quello delle librerie, ma con una maggior tendenza a una chiusura dei sorgenti, in quanto si tratta di codice di interfacciamento con l’hardware, che è a carico del produttore; a maggior ragione se si tratta di prodotti coperti da brevetti e licenze (abbastanza comuni in questo contesto).
La virtual machine, Dalvik, deriva da un precedente progetto ed è open source. Come per molto altro codice, utilizza la licenza Apache.
Il software in dotazione va dagli strumenti di supporto al kernel (comandi vari e shell, ad esempio), ad accessori forniti dal produttore, fino alle classiche applicazioni utilizzate poi direttamente dagli utenti. Anche qui, è possibile che siano presenti i sorgenti oppure no (come nel caso di quelle di Google), e le licenze eventualmente utilizzate possono essere di tipo diverso.
Fino alla versione 2.3 (“Gingerbread”), Google ha sempre rilasciato i sorgenti di Android (tranne per le librerie e il software di cui ha sempre fornito soltanto i binari, come già detto), ma con “Honeycomb” (l’attesa 3.0) ha disatteso le aspettative, dichiarando che ciò avverrà in futuro, senza comunque indicare quando.
La decisione ha ovviamente suscitato scalpore e “scandalizzato”. Successivamente sono arrivate alcune precisazioni, ma francamente le motivazioni le considero risibili. Una volta rilasciati i sorgenti tornerebbe lo spettro della “frammentazione”, fonte di preoccupazioni in casa Mountain View.
In ogni caso quest’episodio non fa che confermare, semmai ci fossero ancora dei dubbi, che gli interessi di Google possono tranquillamente calpestare le filosofie e gli ideali che coltiva una certa frangia dell’utenza di questo genere di dispositivi.
Era già successo e ne abbiamo già parlato in passato, in occasione dell’ingiunzione di Google nei confronti di una famosa modifica, CyanogenMod. Ma potremmo citare anche la rimozione forzata di alcune applicazioni “scomode”, l’ultima delle quali, Grooveshark, ha destato anch’essa stupore, trattandosi di una politica affine alla concorrente Apple.
Un’altra tegola sulla testa potrebbe arrivare dalla decisione paventata di concentrarsi esclusivamente sull’architettura ARM, a discapito di altre soluzioni, prima fra tutte quelle di Intel (altra concorrente col progetto Meego).
Google conferma, insomma, la sua volontà di dominare e indirizzare Android, anche con decisioni molto forti e liberticide, alcune volte cozzando anche con la concorrenza.
D’altra parte lo sviluppo è interamente nelle sue mani. E’ sempre lei che concede l’utilizzo di determinate tecnologie soltanto a fronte di determinati requisiti che il produttore si deve impegnare a rispettare. Lo stesso vale per gli sviluppatori che vogliono accedere alle future versioni di questa piattaforma mobile.
Se nella mente cominciano ad affiorare Apple e Microsoft, con la loro gestione chiusa e centralizzata (di cui comunque si sono visti i frutti, almeno per la prima che ha, di fatto, cambiato questo mercato), con scrupolosi controlli, beh, non è certo un caso, visti i comportamenti tenuti da BigG.
La situazione non è chiaramente la stessa, ma considerati tutti gli elementi in gioco non possiamo parlare di piattaforma “aperta” e “libera”. Perché oggettivamente mancano i sorgenti (dell’ultima versione), e finché Google non li rilascerà la piattaforma di fatto è e rimane chiusa (e per il futuro potrebbe fare lo stesso o decidere di non rilasciarli); ma in ogni caso, e come già detto, alcuni pezzi rimarranno tali. E poi perché Google ha monopolizzato la piattaforma di cui tiene saldamente le redini, imponendo restrizioni a partner e sviluppatori.
Sì, sei libero di fare tante cose, ma non tutto quello che vorresti e, soprattutto, siamo ben lontani dai canoni con cui un progetto di questo tipo viene sviluppato quando parliamo di sistemi “aperti”, con buona pace di chi ama pensare che sia così…