22 dicembre 2011

C'è chi forka e chi contribuisce


C'è chi forka

Nel mondo GNU/Linux una delle parole più famose è Fork!. Ad un utente non gli sta bene avere i tasti di chiusura a destra e li vuole a sinistra? Fa un fork!
Non mi sta bene il colore delle icone? Altro Fork! 
Ho litigato con il cugino della suocera del nipote della zia di uno sviluppatore di una distro? Faccio un altro fork!
Si è arrivati a forkare tutto, sputano come funghi fork di interfacce, di distro, di programmi, la maggior parte dei quali sono player multimediali che cambiano qualcosina ma alla fine son sempre la solita minestra riscaldata.

Può sembrare una cretinata ma quello che ho appena descritto calcando un pò la mano (ma anche no) è uno degli sport preferiti dai programmatori GNU/Linux. I fork se da un lato possono esser visti come una risorsa in quanto portano nuove idee, dall'altro sono un male perché contribuisce a creare castelli, i fork spesso portano alla creazione di un qualcosa che già c'è e che nessuno ne sentiva la mancanza.

Per campanilismo e mancanza di cooperazione spesso programmatori talentuosi e non preferiscono forkare e reinventare la stessa ruota senza contribuire al benessere di tutti.
Un caso emblematico può essere rappresentato dalla recente scelta da parte di Clement Lefebvre di creare Cinnamon, un fork a tutti gli effetti di GNOME Shell che ha come fine quello di integrare l'esperienza utente delle MGSE in Gnome Shell nativamente in modo da poter avere una interfaccia più uniforme. Certo, i motivi sono nobili, sopratutto visti con gli occhi di un utente GNOME tradito come il sottoscritto che non riesce ad amare GNOME Shell. Però questi sforzi potrebbero essere canalizzati diversamente all'interno di GNOME Shell per migliorare il progetto madre, non c'è mica bisogno di fare un fork con tutto il dispendio di risorse che ne consegue.
Un altro progetto a mio avviso "inutile" è MATE, che senso ha forkare GNOME 2 quando si potrebbe contribuire direttamente allo sviluppo di Xfce che invece ne è l'erede morale?
Ma potrei continuare parlando ad esempio di Canonical che forka l'interfaccia di GNOME per proporre la sua Unity imponendola agli utenti. O che, ad esempio, realizza programmi come Ubuntu One o USC che sono esclusivi della sua versione GNOME, e non vengono portati nemmeno sulle sue derivate ufficiali come Kubuntu. Che senso ha realizzare qualcosa da usare solo per se?

e chi contribuisce

In questo marasma di fork fa la sua eccezione Chakra Linux che ha recentemente annunciato che Chakra Gtk-Config, un progetto innovativo nato in seno alla sua comunità verrà sviluppato da KDE. Il nuovo pachetto si chiamerà ora KDE Gtk Configurator e dal suo sviluppo ne beneficeranno tutte le distro che fanno uso di KDE.
Ho evidenziato la parola innovativo in quanto il lavoro svolto dal team non è stato quello di reinventare la stessa ruota ma di fornire un programma nuovo che non era previsto all'interno di KDE e di renderlo fruibile per tutti.
A mio avviso è questo lo spirito di collaborazione necessario all'interno della comunità, lo spirito che fra le tante cose è alla base della filosofia stessa che è dietro al software libero ovvero condividere il proprio lavoro affinché tutti ne possano beneficiare.


Voi cosa ne pensate a riguardo? Il fork è un bene o un male assoluto da combattere?

