Un nuovo Ubuntu ogni mese, in stile Google Chrome

Scott James Remnant, membro del consiglio tecnico di Ubuntu, propone di cambiare radicalmente il ciclo di sviluppo della distribuzione Linux passando da sei a un mese. A suo dire ci sarebbero dei vantaggi, ma non tutti la pensano così.

Perché non far uscire Ubuntu ogni mese, anziché ogni sei? È questa la proposta di Scott James Remnant, membro del consiglio tecnico della famosa distribuzione Linux e attualmente alle dipendenze di Google. Un Ubuntu in stile Chrome e Firefox, due browser che sono aggiornati con cadenza serrata e regolare.

Gli utenti di Ubuntu sanno bene che il sistema operativo viene aggiornato ad aprile e a ottobre. Il supporto alle versioni è di 18 mesi, ma per la versioni LTS (long term support, escono ogni due anni) passa a 3 anni per la variante desktop e 5 anni per quella server.

Sei mesi sono una via di mezzo che in molti ritengono accettabile, in quanto impedisce che i tempi si dilunghino eccessivamente (il team di Canonical è molto scrupoloso sul rispetto delle date). Inoltre si assicura l'uscita di novità a "getto continuo".

Altri ritengono che però una data fissa sia controproducente: se per un motivo o per l'altro c'è un problema, pur di rispettare la scaletta vi si passa sopra, rimandando le correzioni a dopo l'uscita con piccoli aggiornamenti, oppure alla versione successiva. Inoltre c'è la possibilità che il team, pur di rispettare i tempi, includa software di terze parti non ancora propriamente stabile, come per esempio un browser in versione beta.

Secondo Remnant il miglior compromesso sarebbe passare a un ciclo di uscita mensile, con la creazione di tre canali di sviluppo paralleli: alpha, beta e release (versione stabile). L'alpha sarebbe dedicata a un ristretto gruppo di sviluppatori, la beta potrebbe essere il canale per gli utenti che vogliono contribuire a testare le novità introdotte e infine la release stabile, quella dedicata tutti coloro che vogliono un prodotto "finito". Le versioni LTS dovranno invece continuare a seguire una cadenza biennale, in modo che vi sia ancora ecosistema stabile per le aziende e gli OEM.

Oggi passano sei mesi da una versione all'altra di Ubuntu

Remnant ritiene che legare le caratteristiche a versioni specifiche non sia la migliore strada per gestire i tempi e soprattutto la qualità. Tanti progetti inoltre non vengono iniziati e poi accantonati, o non iniziati affatto, perché non possono essere realizzati nei tempi previsti. A suo dire il problema sarebbe anche aggravato dalla tendenza di Canonical di legare la paga e i bonus dei dipendenti allo sviluppo della funzione assegnata, che deve essere pronta nei tempi previsti.

Capita così che durante la scrittura del software si corra e nel sistema operativo sia inserita una nuova caratteristica - spesso importante - non del tutto completa, che sarà affinata solo successivamente. Tra gli esempi troviamo Unity o Ubuntu Software Center. Questo è un male per diverse ragioni, in quanto può influire sulla percezione delle nuove caratteristiche da parte dell'utente: una funzione con dei bug, per quanto promettente, potrebbe infastidire chi la usa a tal punto da sovvertirne il parere.

Novità mensili assicurerebbero un sistema in costante evoluzione, permetterebbero agli sviluppatori di lavorare senza fretta e con il sistema dei canali si creerebbe un sisema di testing strutturato fino al rilascio finale. Tuttavia c'è chi come Arstechnica ritiene che l'approccio proposto da Remnant non sia dei migliori o comunque attuabile, in quanto bisognerebbe far sì che i diversi componenti mantengano uno sviluppo allineato.

Una caratteristica potrebbe progredire troppo rispetto a un'altra, dando vita a un prodotto non uniforme, di qualità complessiva non adeguata e con possibili incompatibilità. Insomma problemi. Con sei mesi di tempo, invece, si riesce a far marciare tutto il processo di sviluppo su binari ben precisi, anche per quanto riguarda i software di terze parti, che in questo modo possono garantire la compatibilità con la nuova versione. Cosa che però potrebbe divenire complicata suddividendo lo sviluppo in tre tronconi e accelerando l'uscita delle nuove funzioni.

E voi cari lettori e utenti di Ubuntu che ne pensate della proposta di Remnant? Cosa cambiereste nel ciclo di sviluppo della distribuzione desktop più popolare?