Come la programmazione è diventata uno strumento politico

FYI.

This story is over 5 years old.

Tecnologia

Come la programmazione è diventata uno strumento politico

Anche se i linguaggi di programmazione sembrano apolitici, sotto sotto non lo sono.

Ricordate TrumpScript, il linguaggio di programmazione satirico basato su Python che serviva per prendere in giro l'omonimo candidato alla Presidenza degli Stati Uniti? Non credo verrà utilizzato molto per scrivere programmi, ma le sue particolarità — incluso lo slogan "Rendere di nuovo grande il Python" e l'impossibilità di farlo funzionare su computer localizzati in Cina e Messico — ha colpito tutti coloro che sono soliti a rimanere allibiti dalle frasi usate da Donald Trump durante la sua campagna elettorale. Da quando la programmazione è diventata un mezzo politico?

Pubblicità

TrumpScript fa parte di un fenomeno più ampio in cui i linguaggi di programmazione vengono utilizzati per scopi non-informatici.

Prima della pubblicazione di TrumpScript, erano già presenti tutta una serie di linguaggi 'esoterici' — come Arnold C e LOLCODE, per nominarne un paio — che hanno contribuito a creare degli 'inside joke' in questo tipo di subcultura informatica. Allo stesso tempo, e sorprendentemente, molti artisti e informatici hanno cominciato a vedere nei linguaggi di programmazione una forza politica, sfruttando la loro sintassi, grammatica e ortografia per incoraggiare l'impostazione di un discorso politico serio riguardante la società.

4Chan ha creato un linguaggio anti-femminista chiamato C+= (C Plus Equality); il suo codice include funzioni come "CheckPrivilege()" e "yell('RAPE RAPE RAPE RAPE!!!!!')"

Prendiamo قلب, un linguaggio di programmazione scritto interamente in arabo. Creato dall'informatico libanese Ramsey Nasser nel 2013, قلب (traslitterato e pronunciabile come Alb nell'arabo levantino nativo di Nasser), è un'opera d'arte concettuale basata su Scheme, pensata per testare i limiti della natura anglo-centrica dell'informatica. Poiché la grande impennata dell'informatica si è consumata proprio negli Stati Uniti, i principali linguaggi di programmazione — anche quelli sviluppati fuori dagli Stati Uniti e dall'Europa (per esempio, il Ruby e il Lua, nati rispettivamente in Giappone e Brasile) — sono scritti in inglese americano.

Pubblicità

Inoltre, il codice deve interagire con altro codice nella maggior parte delle applicazioni; per questo, costruire qualcosa che possa essere anche solo lontanamente solido in قلب (per capirci, qualcosa di più di un semplice gioco o di graficamente basico) sarebbe impossibile. Il قلب, quindi, non solo dimostra come apparirebbe un linguaggio di programmazione non inglese, ma anche quanto il mondo dell'informatica è distante dal resto del mondo.

Benché scoraggiato dal confino linguistico a cui è costretto dall'informatica, Nasser, ora residente a New York, mi ha detto che gli basta l'idea di essere riuscito far partire un dibattito. "Mi è capitato di essere contattato online da alcuni programmatori e sentirmi dire, "Non ci avevo mai pensato. Non avevo mai pensato al fatto che tutti i più importanti linguaggi di programmazione sono scritti in inglese americano.' Questo è il tipo di discussione che è necessario fare."

Domande simili sono state sollevate dal punto di vista della sessualità. In un progetto di master del 2008 dell'UCLA chiamato Queer Technologies, l'artista digital Zach Bias ha sviluppato transCoder, un "anti-linguaggio di programmazione queer" fortemente concettuale, sotto forma di file di testo impacchettati. Per creare il framework di transCoder, Bias si è fatto aiutare dallo slang e dal linguaggio in codice hanky — sistemi criptici grazie ai quali gli uomini gay e bisessuali indossavano dei fazzoletti colorati per indicare i loro interessi sessuali — delle comunità LGBT negli anni '60 e '70, che sfruttavano dei linguaggi inventati per sovvertire la cultura mainstream. (Per esempio, il Polari include parole come 'bona', che significa 'buono,' e 'zhoosh,' che significa 'vestirsi.')

Pubblicità