10 commenti:

  1. Sono in linea di massima d'accordo,con un ma.
    Cinnamon:siamo sicuri che i contributi sarebbero stati ben accetti,visto che sarebbero andati in una direzione diversa da quella scelta dagli sviluppatori di Gnome?
    Se non mi sbaglio il problema di Mint 12 è la scarsa stabilità dell'interfaccia modificata con le GSE,e Lefebvre si era moralmente impegnato con gli utenti a mantenere la vecchia User Experience.
    Non so(da ignorante,non so davvero!) se sarebbe stato possibile fare diversamente. Matty

    RispondiElimina
  2. @Anonimo
    Infatti, ciò che non bisogna tralasciare è che spesso e volentieri i fork nascono per divergenze di vedute tra i programmatori.
    Esempio lampante mplayer2.

    RispondiElimina
  3. Il problema è che ora Clem si trova a dover portare avanti MGSE, Mate e Cinnamon. Tutto dispendio di forze.
    Sul fatto che non è certo che i consigli sarebbero stati ben accetti ti do parzialmente ragione, parzialmente perché ancora non ho trovato nessuna info su un eventuale contatto fra Clem e il team di GNOME. Se uno le cose non le propone e parte subito col fork non è di certo cosa bella.

    RispondiElimina
  4. Non voglio fare l'avvocato di nessuno, ma Clement Lefebvre ha scritto questo: "The Gnome development team is not interested in the features we implemented, it's opposed to adding them to Gnome Shell, and it doesn't share our vision of a desktop."
    E non è il primo che si lamenta, anche altri utenti che hanno semplicemente segnalato bug in Gnome 3/Gnome Shell si son sentiti rispondere qualcosa che potremmo riassumere nel solito "it's not a bug, it's a feature", pur di accettare pareri, compromessi o soluzioni esterne al team GNOME.
    A questo punto se questa è l'apertura del mondo open, ben vengano i fork come Cinammon.

    Poi quello di Chrakra che tu classifichi come contributo, secondo me non è poi così tanto diverso da quello che fa il team di Mint. In Chakra (un fork come Mint) hanno sviluppato uno strumento per i cavoli loro per la loro distribuzione, poi KDE l'ha preso e quindi verrà integrato nell'ambiente KDE. Non è che Chrakra ha proposto un tool del genere a KDE e il team di quest'ultima l'ha sviluppato.
    E quindi per quanto riguarda questo Cinnamon, nessuno vieta al team Gnome di integrarlo nella sua suite e farlo diventare il nuovo Gnome Classico, tanto per fare un esempio.

    Su MATE sono d'accordo, progetto carino (ovvio è Gnome 2) ma senza futuro, potevano puntare su Xfce 4.10

    RispondiElimina
  5. Marco: MSGE verrà dismesso per far spazio a Cinnamon, Mate purtroppo invece si ostineranno a svilupparlo.

    RispondiElimina
  6. Come vedi anche dai commenti, è come in politica: ognuno vuole la sua sedia, il suo spazio al sole. Senza mai scendere a compromessi.
    Peccato.

    RispondiElimina
  7. Guarda che nel mondo bsd, la cosa non e' che sia migliore. La addirittura forkano per vere e proprie puttanate. Vedi il caso di NetBsd

    RispondiElimina
  8. "Come vedi anche dai commenti, è come in politica: ognuno vuole la sua sedia, il suo spazio al sole. Senza mai scendere a compromessi.
    Peccato."
    Guarda che,per esempio,io non sono uno sviluppatore,constato solo che Lefebvre risponde ad una domanda presente nella comunità,e su questa base,e sul fatto che gli sviluppatori di Gnome non sono interessati a queste modifiche,è giustificato Cinnamon.
    Poi sono d'accordo:la gran parte delle volte i fork sono una disgrazia. Matty

    RispondiElimina
  9. Gnome e Canonical hanno fatto delle scelte che da molti sono percepite come arbitratie, imposte. Ben vengano quindi i fork, in questi casi. Che servano a ristabilire la centralità della comunità e mantenere una certa dose di "biodiversità".
    Mi sembra banale dire che alcuni fork abbiano più senso di altri e che non possano essere tutti "male" o tutti "bene"... La possibilità di forkare è molto utile, ed è uno strumento che, spesso, è utile per salvare dei progetti che sembrano dirigersi verso dei binari morti.

    RispondiElimina
  10. Se tutte le risorse fossero concentrate in poche direzioni si potrebbero avere risultati molto più importanti. Sono d'accordo con te, aboliamo i fork. Ad una condizione, la direzione da seguire la fai scegliere a me !!!

    RispondiElimina

Licenza
Licenza Creative Commons

Quest' opera è distribuita con licenza Creative Commons Attribuzione - Non commerciale - Non opere derivate 3.0 Unported. Questo blog non rappresenta una testata giornalistica, in quanto viene aggiornato senza alcuna periodicità. Non può, pertanto, considerarsi un prodotto editoriale, ai sensi della legge n. 62 del 7/03/2001

Disclaimer immagini

Le immagini utilizzate in questo blog appartengono ai loro rispettivi autori e sono utilizzati per scopi educativi, personali e senza scopo di lucro. Ogni eventuale violazione del copyright non è intenzionale, ma se si riconosce un'immagine protetta da copyright, fatemelo sapere qui, e sarò lieto di aggiungere i credits o modificarla o rimuoverla.

Disclaimer images

Images used on this blog belong to their respective authors and are used for educational, personal and no profit purposes. Any eventual copyright infringement is not intentional, but if you recognize a copyrighted image, please let me know here, and I'll happily provide to add the right credits or modify or remove it.