Come aiutare il software libero senza saper programmare

Molto spesso quando si chiede ad una persona perché non collabora con un progetto libero, ci si sente rispondere che non sa programmare e che quindi non sa come aiutare.
Questo articolo vuole offrire alcuni spunti su cosa è possibile fare senza saper programmare.

La differenza del software libero

La primaria differenza, dal punto di vista dei contributi, tra il software libero e il software proprietario è che ci sono molti modi diversi per aiutare un software libero che non sono praticabili per il software proprietario.

Sicuramente l’aiuto più comune e più importante richiede la conoscenza del linguaggio di programmazione utilizzato: si tratta del lavorare al progetto stesso come sviluppatori.
Questo però non limita in modo assoluto le possibilità per aiutare un software libero anche quando non si sa programmare, e, anzi, ci sono altre cose quasi altrettanto importanti che sono necessarie in molti progetti.

Traduzioni

La maggior parte dei programmi sono scritti in lingua inglese (sia per quanto riguarda l’interfaccia del programma, sia per quanto riguarda la documentazione). Un grande aiuto che si può fornire ad un progetto è appunto il fornire traduzioni aggiornate per l’interfaccia e la documentazione, sia creandole da zero, sia completando una traduzione già presente ma magari non aggiornata.
Molti progetti, come per esempio KDE, offrono una struttura per la traduzione dei programmi che permette di scrivere anche solo piccole parti della traduzione per volta. Anche correggere le traduzioni magari non perfette può sempre essere utile.
Altre volte è anche possibile correggere gli errori ortografici di progetti scritti sì in inglese, ma magari da una persona che non lo parla perfettamente (perché magari non è americana o inglese) e che quindi possono contenere qualche imprecisione.
In ogni caso, la cosa migliore quando si vuole tradurre un programma è verificare sul sito del programma stesso se è presente già della documentazione per i traduttori, oppure chiedere su eventuali mailing list e forum (chiedendo poi se è possibile mettere a disposizione sul sito le informazioni necessarie).

Documentazione

Ancora più importante della traduzione può essere proprio la scrittura della documentazione. Per un programmatore scrivere la documentazione dei propri programmi è una delle cose più complicate, principalmente perché per chi l’ha scritto, ogni cosa che il proprio programma fa è ovvia. Se anche molti programmatori riescono a mantenere aggiornata una buona documentazione delle funzioni e delle strutture dati (la cosiddetta documentazione API), quasi nessuno riesce a tenere aggiornata con precisione la guida d’uso.
Scrivere documentazione può essere una cosa molto importante, e non richiede altro che un’approfondita conoscenza di come funziona il programma. Sempre più progetti per semplificare il processo di scrittura della documentazione da parte degli utenti del programma stesso utilizzano delle applicazioni web chiamate «Wiki» che permettono di modificare i contenuti a tutti gli utenti senza la necessità di un accesso diretto al sito web.

Mailing Lists e forum

Molti progetti utilizzano delle mailing list o dei forum per permettere agli utenti di porre domande agli sviluppatori, e a questi di rispondere alle domande degli utenti. Ovviamente perché gli sviluppatori possano rispondere, che viene a sottrarsi spesso proprio dal tempo impiegato nello sviluppo.
Un modo per aiutare un progetto può essere quello di frequentare attivamente le sue mailing list e i suoi forum per rispondere alle domande poste da altri utenti, qualora se ne sapesse la risposta, sollevando il carico agli sviluppatori.

Icone e grafica in generale

Quasi tutti i programmatori non sono per nulla dei bravi grafici, e spesso ci sono applicazioni che non hanno icone o ne hanno di molto scarne, oppure possono avere delle splashscreen rozze. Grafici e artisti vari possono sempre collaborare fornendo icone alternative per i programmi che non ne dispongono.
Un altro modo per aiutare può essere per esempio disegnare le icone per temi diversi da quelli predefiniti (per esempio per le icone Nuvola per KDE, quando il tema predefinito è Crystal).

Interfaccia grafica

Questo è specialmente valido per i programmi che sono ai primi stadi: spesso capita che i programmatori non sappiano bene come gli utenti preferiscano accedere a determinate funzioni, e quindi finiscano per progettare la prima interfaccia che gli passa per la testa. Aiutare fornendo idee, schizzi, o commenti su come una determinata cosa possa essere gestita può essere molto utile per gli sviluppatori.

Rivedere i bug

La maggior parte dei progetti hanno delle web application per tracciare i bug (solitamente Bugzilla, ma non è una regola), in cui gli utenti possono riportare eventuali problemi incontrati nell’uso dei programmi.
Al tempo stesso però, specie per progetti che vengono sviluppati da molti anni, come KDE, succede che ci siano dei bug che risultano ancora aperti quando sono stati corretti da tempo, per esempio perché è stato riscritto del codice, o è stato trovato indipendentemente e corretto.
Un modo per aiutare un progetto può essere proprio quello di segnalare quali bug non sono più pertinenti, provando le versioni aggiornate del programma se continuano a ripetere gli stessi problemi.

Fornire hosting

Chi avesse a disposizione una macchina su internet su cui poter far girare applicazioni web o altri servizi può fornire hosting, anche parziale, per il progetto. O potrebbe diventare un mirror per offrire i download del progetto stesso.
Anche se SourceForge ha nettamente cambiato il modo di gestire i servizi per i progetti, nell’ultimo periodo soffre di non pochi problemi dovuti alla quantità di progetti in esso presenti (per esempio i server CVS anonimi non sono aggiornati in tempo reale, non viene fornito un altro sistema di versioning come Subversion, gli archivi delle mailing list sono poco pratici), ci sono molte applicazioni che non sono inserite in progetti su SourceForge perché troppo piccole per valer la pena di aprire un intero progetto, ma che comunque potrebbero avere vantaggi se potessero usare servizi come sistemi di versionamento o altro.

Webmaster e Webdesigner

Anche i siti dei progetti liberi spesso richiedono ai programmatori di occuparsi di questi anziché del codice del programma stesso. Chi potesse dare una mano come webmaster o webdesigner semplificherebbe sicuramente la vita ai programmatori permettendo loro di occuparsi per più tempo del codice.

Donazioni

Moltissimi programmatori lavorano su progetti liberi come hobby, e non traggono da questo un profitto. Per questo se trovano dei lavori pagati da fare è probabile che accantonino per un certo periodo lo sviluppo di progetti liberi.
Chi ha la possibilità potrebbe donare anche solo una somma esigua ad un progetto o ad un singolo programmatore. Anche un singolo euro donato da molte persone può permettere ad un programmatore di dedicare più tempo ai propri progetti scartando eventuali lavori di poco conto (che però gli sarebbero necessari per mantenersi).
Molte persone accettano anche donazioni di hardware, anche usato e vecchio, da utilizzare come recupero per eventuali sistemi non funzionanti, o per aumentare la base di test.
Anche libri o documentazione stampata possono essere utili per i programmatori, anche se la continua proliferazione dei libri disponibili liberamente su Internet e della documentazione scritta da altri utenti rendono questo sempre meno necessario.

Passare parola

Ultimo ma non per importanza, far conoscere un programma a più persone possibile può aiutare un progetto molto più di quel che si può pensare: altre persone potrebbero saper programmare, oppure potrebbero occuparsi di un qualsiasi altro punto sopra esposto.

Questi sono solo una parte dei tanti modi di aiutare un progetto libero senza essere necessariamente programmatori, e sono tutti altrettanto importanti. Non sottovalutate nessuno dei punti che ho illustrato, ma anzi cercate di trovare altre e altre soluzioni per aiutare un progetto anche senza saper programmare.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s