Questo Uccidera’ Quello

18 agosto 2009

Ieri sera e’ accaduto un fatto che offre una ricca serie di spunti di riflessione sull’essenza del software libero, e vorrei qui esporre le successive elucubrazioni nella speranza che possano tornare utili a chi si e’ posto certe domande ed ancora non ha ottenuto risposta.

Il fatto: ho rilasciato la versione 0.1.0 di un mio modestissimo programmino che permette di seguire l’avvicendarsi dei nuovi threads su 4chan, popolare image board estremamente attiva ed oramai divenuta uno dei pilastri della cultura Internettiana, ed ho ben pensato di annunciarne la disponibilita’ su 4chan stesso, nel canale dedicato alla tecnologia (/g/, per la precisione). Alla precisazione che l’applicativo e’ solo per Linux ho ricevuto una ondata di commenti negativi, sul fatto che nessuno se ne sarebbe curato e che era totalmente inutile, ed un poco alla volta sono giunte minacce sul proposito di rubare il codice, togliere il mio nome, e rilicenziarlo con un formato totalmente incompatibile con la GPLv3 per il solo gusto di farmi un dispetto, facendo leva sul fatto che da solo non avrei certamente potuto intraprendere una azione legale internazionale per violazione di copyright.

Sorvolando sull’infantilita’ dei miei interlocutori – ma in fin dei conti non ci si poteva aspettare di meglio da un forum noto per essere punto d’origine dei peggiori scherzi della Rete – occasioni come queste sono ottime per raccogliere percezioni e sentimenti di chi, consapevolmente o meno, e’ ostile al software libero ed alle sue modalita’ di diffusione.

Per molti l’idea di distribuire il codice sorgente del proprio sforzo programmatorio equivale ad un suicidio intellettuale, in quanto ogni riferimento al realizzatore primo dell’opera – e di conseguenza il riconoscimento e la glorificazione della paternita’, spesso unico motivo della distribuzione gratuita del software – e’ alla merce’ di qualsivoglia lestofante, che con un edit ed un giro di compilazione puo’ assegnare a se’ stesso il merito della composizione e farne cio’ che piu’ gli garba (ivi compreso trarne profitto economico, che penso sia il massimo affronto nei confronti di uno sviluppatore freeware). Il “furto di merito”, in una cultura principalmente meritocratica come e’ appunto quella del freesoftware e del freeware, e’ assimilabile al furto di denaro contante nel mondo reale contemporaneo, anzi e’ forse anche piu’ grave poiche’ il riconoscimento della bravura e dell’abilita’ del programmatore e’ l’unico ed assoluto mezzo con cui si e’ identificati all’interno dell’ecosistema sociale di riferimento. Secondo tale visione essere privati del proprio copyright sul proprio programma equivale ad essere privati non solo del lavoro, ma anche della possibilita’ di ottenerne un’altro, in una spirale di perdizione ed autodistruzione che spaventa chiunque sia anche solo vagamente tentato di condividere il codice sorgente e preferisce dunque tenerselo ben stretto.

Sia ben chiaro che tale affezione all’ego informatico non e’ esclusivo dei programmatori freeware, ma e’ diffusamente sentito anche dai programmatori freesoftware – come gia’ detto, entrambi i sistemi si poggiano su una meritocrazia di fatto – e non poche sono state le occasioni in cui ho personalmente raccolto dubbi e perplessita’ dai piu’ disparati esponenti della community open in merito ai rischi che comporta la messa a nudo dell’opera intellettuale e la (apparente, come vedremo) inclinazione alla predazione. Cio’ indica che, per quanto spesso il desiderio di avvantaggiare non il singolo individuo ma l’intero gruppo di riferimento sia forte, taluni non sono pienamente convinti di cio’ che fanno e perseverano sulla strada della condivisione quasi per inerzia.

Ebbene: io ritengo tali timori ancestrali e destinati a sparire spontaneamente nel corso del tempo, vestigia di un tempo lontano lontano in cui non esisteva l’Internet.