Nel pieno dello spirito del lessico di programmazione, transCoder impiega strutture e funzioni immaginarie per mettere alla prova la logica binaria del software (fatta di uno e zero), come critica generale dell'interpretazione binaria dell'identità sessuale umana (uomini contro donne, eterosessuali contro omosessuali). Per esempio, lanciare la funzione matrimoniale "iDo" fa sì che il computer si autodistrugga, mentre "metametazoan" cancella tutto il linguaggio "che rappresenta i generi in modo binario" e "aggiusta tutto nel programma in modo equo." Per scoprire come la cultura queer avrebbe potuto interagire con piattaforme software, mi ha detto Blas, era necessario usare una base logica alternativa—per rifiutare la programmazione nella sua forma attuale e re-immaginarla daccapo.

Nella sua spiegazione, Blas ha parafrasato la teorica dei new-media Wendy Hui Kyong Chun: Non c'è mai una soluzione puramente tecnologica a un problema politico. "Per come lo interpreto io, quel commento dice che devo rompere qualcosa," ha detto. "Se non può esserci una soluzione puramente tecnologica ad un problema politico, forse quello che si deve fare è rompere la tecnologia, o usarla in modo non-funzionale e cercare di reindirizzarla per arrivare a una soluzione politica."

L'idea di smantellare la logica implicita di un programma ha suscitato anche interessi di stampo femminista. Nel 2013, la dottoranda alla Georgia Tech Ari Schlesinger ha proposto un linguaggio di programmazione eseguibile costruito su ideologie femministe. Il punto del suo discorso, che aveva originariamente accennato in un post sul suo blog era: storicamente, i linguaggi di programmazione si sono basati su strutture di comando. L'ingegneria software prevede un agente (il programmatore) che dà comandi, e un altro (il computer) che li riceve e che, a meno che non ci sia un errore, ubbidisce.

Per rendere un linguaggio di programmazione femminista, mi ha detto, bisognerebbe passare a una struttura collaborativa. Schlesinger sostiene che progetti come il Distributed Open Collaborative Course (DOCC), che puntano ad offrire un'alternativa—fatta di piccole classi improntate alla discussione—ai Massive Open Online Courses (offerti in genere da colossi come Coursera o Udacity), e la piattaforma anti-molestia Heartmod, hanno iniziato a trasformare questo concetto in una possibilità concreta. Ugualmente, non parliamo di un progetto poco ambizioso, e Schlesinger sa di avere davanti anni di sfide. "Per un progetto del genere," ha detto, "devi affrontare il lato teorico prima di iniziare la parte di sviluppo, e la teoria può metterci davvero tanto a prendere forma."

Come si fa a rendere femminista un linguaggio di programmazione?

Come praticamente chiunque sia a favore di un cambiamento istituzionale, Nasser, Blas e Schlesinger hanno affrontato non pochi ostacoli. Nasser riceve costantemente mail da programmatori che parlano arabo e che non vedono l'ora di poter programmare senza dover imparare l'inglese; ogni volta, deve spiegare loro che questa cosa non è possibile. A sua volta, Blas ha dovuto lavorare per mesi per sistemare il suo sito, che si è riempito di pubblicità farmaceutiche e commenti omofobi lasciati da hacker che volevano "sfregiare" il suo lavoro (alludendo al progetto su cui Blas ha lavorato nel 2013, intitolato Facial Waponization Suite, una critica queer e femminista alla tecnologia di riconoscimento facciale biometrico). E, in risposta al blog post di Schlesinger, 4Chan ha creato un linguaggio anti-femminista sarcastico chiamato C+= (C Plus Equality); questo codice include funzioni come "CheckPrivilege()" e righe come "Toward the destruction of the techbro" e "yell('RAPE RAPE RAPE RAPE!!!!!')."

Nonostante gli ostacoli che devono affrontare, questi progetti dimostrano una verità fondamentale: anche se può sembrare che la programmazione esuli da una sfera politica, nei fatti non è assolutamente vero. "Solo perché certe forme sono tecniche, non significa che non abbiano un'influenza sociale o politica. L'informatica non può vantare un'obiettività pura, come se fosse ferma in un vacuum. L'obiettività è condizionata da chi siamo e da dove ci troviamo e da dove vogliamo portare le cose," ha detto Blas. Nasser era d'accordo. "Stiamo cominciando a mettere in dubbio il fatto che la programmazione possa essere definita un medium universale, non speravo altro."