3

Cambiare i rilasci di Ubuntu: si, ma nel modo giusto

10 settembre 2011 in Ubuntu tag: , , , ,

Logo UbuntuLa pubblicazione da parte di Scott James Remnant (ex dipendente di Canonical, ora lavora a Google) di un articolo “A new release process for Ubuntu?” ha riaperto nella community la discussione sui tempi di rilascio di Ubuntu.

Quello che Scott propone è un rilascio mensile (11.10, 11.11,…) mostrato sotto forma di normali update dove le funzionalità vengono rilasciate solo quando sono pronte e non in base ad una data di rilascio prestabilita, inoltre propone due canali beta e alpha: il primo andrebbe rilasciato poche settimane prima della nuova versione e servirebbe come testing mentre il secondo come ramo di sviluppo e considerato che sia il ramo principale sia quello beta dovrebbero rimanere stabili lo sviluppo si dovrebbe effettuare su dei PPA: un ppa per la nuova versione di Unity, uno per quella del software center…

 

Il problema

Scott sottolinea che lo sviluppo della 12.04 a causa di festività e pause si svolgerà in sole 13 settimane e poi si passerà subito a al bugfixing: un tempo così breve per lo sviluppo di grandi cambiamenti probabilmente non sarà abbastanza e di conseguenza si avranno release sempre meno stabili.

 

I rilasci di 6 mesi erano nati per allinearsi a di Gnome ma adesso che con il passaggio a Unity questo  ha meno importanza (anche se la maggior parte dei componenti fanno sempre parte di Gnome) si può di cambiare questa regola, credo, senza grossi problemi.

 

La soluzione sbagliata

Il problema è serio, ho sempre sostenuto che sei mesi son troppi pochi per riuscire a fare uno sviluppo completo (basta vedere Unity nella 11.04) e molti tra cui diversi sviluppatori di Unity la pensano così.

 

Allo stesso tempo penso che la soluzione mostrata da Scott sia addirittura peggiore:

  • Mancano totalmente le LTS e per quanto potranno essere testate le feature prima di essere rilasciate si rischia sempre che una nuova versione del kernel sia in-compatibile, un driver non più funzionante oppure un software che richiede specifiche hardware più avanzate. Inoltre nessuno, a parte pochi curiosi, voglio trovarsi un nuovo software o una nuova interfaccia da imparare in modo improvviso senza che ci sia un’annuncio grosso come una casa ( e i changelog nell’update manager non lo sono).
  • Il supporto come funzionerà? Si dovrà aggiornare sempre il sistema ogni mese per non rischiare di trovarsi con un software obsoleto e non supportato perchè dalla versione 11.11 alla 11.12 è stato aggiornato?
  • Compatibilità. Gli sviluppatori di applicazioni dovranno perdere tempo a tenere il loro software sempre aggiornato per evitare problemi di in-compatibilità? Mettete per esempio che dalla 12.01 alla 12.02 cambi la versione di python e tutti i software debbano essere riscritti per supportare la nuova in meno di un mese di tempo, lo stesso può valere per il passaggio da gnome 3 a gnome 4 o da unity 3.x.x a 4.x.x.

Tutti questi punti si uniscono in un solo concetto: le release sono un punto di riferimento  perchè si sa che il sistema non cambierà da rosso a giallo in un giorno, perchè si sa che con le LTS si può stare tranquilli per tutti i 3 anni del supporto, perchè nessuno ti obbliga ad aggiornare, perchè se il sistema funziona almeno per 6 mesi continuerà (si spera) a farlo, perchè non devo imparare niente di nuovo se non dopo una nuova versione, perchè ….

 

Un sistema del genere lo vedrei più adatto a Archlinux, che infatti è una rolling release, insomma a distro per geek o smanettoni non per Ubuntu che punta a essere user friendly.

 

La soluzione (secondo me)

Ma il problema rimane, ecco quindi come cambierei il sistema di rilascio di Ubuntu.

I tempi

Una versione all’anno in modo da permettere uno sviluppo maggiore e una LTS ogni 2 seguendo lo schema LTS – rilascio – LTS, i tempi tra LTS e LTS rimarranno gli stessi di adesso con la differenza che ci sarà 1 solo rilascio tra una e l’altra.

 

Tutti i cambiamenti importanti (es. gnome4, una nuova interfaccia) dovranno arrivare prima nella versione intermedia e non direttamente nella LTS in modo da permettere di avere nuovi software completi e provati da un testing molto lungo.

