Android riscrive la definizione di open source
Android affronta i difetti del mondo open source senza remore, anche a rischio di attirare le critiche dei più integralisti. Andy Rubin, di fatto il papà del noto sistema operativo, ha spiegato senza mezzi termini che esiste una sostanziale differenza tra l’open source e un progetto guidato da una comunità . “Noi siamo leggerini sulla comunità , ma ogni cosa che facciamo finisce in un deposito open source. Rendiamo il codice open source quando il primo dispositivo è pronto. Stiamo costruendo una piattaforma, non un’applicazione. Quando implementi una piattaforma ti evolvi e migliori le API, e a volte le API vengono deprecate“, ha dichiarato Rubin durante l’incontro stampa al Google I/O.
Andy Rubin
“Quando lavori con nuove API i processi di community normalmente non funzionano – è davvero difficile dire quando hai fatto, ed è difficile dire quando è una release e quando è beta. E gli sviluppatori si aspettano che le API da utilizzare siano pronte”.
Insomma, il controllo di Google su Android sarebbe giustificato dall’esigenza di efficienza. Se in ottobre la definizione che Rubin diede di open source fece solo sorridere (the definition of open:”mkdir android; cd android; repo init -u git://android.git.kernel.org/platform/manifest.git; repo sync; make”) oggi tutto sembra più chiaro. Una riga di codice non può essere la risposta a ogni cosa: lo sviluppo, soprattutto in presenza di così tanti prodotti, va governato con mano ferma.
La definizione di open per Rubin
“Se qualcuno dovesse affidarsi a release acerbe, potrebbe trovarsi con API che non sono pronte e di conseguenza realizzare software difettoso per i dispositivi“, ha aggiunto Rubin.
“Un processo si sviluppo di una comunità è molto difficile da gestire – accettiamo proposte, in forma di codice, ma tendiamo a mantenerne il controllo, per migliorare il risultato finale”.
Ecco quindi un’onesta motivazione, più o meno condivisibile, sul perché Google non abbia rilasciato il codice sorgente di Honeycomb per mesi (Android 3.0 è open source, ma solo in teoria).