⑂ Open source

Codice di condotta in un progetto open source: scriverlo e applicarlo

A cosa serve un codice di condotta, cosa deve contenere, chi riceve le segnalazioni e come gestirle con equità: guida pratica per manutentori e comunità.

Un progetto open source è fatto di codice, ma vive di persone che si scrivono in pubblico, spesso senza conoscersi, da paesi e culture diverse, a volte sotto pressione. In questo contesto le incomprensioni sono inevitabili e i comportamenti ostili, quando ci sono, allontanano proprio i contributori più preziosi. Il codice di condotta è lo strumento con cui una comunità dichiara cosa si aspetta e, soprattutto, cosa succede quando le aspettative non vengono rispettate.

A cosa serve davvero

Un codice di condotta non rende automaticamente gentili le persone. Il suo valore è pratico:

  • rende esplicite le regole: chi arriva sa cosa è accettabile senza doverlo indovinare;
  • dà un canale di segnalazione: chi subisce un comportamento scorretto sa a chi rivolgersi;
  • protegge i moderatori: quando devono intervenire, si basano su regole note e non su giudizi personali;
  • segnala attenzione: molte persone valutano se contribuire anche in base alla presenza di regole chiare.

Il punto debole più comune non è il testo, ma l'assenza di un meccanismo di applicazione. Un codice senza un indirizzo di contatto e senza persone incaricate è solo una dichiarazione di intenti.

Cosa deve contenere

Molti progetti adottano un modello esistente e diffuso, come il Contributor Covenant, adattandolo. Che si parta da un modello o da zero, un codice efficace copre almeno questi punti:

  1. Ambito: dove si applica (issue, pull request, chat, liste, eventi, profili che rappresentano il progetto).
  2. Comportamenti attesi: rispetto, critiche rivolte alle idee e non alle persone, disponibilità ad accettare feedback.
  3. Comportamenti inaccettabili: insulti, molestie, attacchi personali, diffusione di informazioni private altrui, linguaggio discriminatorio.
  4. Come segnalare: un indirizzo email o un modulo, con l'indicazione di chi lo riceve.
  5. Riservatezza: garanzia che l'identità di chi segnala sarà protetta.
  6. Conseguenze: una scala di provvedimenti proporzionati.
  7. Conflitti di interesse: cosa succede se la segnalazione riguarda un moderatore.

La scala dei provvedimenti

Avere una scala definita in anticipo evita reazioni sproporzionate o, al contrario, inerzia. Una struttura comune:

Livello Esempio di comportamento Provvedimento tipico
Correzione Commento sgarbato isolato Richiamo privato e richiesta di modificare il tono
Avvertimento Comportamento ripetuto dopo un richiamo Avviso formale con conseguenze esplicite
Sospensione temporanea Violazione seria o persistente Esclusione per un periodo definito
Esclusione permanente Molestie, minacce, violazioni gravi Rimozione da tutti gli spazi del progetto

Non è obbligatorio passare da tutti i livelli: un comportamento grave può giustificare subito l'esclusione.

Gestire una segnalazione

Quando arriva una segnalazione, un processo ordinato riduce errori e tensioni:

  1. Conferma di ricezione a chi segnala, entro tempi brevi.
  2. Raccolta dei fatti: link ai messaggi, contesto, eventuali testimoni. Conviene salvare copie, perché i messaggi possono essere modificati o cancellati.
  3. Esclusione dei conflitti: chi è coinvolto o vicino alle parti non partecipa alla decisione.
  4. Ascolto della persona segnalata, quando non mette a rischio chi ha segnalato.
  5. Decisione documentata, con riferimento alla regola violata.
  6. Comunicazione alle parti, in privato, con il minimo di dettagli necessari.

Le decisioni non si discutono in pubblico nei thread del progetto. Se serve una comunicazione alla comunità, basta indicare che un provvedimento è stato preso, senza esporre le persone.

Chi deve fare il moderatore

Nei progetti piccoli i moderatori sono spesso gli stessi manutentori. Funziona, ma conviene che siano almeno due, in modo che una segnalazione su uno dei due possa essere gestita dall'altro. Nei progetti sotto una fondazione può esistere un comitato centrale che interviene nei casi più delicati.

Fare moderazione è faticoso e poco visibile. Va riconosciuto come contributo al pari del codice, e chi lo svolge deve poter fare un passo indietro senza sentirsi in colpa.

Errori da evitare

  • Pubblicare il codice senza contatto: nessuno saprà come usarlo.
  • Applicarlo solo agli sconosciuti: le regole valgono anche per i contributori storici e per i manutentori.
  • Reagire in pubblico a caldo: alimenta il conflitto e rende difficile una decisione serena.
  • Ignorare le segnalazioni: il silenzio comunica che il codice è decorativo.

In sintesi

  • Il codice di condotta rende esplicite le regole e offre un canale per le segnalazioni.
  • Deve indicare ambito, comportamenti, contatto, riservatezza e conseguenze proporzionate.
  • Le segnalazioni vanno gestite con un processo ordinato, documentato e riservato.
  • Servono almeno due moderatori e regole che valgano per tutti, manutentori compresi.
MM
Marco Marzaduri

Marco Marzaduri si occupa di cybersecurity, informatica forense e sviluppo web. Laureato in informatica, unisce il rigore dell'analisi tecnica all'attenzione per le persone che usano la tecnologia.

Leggi anche