La scelta

Le LTS dovranno essere la scelta di default quando si scarica Ubuntu con la versione intermedia consigliata solo per i curiosi o contrassegnata come beta.

Il supporto

Secondo alcuni 3 anni di supporto per le LTS sono troppi e quando ho fatto notare che in informatica sono un’era mi è stato detto che nei loro uffici il capo non ci pensava neanche a cambiare xp, ma è proprio questo il punto Ubuntu non è Windows:

  • Ubuntu è gratis: questo significa che se con Windows ci penso bene prima di spendere 70, 700, o 7000 euro per aggiornare i miei 1, 10 o 100 computer da XP a Vista o da vista a Seven con Ubuntu non ho questo problema essendo le spese pari a 0.
  • Ubuntu non richiede un pc nuovo: ho pc vecchio di 10 anni che ho aggiornato versione dopo versione fino ad arrivare alla 11.04 con Unity 3d sostituendo solo la scheda grafica mentre con Windows avrei dovuto comprarne uno totalmente nuovo considerato che i requisiti sono passati nel caso di XP->Vista da 256mb di ram ad almeno 1 gb.
  • L’aggiornamento su Ubuntu è semplice: per aggiornare un pc con Ubuntu bastano pochi click e tutto avviene in automatico, in caso si abbia a che fare con moltissime installazioni e non si voglia fare l’operazione pc per pc si può usare ssh oppure sistemi come Landscape di Canonical.

Gli aggiornamenti

Per evitare di avere software obsolete si dovrebbe permettere ai singoli sviluppatori di inviare aggiornamenti per le loro apps senza dover aspettare la release successiva :come succede adesso ma solo per le apps a pagamento o partner di Canonical.

 

Secondo voi i rilasci di Ubuntu vanno bene così? Come li vorreste?



  • Angeloexpo

    Ciao!
    sono capitato x caso qui, ma l’argomento mi interessava e mi sono goduto la lettura, dico  goduto perchè scrivi in modo semplice e completo….
    tornando all’argomento ritengo la Tua soluzione perfetta!
    E’ tempo che stò dietro ad ubuntu, ormai ho adepti (ubuntu ha adepti per essere precisi! ^_^) sparsi in vari settori, ufficio, amici, web…. tutti sono presi da aggiornamenti all’ultima versione, inutile dire loro … “aspetta un mese o due prima di passare alla nuova release, ci sono sempre piccole beghe..” .. ma nulla, dopo 2, 3 gg tutti a passare e di conseguenza arrivano le begh, finora solo pochi sono tornati a Win o hanno fatto il ‘formattone’, di solito riesco a supportarli benino, ma la cosa è decisamente gravosa, inoltre vorrei spingere molto nell’utilizzo in azienda, e per convincere i capi devo avere una “base” che mi sostenga. La soluzione di LTS più sicure e stabili è in assoluto la strada da prendere, in ufficio il PC deve funzionare e basta, senza fronzoli e per diverso tempo, non c’è problema se per 2 3 anni che sempre la stessa versione, anzi!.. viene visto bene xchè in questo modo non c’è da perdete tempo x apprendere nuove interfacce o verificare compatibilità aziandali.. l’idea de eleggere le LTS a default è giusta, le altre solo x ‘smanettoni’… in questo modo l’utente si sente scoraggiato e tiene la sua cara versione senza beghe!

  • Alessandro Arcidiaco

    la soluzione? rendere ubuntu Rolling release…si aggiorna sempre agli ultimi pacchetti testati senza che tu ti preoccupi troppo di Alpha, Beta, RC, LTS ecc…dopo tutto con mac o con windows mica siamo sempre a rincorrere gli aggiornamenti no? anzi lasciamo che siano loro in background a fare tutto…invece con Linux mi sembra sempre una rincorsa all’ultima novità, ovviamente questo accade perchè Linux è in continua evoluzione. Allora perchè non partire con la prossima Ubuntu 12.04 come LTS e poi vai di aggiornamenti rolling fino alla prossima LTS che deve essere dopo 2 anni ad esempio (non troppo perchè la gente si stufa)

    • http://paglias.net/ Paglia

      rolling fino ad un certo punto, la mia proposta sarebbe di permetetre aggiornamenti a tutti i sofwtare ma solo bugfix e poco di nuovo per le parti di sistema che possono portare a incompatibilità…