Partiamo da qualche presupposto di base, scontato ma che e’ bene chiarire subito:

  1. taroccare un software closed per alterarne il copyright non e’ tanto piu’ difficile che taroccarne uno open. I decompilatori per qualsiasi linguaggio di programmazione abbondano, ed anzi con un po’ di fortuna basta un semplice editor esadecimale per individuare la stringa che riporta il nome dell’autore e sostituirla con cio’ che piu’ aggrada. Indi per cui l’idea che tenendo il codice per se’ si evita qualsiasi illecito e’ totalmente infondata, una falsa sicurezza
  2. nonostante il presupposto di cui sopra, non mi risultano casi in cui qualcuno ha rubato la proprieta’ intellettuale di un’altro e ne ha cavato grandi benefici, tantomeno ostacolando il vantaggio dello sviluppatore originario. Inutile tirarla per le lunghe: nel sottobosco delle produzioni amatoriali sono ben poche le applicazioni impareggiabili ed insostituibili, moltissime – la maggior parte – sono replicabili partendo da zero nel giro di una settimana, ed illudersi che il proprio prodotto sopra tutti gli altri analoghi possa essere cosi’ interessante da essere rubato e/o possa aprire le porte a chissa’ quale notorieta’ e’ indice di presunzione che mai sara’ soddisfatta

Detto cio’, enunciamo un concetto semplice ma che rappresenta l’importante nodo di fondo da sciogliere: quel che preme preservare non e’ il software, ma la dichiarazione di paternita’. Banale, ma non scontato. La volonta’ di non rendere pubblico il sorgente coincide esattamente con la volonta’ di non rendere vulnerabile la dicitura sul copyright, che alla fine e’ il vero obiettivo delle premure del programmatore. Abbiamo gia’ visto che pur se consegnato in forma binaria il programma puo’ comunque essere falsificato, e tanto basterebbe a chiudere la questione, ma la vera domanda e’: basta un nome ed un cognome nella finestrella di “About” per garantire l’assoluta certezza in merito al creatore dell’opera? Basta scolpire le proprie iniziali sulla corteccia di un albero per dichiarare che il parco in cui si trova e’ a noi intitolato? A tal proposito il Notre Dame de Paris di Victor Hugo (e piu’ precisamente nel Libro 5, Capitolo II, “This Will Kill That”, reperibile in inglese qui) e’ assai esplicito, e le congetture sul rapporto tra architettura e stampa – la seconda ha preso il posto della prima, potenziandone i significati – sono splendidamente traducibili anche nel rapporto tra stampa ed Internet: la forza e l’immortalita’ di una espressione non si misura nella profondita’ con cui essa e’ scolpita nella roccia, ma quanto essa sara’ riproducibile ed accessibile al prossimo.

Per tornare al caso concreto, ed alla storia di apertura di questo brano. Sebbene non abbia particolare interesse nel difendere la proprieta’ intellettuale del mio stupido programma, facilmente re-implementabile in pochi giorni da qualsiasi mediocre programmatore, ho comunque voluto provare ad ingegnarmi per individuare la miglior forma di protezione a disposizione. E con discreta sorpresa mi sono reso conto che la soluzione e’ lapalissiana: per far sapere a tutti di essere l’autore di un programma, occorre comunicarlo. Ho aggiunto il mio progettino su OpenDesktop, su Ohloh e su Freshmeat, tre noti siti che indicizzano applicazioni opensource rendendone facile il reperimento e la scoperta da parte degli altri utenti, ma soprattutto riportano la data di inserimento e (nel caso di Ohloh) importano l’intero repository SVN mettendone in evidenza l’intera storia di modifiche e correzioni, si’ da placare ogni possibile incertezza sull’andamento dello sviluppo. Da oggi chiunque dichiarera’ di essere autore del programma, e per quanto egli possa alterare tutti gli headers in cui compare il mio nome e il nome originario del software, potra’ essere facilmente sbugiardato puntando il dito verso la quantita’ di tracce lasciate in giro sull’Internet dal vero ed unico autore, per cui la mole di servizi (gratuiti) sopra citati fanno da muti ed inconsapevoli garanti. Un po’ come nel secolo scorso si usava spedire a se’ stessi in busta chiusa e sigillata documenti importanti, lasciando che un ente autorevole e legittimato (le Poste) apponesse il suo timbro con il giorno il mese e l’anno del recapito, e tanto bastava per valere come prova della data di stesura del documento stesso in sede di tribunale.

