La Sottile Linea

28 marzo 2010

Qualche settimana fa’ e’ stata approvata la mia richiesta per un account git sui repository del progetto Gnome, mossa dopo l’invito di Philip Van Hoof sulla mailing list di Tracker. Ne ho presto approfittato per caricare su git.gnome.org il codice di libgrss, inizialmente sviluppata su BarberaWare ma ora dipendenza di Tracker e, se e quando avro’ modo di avanzare richiesta di inclusione, modulo ufficiale di una delle prossime versioni del desktop environment.

Un paio di mail ed un paio di commit mi hanno permesso di entrare a far parte di un team ben piu’ grande di quelli cui sono stato sinora abituato, e ad un livello ben piu’ alto, di vedere il mio proprio codice girare su milioni di PC sparsi sul globo terracqueo, di oltrepassare la sottile linea che separa chi il freesoftware lo considera un passatempo da chi lo considera un obiettivo.

Cosa implica cio’?

Dal punto di vista prettamente strutturale, una sequenza di complicazioni: rigide guidelines da seguire per la formattazione del codice, la responsabilita’ di mantenere sempre sul repository qualcosa di funzionale e quanto piu’ possibile esente da bugs, il dovere di provvedere ricca documentazione di ogni funzione destinata ad essere usata da altri, l’impegno a rispettare determinate deadlines e determinati tempi di consegna per rientrare nel ciclo di sviluppo del progetto. Questa posizione mi aiuta a ricordare il fatto che il “software libero” sara’ pure “libero”, ma e’ anche “software”, ovvero un prodotto manufatto che richiede una certa precisione ed il rispetto di regole di stampo ingegneristico: bellissimo il fatto di poter condividere il sorgente, ma se non fa quello che deve esso e’ totalmente inutile e le prediche sulla “liberta’” diventano esercizi di retorica fini a se’ stessi.

Dal punto di vista sociale, il progresso e’ notevole: sorvolando sul fatto di potersela inopportunamente “tirare” con gli amici, e sulla soddisfazione di aggiungere la dicitura “Developer Gnome” sul curriculum (che ora come ora risulta essere un documento particolarmente utile…), c’e’ da considerare il credito accumulato nell’economia meritocratica in vigore nel mondo freesoftware. Pubblicare il proprio codice sui repository Gnome garantisce che esso venga visto ed usato da molta piu’ gente, e nuove opportunita’ si aprono per implementare e far implementare architetture complesse. Poco fa’ ho inviato richiesta per vedere il mio blog (non questo, ma quello piu’ tecnico) in Planet Gnome Italia, e dunque aumentare di molto la visibilita’ dei miei contenuti e delle mie idee. Un po’ alla volta si ottiene familiarita’ coi processi e con le persone, e piu’ facile viene apportare e far apportare modifiche utili ai propri scopi, sia all’interno dei progetti su cui si lavora direttamente che su altri affini.

Il mio attuale status (con i benefici sopra elencati) non deriva da eccelse ed uniche qualita’ programmatorie, ma semplicemente da un minimo impegno e da uno sforzo marginale ma oculatamente indirizzato. Come si puo’ constatare dal codice di tracker-miner-rss, che appunto e’ il componente per il quale sono stato chiamato a far parte del team Tracker, l’opera svolta non brilla per complessita’ o ingegnosita’: ho prelevato il codice che mi serviva da Liferea, usando la libraria apposita l’ho integrato con il programma principale, e basta. Un qualsiasi mediocre programmatore con qualche esperienza su piattaforma Linux avrebbe potuto fare altrettanto, magari pure in meno tempo. Cio’ vuol dire che superare la sottile linea oggetto di questo post non e’ questione di capacita’ o fortuna, ma esclusivamente di volonta’. La volonta’ di fare qualcosa di mirato e specifico per il miglioramento.

Ben venga il progettino su cui lavorare alla domenica (io stesso ne ho una lista infinita, e non ci lavoro solo alla domenica), ma molti di piu’ dovrebbero avere la fermezza di voler aggregarsi ad un progetto piu’ grande ed affermato, magari di fare il sacrificio di abituarsi alle guidelines e alle deadlines, e meglio sfruttare le risorse intellettuali di cui dispongono per dirigere la crescita verso una direzione univoca e comune, anziche’ frammentare gli sforzi in mille direzioni diverse.

Il Bugzilla di Gnome pullula di tickets aperti, molti dei quali molto facilmente risolvibili eppure lasciati li’ a marcire da anni a causa della legittima mancanza di tempo dei maintainers. Non dubito che anche KDE, OpenOffice, o qualsiasi altro progetto di grosse dimensioni siano nelle stesse condizioni. Val la pena farci un giretto, aprire qualche pagina a caso, dare uno sguardo al codice, e magari confezionare una patch. E poi un’altra. E un’altra. E chiedere un account sul repository, in modo da potersi committare le altre da soli. Ed oltrepassare la sottile linea che separa chi blatera su quanto sia bello il software libero da chi il software libero lo fa.

2 Risposte to “La Sottile Linea”

  1. Andrea R Says:

    “Il Bugzilla di Gnome pullula di tickets aperti, molti dei quali molto facilmente risolvibili eppure lasciati li’ a marcire da anni a causa della legittima mancanza di tempo dei maintainers. Non dubito che anche KDE, OpenOffice, o qualsiasi altro progetto di grosse dimensioni siano nelle stesse condizioni. Val la pena farci un giretto, aprire qualche pagina a caso, dare uno sguardo al codice, e magari confezionare una patch. E poi un’altra. E un’altra. E chiedere un account sul repository, in modo da potersi committare le altre da soli. Ed oltrepassare la sottile linea che separa chi blatera su quanto sia bello il software libero da chi il software libero lo fa.”

    Mi son letto una dozzina di post del tuo blog Bob. Spettacolare.
    Ciao


  2. […] essa ed in nome di essa. Dopo numerosi anni vissuti in veste di semplice utente Linux mi son visto assegnare il ruolo di developer Gnome, e sebbene ad oggi la quantita’ di miei contributi concreti in […]


Lascia un commento

Inserisci i tuoi dati qui sotto o clicca su un'icona per effettuare l'accesso:

Logo WordPress.com

Stai commentando usando il tuo account WordPress.com. Chiudi sessione / Modifica )

Foto Twitter

Stai commentando usando il tuo account Twitter. Chiudi sessione / Modifica )

Foto di Facebook

Stai commentando usando il tuo account Facebook. Chiudi sessione / Modifica )

Google+ photo

Stai commentando usando il tuo account Google+. Chiudi sessione / Modifica )

Connessione a %s...