Il mondo della programmazione è pieno di termini strani. Ci sono i backend, i tag, i framework e molto altro. Tuttavia, anche se alcune parole e frasi possono sembrare strane fino a quando non ci si abitua, di solito non sono offensive.
Ci sono alcune rare eccezioni, tuttavia, come l’uso frequente di master e slave. È quasi superfluo dire che queste sono due parole potenzialmente problematiche, a causa delle loro connotazioni storiche. Tuttavia, sono ancora ampiamente utilizzate nei circoli degli sviluppatori e diversi linguaggi di programmazione. Infatti, il loro uso è così radicato che la maggior parte delle persone non si è mai fermata a riflettere sui termini.
Oggi parleremo più approfonditamente di questi due termini di programmazione problematici. Discuteremo la controversia sul loro utilizzo, introdurremo il dibattito sulla possibilità di sostituirli e spiegheremo cosa stanno facendo alcune squadre open-source per affrontare il problema. Parliamo di terminologia!
L’Esistenza di Termini di Codifica Problematici nella Codifica Open-Source
Come abbiamo accennato in precedenza, c’è molta controversia riguardo all’uso dei termini master e slave nella comunità open-source. Solitamente, questi termini si riferiscono a un modello di comunicazione in cui un elemento ha il pieno controllo su un secondo.
Per esempio, puoi avere database master e slave, con il master come primario.
Se non fai parte della comunità tecnologica, questo potrebbe sembrare un po’ strano. Conosciamo tutti il significato di entrambe le parole, così come il loro contesto storico. Tuttavia, questi termini sono in uso da tempo e la maggior parte delle persone che li utilizzano non li mette mai in discussione o non ci pensa affatto.
Allo stesso tempo, già da un po’ di tempo alcune persone hanno sottolineato che il loro uso potrebbe essere problematico. Possiamo trovare riferimenti già dal 2004 alla controversia su questo problema. Durante quell’anno, l’Iniziativa Global Language Monitor ha selezionato l’accoppiamento master/slave come l’esempio più clamoroso di terminologia politicamente scorretta. Da allora, si è discusso molto nei progetti open-source sulla possibilità di sostituire entrambe le parole. Tuttavia, sono stati fatti molti argomenti interessanti al riguardo
Ad essere onesti, tutta questa faccenda potrebbe sembrare esagerata se non hai trascorso l’ultimo decennio, il che è degno di considerazione.
Perché C’è Una Controversia Sui Termini Master e Slave
Quando i termini master e slave vengono utilizzati nella comunità open-source, non si riferiscono a persone. Se fosse così, potremmo concludere rapidamente questa discussione, dato che quasi tutti concorderebbero sulla necessità di trovare terminologia meno offensiva.
Invece, questi termini sono utilizzati per riferirsi a elementi come database, dischi e altro ancora. Questo ci porta alle ragioni per cui alcune persone sono contrarie alla sostituzione dei termini master e slave, che possiamo riassumere in un paio di punti:
- Entrambi i termini sono in uso da tempo, quindi non ha senso sostituirli.
- Nel mondo tecnologico, le parole non vengono utilizzate in un contesto offensivo.
Per alcune persone, master e slave sono solo parole, e l’idea che dovremmo scoraggiarne l’uso nella programmazione sembra una perdita di tempo. Da un punto di vista pratico, è difficile contestare questi punti di vista. Tuttavia, se siamo pratici, vale anche la pena sottolineare che sostituire questi termini non influenzerebbe i progetti in termini di funzionalità.
Inoltre, l’argomento secondo cui dovremmo continuare a usare le stesse parole perché lo abbiamo sempre fatto non è particolarmente persuasivo. Come società, è diventato normale per noi scoraggiare l’uso di terminologia offensiva, anche se tale cambiamento richiede tempo. Sarebbe semplice scegliere parole sostitutive meno cariche e iniziare a usarle al loro posto.
Questo ci porta al cuore del dibattito, ovvero se una parola di per sé possa essere offensiva a prescindere dal contesto. Alcune persone potrebbero sostenere che cambiare i termini master e slave stabilisca un cattivo precedente poiché ci saranno sempre parole che altri trovano offensive. Mettendo da parte i dibattiti sulla pendenza scivolosa, però, è difficile contestare il fatto che questi due termini, in particolare, abbiano chiaramente connotazioni negative.
Complessivamente, è importante considerare che, sebbene queste parole potrebbero non influenzarti personalmente, possono avere un grande impatto su altre persone e sul modo in cui pensano. La comunità open-source è costruita attorno alla collaborazione, quindi se possiamo migliorare l’ambiente e renderlo più amichevole per tutti sostituendo un paio di parole, allora potrebbe avere senso farlo.
Come i Progetti Open-Source Scoraggiano l’Uso di Termini di Codifica Problematici
Il dibattito sui termini master e slave esiste da così tanto tempo che diverse aziende hanno già preso provvedimenti al riguardo. IBM e Microsoft, ad esempio, utilizzano le parole primary e replica quando si riferiscono a database all’interno della loro documentazione.
Per quanto riguarda i progetti open-source, Python, Drupal e Django hanno già eliminato completamente i termini dalla loro documentazione. Python ha seguito la stessa strada di Microsoft e IBM, utilizzando primary e replica. Django, invece, ha optato per implementare i termini leader e follower.
Quelli sono solo gli esempi più noti che abbiamo potuto trovare. Ci sono anche molti progetti più piccoli che hanno preso provvedimenti per affrontare la controversia. Inoltre, il fatto che diversi grandi nomi del mondo tecnologico concordino sul considerare seriamente l’uso di questi termini invia un segnale chiaro che probabilmente altri seguiranno.
Alla fine, se sostituire i termini master e slave è una decisione personale per ogni sviluppatore. Se fai parte di un progetto open-source, può essere più difficile raggiungere un consenso. Tuttavia, potrebbe essere meglio che ci muoviamo verso la sostituzione di questi termini all’interno dei circoli di sviluppatori. Dopotutto, l’etica open-source è quella dell’accessibilità per tutti, che è difficile da ottenere quando i termini comunemente usati possono allontanare una parte della potenziale comunità.
Pensi Che I Termini di Programmazione Problematici Dovrebbero Essere Cambiati?
I termini master e slave sono comuni quando si parla di informatica. Per molte persone, queste parole non hanno connotazioni negative, poiché hanno significati molto specifici nel mondo dell’IT. Tuttavia, è impossibile negare il loro peso storico. Con questo in mente, ci saranno sempre persone che trovano l’uso occasionale di entrambi i termini nella programmazione problematico.
Anche se cambiare i termini che usiamo nella programmazione può sembrare scomodo, è sia possibile che relativamente semplice. Il fatto che diversi progetti noti come Python e Drupal stiano agendo per eliminare l’uso di master e slave è già un grande passo. Eliminare questi termini non è solo una buona mossa di PR, ma rende anche la comunità più amichevole verso coloro che potrebbero trovarli personalmente offensivi.
Pensi che sia sensato sostituire termini problematici nella terminologia dello sviluppo software? Condividi le tue opinioni con noi su Facebook o Twitter.