Ma di tribunali non ci sara’ mai bisogno: solo un pazzo, o una persona immensamente motivata, potrebbe intentare causa ad un burlone dalla parte opposta del pianeta al solo scopo di essere riabilitato dalla societa’ civile. La societa’ tecnocratica in cui i programmatori domestici si muovono, invece, si accontenta di riconoscere il valore del singolo, e di ostracizzare chi non rispetta le regole del gioco: tutti sono consapevoli di quanto possa essere una facile tentazione quella di rieditare i sorgenti per farli apparire come propri, tutti sono ugualmente sensibili dinnanzi a tale potenziale abuso, nessuno sara’ disposto a perdonare o a tacere su un atto criminale di tal fatta, tanto piu’ efferato perche’ fondato sulla buona intenzione del creatore del software. Di tribunali non c’e’ bisogno, perche’ sono tutti giudici.

Tra poggiare ogni propria convinzione su una semplice frase all’interno del programma ed avere mezza Internet come testimone c’e’ una discreta differenza, ma gia’ so che questo non basta a rispondere ad ogni titubanza.

Ad esempio: se non vengo a sapere che qualcuno sta’ sfruttando il mio lavoro? Assai probabile, ed in tal caso “occhio non vede, cuore non duole”. Ma nel momento in cui dovesse essere intercettato un uso non conforme alla licenza applicata sara’ facile individuare il responsabile: poiche’ l’unico profitto che si trae dalla distribuzione di codice open e’ la costruzione della propria reputazione assieme alla copia non autorizzata ci sara’ un nome che vuol farsi elogiare, e spesso un indirizzo mail (nonche’ un paese di origine, e da li’ con qualche ricerca un indirizzo di residenza, per coloro con istinti particolarmente vendicativi…). Triangolare un usurpatore e’ semplice quando tale personaggio compie il gesto per il solo scopo di essere identificato.

E ancora: se qualcuno chiude il sorgente, come faccio a dimostrare che e’ opera mia? Questo e’ un po’ piu’ complicato, e sebbene non impossibile (esistono tecniche di analisi statica dei binari per tracciare i comportamenti di due programmi e dunque capire se uno e’ stato tratto dall’altro) stando al punto 2 dell’elenco sopra riportato e’ totalmente inutile: avendo due o piu’ programmi che fanno la stessa cosa gli utilizzatori saranno portati a scegliere quello migliore, ed il valore aggiunto della disponibilita’ del sorgente (con tutte le conseguenti implicazioni: certezza dell’assenza di malware, spyware, apprezzamento dei valori del software libero…) si sta imponendo verso ogni fascia di pubblico.

Insomma: le minacce di un gruppetto di ragazzini non sono bastate ad incrinare neppur minimamente la mia fiducia nel modello free, anzi mi ha offerto l’ennesima e sempre gradita occasione di riflessione (nonche’ una mole di visite al sito di TuxChan, essendo stato implicitamente pubblicizzato senza ritegno nella fase di affermazione della paternita’: 19 downloads in meno di 24 ore li ritengo un piccolo successo). Mi stupisco come invece molti si lascino intimorire da simili spauracchi, dalle pretese di furto e isolamento, paradossalmente limitando la diffusione del proprio parto creativo nel vano ed ingiustificato sforzo di detenerne un controllo che comunque non puo’ essere assoluto.

Questo uccidera’ quello. Il freesoftware uccidera’ il freeware. Perche’ tu sei solo, noi siamo tanti.

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...