Capitolo 3: La community e la scelta attiva
Da un lato vi sono ROM storiche con un approccio quasi professionale che sviluppano nel vero senso della parola la AOSP di Google e aggiungono nuove feature, dall'altro vi sono singoli user o team che accrescono notevolmente l'offerta arricchendo la nostra ROM preferita.
XDA distingue chiaramente il ramo dei developer da quello dei builder: i primi si trovano nella sezione Original Development, i secondi nella sezione Android Development. I primi partono tutti dalla AOSP, i secondi partono dal loro sviluppo.
Come è naturale che sia, tutti gli sviluppi della AOSP partono dai Nexus e nel corso degli ultimi 3-4 anni vi è stata una vera e propria selezione naturale fra gli utenti che hanno dato il loro contributo alla community. A differenza di altri terminali, il nostro OPO è ideale per lo sviluppo e quindi ha attratto praticamente tutta la comunità Nexus...questo spiega perchè vi sia un ottimo supporto diretto dei team di developer e anche perchè la qualità media dei builder sia piuttosto alta. Quasi tutti hanno alle spalle una grande esperienza e tuttora supportano più terminali. Alla luce dei fatti, l'OPO è stata una grande scelta strategica: ogni giorno arrivano altri Team storici e builder di comprovata affidabilità...praticamente abbiamo il supporto che viene dato a un Nexus.
Ma come districarsi nella scelta della ROM che useremo quotidianamente?
Sperimentare è bello ma con metodo e cognizione di causa. Alcuni utenti, nel dubbio, flashano senza tregua tutto ciò che trovano provando tutte le possibili combinazioni possibili fra kernel e ROM. Passano più tempo in recovery che ad usare il cell. E nell'ansia di non perdere dati e configurazioni si creano più problemi di quanti ne risolvano. Alla fine, se ne escono vivi, non avranno imparato nulla e inevitabilmente dovranno ricominciare daccapo. L'unica lezione che imparano è che appunto mancavano di un metodo.
La prima domanda da porsi è Cosa vorrei?
Stiamo scegliendo una ROM da usare quotidianamente e personalizzare nei minimi dettagli o di diventare dei tester non pagati?
Quindi, la prima ovvia risposta è stabilità. La seconda altrettanto ovvia risposta è un buon supporto.
La terza risposta riguarda i propri gusti personali, quindi è soggettiva.
Partiamo già tutti da una custom ROM di ottima qualità e perfettamente integrata con l'hardware del nostro cellulare. Perchè non esplorarla prima? Ci si fa un'idea di cosa piace e non piace. Per esempio se una la trova soddisfacente nell'utilizzo quotidiano ma desidera qualcosa in più, andrà a cercare innanzitutto le ROM che usano come base la CM. Esclude rapidamente le nightlies perchè non vuole fare da lemming con la ROM quotidiana e desidera qualcuno che filtri i commit. Alla fine scopre ad esempio la crDroid, la Carbon e la Temasek. Si informa sulla storia e la filosofia di chi ha sviluppato la ROM. A questo punto legge gli OP e i thread e determina se la ROM è supportata direttamente dal creatore (singolo o Team) o se è un porting mantenuto da un terzo utente e scopre tre diverse situazioni.
La crDrdoid è supportata direttamente dal suo creatore Cristiano Matos. Lavora da solo pertanto limita la mole delle feature aggiuntive per garantire al meglio la stabilità (questo è già un indice di intelligenza).
La Carbon ha dietro di se un Team di cui fanno parte anche dei programmatori. E' ricca di features prese a destra e a manca ma passa attraverso un processo organizzato che ne garantisce la stabilità e integrazione. E' ovvio che più persone ci sono dietro, più facilmente riescono a gestire grosse moli di lavoro. Questo è un principio lapalissiano.
La Temasek è una ROM ricca di feature e di lungo corso ma si appoggia ad utenti esterni che di volta in volta fanno il porting verso uno smatrtphone. In questo caso ha deciso di occuparsene Katinatez (lo stesso che ha fatto i porting non ufficiali della Philz e della TWRP recovery). Per la cronaca, si scopre pure che Matos stesso lavorava sugli aggiornamenti del kernel per la Temasek dei Nexus prima di decidere di avviare il suo progetto.
Tre ROM diverse ma tutte basate sulla CM. La Temasek deve ancora essere adattata al One e Katinatez non ha brillato quanto a risoluzione dei problemi della TWRP. Tutta l'integrazione sarà in mano sua e non sarà facile adattare tutto affinchè funzioni in maniera ottimale sul One.
Io la scarterei, perchè per ora è acerba e non garantisce la stabilità e l'affidabilità necessarie per una scelta a lungo termine. Un esempio di cosa può accadere lo fornisce la crDroid stessa. All'inizio Matos non la seguiva direttamente poiché non aveva il One e la ROM fu portata da M3dd0g, un builder con molta esperienza che ha integrato molto bene la crDroid con il codice specifico del bacon ed ha aggiunto anche qualche feature e aggiornamenti fin troppo frequenti. Il riscontro da parte della community è stato molto buono (io stesso ho elogiato il suo lavoro in un vecchio post). Poi è arrivato Matos e ha fatto capire chiaramente che il suo porting era quello ufficiale. Allora m3dd0g ha aperto il suo thread come spin-off della crDroid ma poi è emerso un suo difetto caratteriale (fu proprio CapitanUncino a mettere tutti in guardia) e m3dd0g sparì lasciando tutti in mutande.
La storia di una persona è importante sia sotto l'aspetto dell'esperienza che sotto quello dell'affidabilità. Poi può accadere tutto a questo mondo (in fondo la community è composta da amatori che hanno una vita aldifuori di XDA) ma è comunque un elemento importante da considerare. Restano quindi la crDroid e la Carbon. A parità di esperienza e storia, seguendo il principio di affidabilità, la Carbon sembra garantire un supporto più duraturo, dato che dietro c'è un intero Team e al contempo offre anche più feature.
Fatta la scelta, si fa un bel backup della stock ROM, si fa un'installazione pulita della ROM e si inizia ad esplorarla. E' sempre possibile passare una rom all'altra senza problemi e se alla fine la Carbon convince, allora diventerà la ROM principale...ma con cognizione di causa dato che il confronto diretto fra la stock e la Carbon sarà basato su una buona conoscenza di entrambe.
Da qui, si può ripartire a cercare qualcosa di diverso da testare nel tempo perso avendo sempre una ROM a cui tornare e con un bagaglio di esperienza e conoscenza maggiore: non solo sarà più semplice determinare quali feature alla fine interessano davvero ma anche quello che si vorrebbe. E inizia il processo di esplorazione...ma godendosi il cell.
Questo è un esmepio di ragionamento razionale per determinare una scelta.
Se invece di partire da una base CM, si opta per una custom ROM completamente diversa, allora la prima scelta deve sempre essere il tronco, ovvero la ROM principale, ovvero le ROM storiche. Poi si può scendere nei vari rami esattamente come per la CM.
Un esempio analogo può essere Slimkat. La ROM è stata portata dal Team principale ed è gestita da uno dei developer. Ci sono tutte le garanzie insomma...e anche se venisse temporaneamente meno il mantainer (come è accaduto) si potrà contare sul Team e su supporti esterni. Poi, si può pensare di dare un'occhiata agli sviluppi dei builder che costruiscono sulla Slimkat. Abbiamo due varianti gestite da builder con una storia comprovata che non variano l'essenza ma si concentrano nell'ottimizzare la compilazione del codice già presente (invece di usare il classico GNU, usano il Sabermode e l'Archi per ottenere un codice macchina più efficiente). Uno dei due ha deciso anche di sostituire lo stock kernel della Slimkat con il Kernel di AK...e col pieno supporto di AK.
Poi c'è una variante gestita da un Team di lungo corso (che include anche un paio di developer) che aggiunge pure qualche feature presa da altre ROM e personalizza pure il kernel: la Liquidsmooth.
Sono tutte e tre molti interessanti perchè condividono un approccio intelligente. Le prime due, Slimsaber e Sabbermod, possono essere viste come build ottimizzate della Slimkat e uno apprezza l'intelligenza dei due builder già dal fatto che non si caricano di lavoro e complicazioni infilando dentro tutto ciò che trovano. La Liquid ha dietro un supporto più articolato e magari offre quel quid in più che può piacere.
Poi esiste l'esempio di scelta negativa: per quanto ammiri il lavoro del ragazzino è un esempio perfetto di scelta inconsistente. Se uno legge l'OP della Cyanhacker dovrebbe avere già qualche dubbio sull'esperienza del builder e sulla sua affidabilità: un ragazzino (brillante) che va a scuola e durante le vacanze fa una build partendo dalla Liquid e buttandoci dentro tutto e di più..e non solo le feature ma anche app e moduli Xposed.
Se uno mette insieme la scarsa esperienza storica del builder (e quindi la sostanziale impossibilità che riesca a risolvere anche solo una delle incompatibilità), la sua età (=affidabilità), il fatto che parta da un ramo della Slimkat (=aggiornamenti più lenti dato che scendono a catena) e infine l'amatoriale introduzione di app e configurazioni che nessun sviluppatore serio si sognerebbe mai di fare perchè conduce a due soli risultati possibili: A) uno deve perdere tempo a levare le cose che non vuole e B) qualsiasi segnalazione dovrà tenere conto dei bug indotti dalle stesse app. Uno sviluppatore serio lo sa e analizza la build di base prima di rilasciarla e chiede altrettanto agli user.
Insomma, sommando tutti i segnali, solo una persona è rimasta nel thread a chiedere quando arriva il prossimo aggiornamento. LOL!
Questo è un esempio di scelta poco ragionata e poco lungimirante.
Concludendo, a dispetto delle critiche che ogni tanto fanno gli sviluppatori ai builder, la media delle ROM rilasciate è di buon livello se si considerano i fondamentali (stabilità, esperienza e affidabilità). Operare la prima scelta cum grano salis e procedere con metodo permette poi di godersi il cell e di non dover nemmeno aggiornarlo ossessivamente. Leggere i changelog e decidere se vale la pena aggiornare è il passo successivo. Lo scopo primario infatti resta avere una ROM stabile ed efficiente e non fare da tester. Molte ROM assicurano un alto livello di stabilità e aggiornamenti ben scansionati nel tempo.
Persino la Mahdi (che si contraddistingue per l'enorme mole di feature inserite) è sostanzialmente stabile e ben seguita dallo stesso creatore...poi però non lamentatevi se riscontrate diversi bug/incompatibilità e un alto consumo causato dai wakelock. E' normale che accada se lo spirito è Prima butto dentro tutto e poi inizio a limarla. E intanto nel frattempo ti viene consigliato di disabilitare il Google Play Service...
Io voglio usarlo il cell: è la ROM che si deve adeguare al mio stile e garantirmi un equo equilibrio fra un utilizzo completo e i consumi...non sono io che devo adeguarmi ai difetti della ROM e limitare il mio utilizzo.