devol

metadati

Istant message


Non ho mai usato WhatsApp e mai lo farò. Nonostante ciò, sento comunque il bisogno di scrivere un articolo a proposito, dato che è perfetto da studiare per capire una classe di modelli di business che io nomino “addomesticamento degli utenti”. L'addomesticamento degli utenti è in cima alla mia lista di problemi che affligono la razza umana e merita una spiegazione dettagliata.

WhatsApp non è stato il primo servizio di messaggistica istantanea del suo genere e probabilmente non sarà l'ultimo. Ho scelto di concentrarmi su #WhatsApp semplicemente perché i suoi recenti problemi relativi alla privacy lo hanno reso un tema caldo.

Tolta di mezzo la meta-spiegazione, iniziamo.

L'ascesa di WhatsApp

Per chi non lo conoscesse, WhatsApp è uno strumento che rende facile e comodo aiutare #Facebook a portare avanti la sua missione principale: ottimizzare e vendere all'asta il comportamento umano (conosciuto comunemente come “pubblicità mirata”). Inizialmente ha convinto le persone ad acconsentire a ciò permettendo loro di scambiarsi messaggi di testo su Internet, cosa che era già possibile fare, e combinando un'interfaccia utente facile da apprendere con un marketing di successo. Si è poi esteso a funzioni come le chiamate audio e video gratuite. Le audiochiamate l'hanno aiutato a crescere fino a diventare la piattaforma di comunicazione de facto in molte regioni. Sono sbalordito dalla sua ubiquità ogni volta che visito la mia famiglia: vengo spesso accolto da sguardi quando ricordo loro che non uso WhatsApp.

Avere un sistema di comunicazione proprietario incompatibile con altri client ha permesso a WhatsApp di creare un effetto di rete: chi era già utente di WhatsApp è stato tenuto prigioniero dal fatto che lasciare WhatsApp avrebbe significato perdere la possibilità di comunicare con altri utenti di WhatsApp. Coloro che se ne vanno da WhatsApp devono convincere anche tutti i loro amici ad andarsene, inclusi quelli meno propensi alla tecnologia che all'inizio hanno fatto fatica ad imparare a usarlo.

Nel mondo di WhatsApp, le persone che vogliono tenersi in contatto devono rispettare le seguenti regole:

  • Tutti possono utilizzare solo il client proprietario di WhatsApp per inviare messaggi; lo sviluppo di client alternativi non è supportato.
  • Il loro dispositivo mobile deve eseguire un sistema operativo supportato da detto client. Siccome gli sviluppatori di WhatsApp scrivono un client solo per i sistemi operativi più popolari, il duopolio di #Android e #iOS si rafforza.
  • Gli utenti dipendono completamente dagli sviluppatori di WhatsApp. Se questi decidono di includere nell'app delle funzionalità ostili nei confronti degli utenti, gli utenti devono farsene una ragione. Non possono passare a un client o a un server diverso senza abbandonare WhatsApp e perdere la capacità di comunicare con tutti i loro contatti di WhatsApp.

L'addomesticamento dell'utente

WhatsApp è ascesa intrappolando esseri precedentemente liberi nel loro recinto e cambiando le loro abitudini per renderli dipendenti dai loro padroni. Col passare del tempo, ciò ha reso difficile o impossibile tornare al loro stile di vita precedente. Questo processo dovrebbe risultare familiare: è stranamente simile all'#addomesticamento degli animali. Questo tipo di dipendenza da un fornitore la chiamo addomesticamento degll'utente: la rimozione dell'autonomia dell'utente per intrappolarlo nel servire il suo fornitore.

Ho scelto questa metafora perché l'addomesticamento degli animali è un processo graduale che non è sempre deliberato, e in genere ruota attorno a un gruppo che diventa dipendente da un altro. Ad esempio, ci sono prove che l'addomesticamento dei cani sia iniziato con la socializzazione, con una conseguente selezione non del tutto artificiale che ha promosso i geni che hanno portato a una maggiore affidabilità e dipendenza dall'uomo.[^1]

Che avvenga di proposito o accidentalmente, l'addomesticamento degli utenti segue quasi sempre gli stessi tre passaggi:

  1. Un alto livello di dipendenza dato dagli utenti al fornitore di un software.
  2. L'incapacità degli utenti di controllare il proprio software, attraverso almeno uno dei seguenti metodi:
    1. Prevenzione della modifica del software.
    2. Prevenzione della migrazione su una piattaforma diversa.
  3. Lo sfruttamento degli utenti ormai prigionieri che non possono resistere.

Il completamento dei primi due passaggi ha reso gli utenti di WhatsApp vulnerabili all'addomesticamento. Dovendo rispondere a degli investitori, avevano tutti gli incentivi per implementare funzioni ostili agli utenti senza subire conseguenze.

Per cui, ovviamente, l'hanno fatto.

La discesa di WhatsApp

L'addomesticamento ha uno scopo: consente a una specie padrona di sfruttare la specie addomesticata per il proprio tornaconto.

WhatsApp ha aggiornato di recente la sua informativa sulla privacy per consentire la condivisione dei dati con la sua società madre, Facebook. Gli utenti che hanno accettato di utilizzarlo con la precedente informativa hanno avuto due opzioni: accettare la nuova informativa o non essere più in grado di utilizzare WhatsApp. L'aggiornamento dell'informativa sulla privacy è il classico specchietto per le allodole: WhatsApp ha attirato gli utenti con un'interfaccia elegante e l'impressione di rispettare la loro privacy, li ha addomesticati per rimuovere la loro autonomia a migrare, poi ha fatto marcia indietro sul suo impegno di tutelare la privacy con conseguenze minime. Ogni passaggio di questo processo ha abilitato il successivo; se gli utenti non fossero addomesticati, sarebbe facile per la maggior parte di loro andarsene con il minimo attrito.

Quelli di noi che stavano suonando l'allarme qualche anno fa hanno vissuto un breve momento di sadica felicità quando i nostri titoli sono stati promossi da “complottisti fastidiosi e paranoici” a solo “fastidiosi”.

Un tentativo di arginamento dei danni

Lo specchietto per le allodole ha provocato una reazione avversa abbastanza significativa da consentire la migrazione di una notevole minoranza di utenti. Questo numero si è rivelato leggermente superiore all'errore inerente stimato da WhatsApp, che, in risposta, ha ritardato la modifica e ha pubblicato questo annuncio:

Elenca vari dati che WhatsApp non raccoglie o condivide. Acquietare le preoccupazioni sulla raccolta dei dati con un elenco di dati non raccolti è fuorviante. WhatsApp non raccoglie nemmeno campioni dei capelli o scansioni della retina. Non raccogliere quelle informazioni non significa che rispetti la #privacy, perché non cambia quali sono quelle che invece raccoglie.

Qui nega di mantenere le registrazioni di chi le persone stiano chiamando o con chi stiano messaggiando (“WhatsApp does not keep logs of who everyone is messaging or calling”). La raccolta dei dati non è la stessa cosa di “mantenere le registrazioni”. È possibile che i metadati vengano dati in pasto a un algoritmo prima di essere scartati. Un modello può quindi imparare che due utenti si chiamano frequentemente senza mantenere le registrazioni dei #metadati di ogni chiamata. L'aver scelto specificatamente di formulare questa frase intorno alla registrazione implica che WhatsApp raccoglie già questa classe di dati o ha deliberatamente lasciato la porta aperta per farlo in futuro.

Facendo un giro sulla [vera informativa sulla privacy]() [? quale mettiamo? https://web.archive.org/web/20210124064540/https://www.whatsapp.com/legal/updates/privacy-policy/?lang=it o questa https://web.archive.org/web/20210115133954/https://www.whatsapp.com/legal/updates/privacy-policy-eea/?lang=it perché l'originale fa riferimento alla prima, ma noi siamo nella zona europea] del tempo vediamo che raccolgono dei metadati significativi usati per il marketing tramite Facebook.

Software libero

Con l'addomesticamento degli utenti, fornire loro un #software utile è un mezzo per il fine di sfruttarli. L'alternativa è semplice: servire gli utenti è il fine di per sé.

Per evitare di essere controllati dal software, gli utenti devono avere il controllo. Questo tipo di software viene chiamato software libero (libre software) o free software. “Free” in questo contesto si riferisce alla libertà invece che al prezzo. Il #softwarelibero è simile al software open source: quest'ultimo è nato dal primo ed è incentrato più sui benefici pratici per le aziende che sull'#etica. Un termine meno ambiguo che si riferisce neutralmente a un software libero e open source è FLOSS (free, libre, and open source software, software libero e open source).[^2]

Altri hanno spiegato i concetti fondamentali alla base del software libero e la sua importanza meglio di quanto possa fare io, per cui non entrerò nei dettagli. In sostanza, ci sono quattro libertà essenziali:

  • La libertà di eseguire il programma come si desidera, per qualsiasi scopo.
  • La libertà di studiare come funziona il programma e di modificarlo in modo da adattarlo alle proprie necessità.
  • La libertà di ridistribuire copie in modo da aiutare gli altri.
  • La libertà di migliorare il programma e distribuirne pubblicamente i miglioramenti da voi apportati.

Guadagnare con il FLOSS

L'obiezione più comune che sento è che è più difficile guadagnare con il #FLOSS.

La chiave per fare soldi con il FLOSS è rendere il software un complemento mercificato di altri servizi più redditizi. Alcuni esempi di tali servizi sono la vendita del supporto, personalizzazione, consulenza, formazione, hosting dedicato, hardware e certificazioni. Molte aziende adottano questo approccio al posto di realizzare software proprietario: Red Hat, Collabora, System76, Purism, Canonical, SUSE, Hashicorp, Databricks e Gradle sono alcuni nomi che mi vengono in mente.

L'hosting dedicato non è un paniere in cui vale la pena mettere tutte le uova, se giganti come AWS possono fare lo stesso a un prezzo più basso. Essere lo sviluppatore può fornire un vantaggio in aree come la personalizzazione, il supporto e la formazione. Non è così ovvio invece quando si tratta dell'hosting.

Il FLOSS non sempre è abbastanza

Il software libero è necessario ma a volte non sufficiente per sviluppare l'immunità all'addomesticamento. Altre due misure sono la semplicità e le piattaforme aperte.

Semplicità

Quando un software diventa troppo complesso, deve essere mantenuto da un grande team. Gli utenti che non sono d'accordo con un fornitore non possono possono semplicemente biforcare e mantenere un progetto di milioni di righe di codice, sopratutto se il software in questione contiene potenziali vulnerabilità nella sicurezza. La dipendenza dal fornitore può diventare problematica quando la complessità fa salire alle stelle i costi di sviluppo: il fornitore potrebbe ricorrere all'implementazione di funzioni ostili agli utenti per rimanere a galla.

Un software complesso che non può essere sviluppato da un gruppo diverso di persone crea dipendenza, il primo passo per l'addomesticamento degli utenti. Da solo è abbastanza per aprire la porta a sviluppi problematici.

Studio di un caso: Mozilla e il web

Mozilla è stata un barlume di speranza durante le guerre dei browser, uno spazio dominato dalle tecnologie pubblicitarie, la sorveglianza e la dipendenza dai fornitori. Sfortunatamente, sviluppare un motore di un #browser è un'impresa monumentale tanto difficile da spingere Microsoft e Opera a rinunciare e a cambiare il volto a #Chromium. I browser sono ben più dei lettori di documenti per cui erano stati pensati: si sono evoluti in runtime applicativi con le proprie pile per l'accelerazione via GPU, Bluetooth, permessi, enumerazione dei dispositivi, codec multimediali integrati, gestione dei diritti digitali (digital rights management, DRM),[^3] API per le estensioni, strumenti per gli sviluppatori... l'elenco continua. Servono miliardi di dollari ogni anno per rispondere alle vulnerabilità su una superficie d'attacco così massiccia e tenersi al passo con uno standard che cresce a un tasso così preoccupante. Quei miliardi devono venire da qualche parte.

#Mozilla ha finito per dover fare grandi compromessi per restare a galla. Ha stretto accordi di ricerca con aziende palesemente ostili agli utenti e ha inserito nel browser pubblicità e bloatware come il software as a service (SaaS) proprietario chiamato Pocket, parzialmente finanziato dalle pubblicità. Da quando ha acquistato Pocket (per diversificare le sue fonti di reddito), Mozilla non ha ancora rispettato la sua precedente dichiarazione di voler rendere pubblico il suo codice: sebbene il codice dei client sia stato pubblicato, quello dei server resta proprietario. Farlo, riscrivendone delle parti se necessario, sarebbe comprensibilmente un'impresa difficile, dovuta in parte alla complessità di Pocket.

Biforcazioni sostanziali come Pale Moon non sono in grado di tenere il passo con la crescente complessità degli standard del web moderno come Web Components. Infatti, #PaleMoon recentemente ha dovuto migrare il suo codice via da GitHub, poiché GitHub ha iniziato a utilizzare gli Web Components, un insieme di funzionalità troppo complesso da supportare per loro. È quasi impossibile scrivere un nuovo browser da zero e mettersi in pari con i colossi che [...?] da decenni. Gli utenti possono scegliere tra un motore di un browser sviluppato da Mozilla, da un'azienda pubblicitaria (#Blink di #Google) o da un fornitore di giardini recintati (#WebKit di #Apple). WebKit non sembra male, ma i suoi utenti rimarrebbero indifesi se Apple decidesse di fare marcia indietro.

Per riassumere: la complessità del web ha costretto Mozilla, l'unico sviluppatore di un motore di un browser che afferma di servire “le persone, non il profitto”, a implementare funzionalità ostili ai suoi utenti nel suo browser. La complessità del web ha lasciato agli utenti una scelta limitata tra tre grandi attori con conflitti d'interesse le cui posizioni si consolidano sempre di più nel tempo.

Per la cronaca, non credo che Mozilla sia una cattiva organizzazione. Piuttosto, credo sia sorprendente che riescano a fare così tanto senza ulteriori compromessi, in un sistema che quasi li richiede. Il loro prodotto principale è ancora FLOSS, e alcune versioni di terzi con modifiche molto leggere ne rimuovono le funzionalità ostili.

Piattaforme aperte

Per evitare che un effetto di rete si trasformi in dipendenza da un fornitore, il software che incoraggia naturalmente un effetto di rete deve essere parte di una piattaforma aperta. Nel caso dei software di comunicazione/messaggistica, dovrebbe essere possibile sviluppare client e server alternativi compatibili tra loro, per impedire il completamento dei primi due passaggi dell'addomesticamento degli utenti.

Studio di un caso: Signal

Da quando un certo venditore di auto ha twittatoUse Signal” (“Usate Signal”), un gran numero di utenti vi è ubbidientemente passata. Al momento della stesura, il client e il server di #Signal sono FLOSS e utilizzano una delle migliori #E2EE in circolazione. Nonostante ciò, non ne sono un fan.

Sebbene il client e il server siano FLOSS, Signal è ancora una piattaforma chiusa. Il cofondatore di Signal, Moxie Marlinspike, è piuttosto critico nei confronti delle piattaforme aperte e federate, e ha descritto le sue motivazioni per mantenere Signal chiuso in un post sul suo blog.[^4] Ciò significa che non esiste un modo sostenuto da Signal per sviluppare un server alternativo supportato dai suoi client, né un client alternativo che ne supporti i server. Il primo passo verso l'addomesticamento degli utenti è quasi terminato.

Oltre all'esistenza di una sola implementazione di client e server, esiste un solo fornitore dei server di Signal: Signal Messenger LLC. La dipendenza degli utenti da questo fornitore di server centrali si è ritorta loro contro quando la recente crescita di Signal ha causato un'inattività durata oltre un giorno, rendendo così ognuno incapace di inviare messaggi finché il singolo fornitore non ha risolto il problema.

Alcune persone hanno provato ugualmente a sviluppare client alternativi: una biforcazione di Signal, LibreSignal, ha tentato di farla funzionare su versioni di Android rispettose della privacy senza i Google Play Services proprietari. Questo progetto ha chiuso dopo che Moxie ha detto chiaramente di non essere d'accordo con l'uso dei server di Signal da parte di terzi. La sua decisione è comprensibile, ma si sarebbe potuta evitare la situazione se Signal non avesse dovuto fare affidamento su un unico fornitore di server.

Se Signal decidesse di aggiornare le sue applicazioni includendo una funzione ostile, gli utenti rimarrebbero indifesi tanto quanto lo sono ora quelli di WhatsApp. Benché non credo che ciò sia plausibile, la chiusura di Signal rende i suoi utenti vulnerabili all'addomesticamento.

Per quanto Signal non mi piaccia, l'ho comunque consigliato ai miei amici non tecnici perché era l'unico servizio di messaggistica abbastanza privato per me e abbastanza semplice per loro. Se avesse avuto una qualsiasi procedura per l'iscrizione (creazione di un account, aggiunta manuale dei contatti, ecc.), uno dei miei amici sarebbe rimasto su Discord o WhatsApp. Se ci fosse la possibilità che arrivi fin qua leggendo l'articolo, direi qualcosa di sfacciato come “sai chi sei”.

Spunti di riflessione

Entrambi i casi studiati precedentemente, Mozilla e Signal, sono esempi di organizzazioni ben intenzionate che lasciano involontariamente gli utenti vulnerabili all'addomesticamento. Il primo rappresenta una mancanza di semplicità, ma la presenza di una piattaforma aperta. Il secondo rappresenta una piattaforma chiusa con un maggior grado di semplicità. Lo scopo non è nell'immagine [? Intent isn't in the picture] quando esaminiamo i tre passi e le contromisure all'addomesticamento degli utenti.

@paulsnar@mastodon.technology ha evidenziato un potenziale conflitto tra la semplicità e l'apertura delle piattaforme:

Mi sembra ci sia una certa tensione tra la semplicità e le piattaforme aperte. Prendete Signal, in un certo senso è semplice proprio perché è una piattaforma chiusa de facto, o almeno così ha sostenuto Moxie. A sua volta, Matrix è superficialmente semplice, ma il protocollo in realtà è (secondo me) abbastanza complesso proprio perché è una piattaforma aperta.

Non ho una risposta semplice a questo dilemma. È vero che Matrix è estremamente complesso (rispetto ad alternative come IRC o addirittura XMPP), ed è vero che è più difficile costruire una piattaforma aperta. Detto ciò, è certamente possibile tenere a freno la complessità durante lo sviluppo di una piattaforma aperta: alcuni esempi sono Gemini, IRC e la posta elettronica. Benché gli standard della posta elettronica non siano così semplici come #Gemini e #IRC, si evolvono lentamente: questo permette alle implementazioni di non dover accelerare il ritmo per rimettersi in pari, come invece succede con i browser del web e i client e i server di #Matrix.

Non tutti i software devono fare soldi a palate. La federazione permette a servizi e reti come il fediverso e #XMPP di scalare fino a un gran numero di utenti senza costringere un singolo colosso a vendere la propria anima per pagare il conto. Sebbene i modelli di business che non mirano all'addomesticamento siano meno redditizi, consentono comunque lo sviluppo delle stesse tecnologie nate dagli altri modelli. Tutto ciò che manca è un budget pubblicitario: le più grandi pubblicità che alcuni di questi progetti ottengono sono lunghi e gratuiti post sui blog.

Forse non abbiamo bisogno di inseguire la crescita e cercare di “sfondare”. Forse possiamo fermarci dopo aver raggiunto la sostenibilità e la sicurezza finanziaria, e consentire alle persone di fare di più con meno.

Note di chiusura

Prima che diventasse una sorta di manifesto, questo post avrebbe dovuto essere essere una versione ampliata di un commento che ho lasciato sotto un post sul fediverso di Binyamin Green.

Inizialmente ho deciso di espanderlo alla sua forma attuale per ragioni personali. Al giorno d'oggi, le persone richiedono una spiegazione approfondita ogni volta che mi rifiuto di usare qualcosa che usano “tutti” (WhatsApp, Microsoft Office, Windows, macOS, Google Documenti...). Di solito la ignorano, ma se ne aspettano comunque una. La prossima volta che li incontrerò, avranno dimenticato la nostra conversazione precedente e la ripeteranno. Giustificare tutte le mie scelte di vita mandando affermazioni logicamente corrette nel vuoto – sapendo che tutto ciò che dirò verrà ignorato – è un processo emotivamente stancante che ha avuto un impatto sulla mia salute mentale negli ultimi anni. Mandare questo articolo ai miei amici e cambiare argomento dovrebbe salvarmi qualche capello grigio negli anni a venire.

Questo articolo è libero. Per ricevere gli articoli del blog appena usciranno, clicca qui e scriviti alla newsletter dei devol

Questo articolo estende le filosofie guida dei movimenti del software libero e del #copyleft. Ringrazio Barna Zsombor per avermi fornito un buon riscontro su IRC.

Poiché le parole non erano abbastanza, ho scritto un seguito, Teniamo aperte le piattaforme. Dateci un'occhiata se avete trovato interessante questo articolo.

Articolo originale: Rohan Kumar, WhatsApp and the domestication of users, su seirdy.one, 27 gennaio 2021.

Riferimenti e note

[^1]: Raymond Pierotti e Brandy R. Fogg, The First Domestication: How Wolves and Humans Coevolved, Yale University Press, 2017, su yalebooks.yale.edu.

[^2]: Molti nel movimento del free software non amano il termine “open source” per diverse ragioni. Altri utilizzano “free” e “open sourceinterscambiabilmente. Infine, molti venditori usano “free” per riferirsi al prezzo invece che alla libertà, e ciò ha spronato diversi sostenitori del free software ad adottare il termine libre (“libero”). Tutto ciò può sembrare abbastanza confusionario, per questo preferisco acronimi come FLOSS per descrivere l'intersezione di questi termini.

[^3]: Vedete Defective by Design. La DRM è un altro classico esempio di addomesticamento degli utenti. Per la cronaca, Mozilla si è opposta a rendere la DRM uno standard del web. Ne ha implementato il supporto solo dopo aver perso contro gli altri membri del World Wide Web Consortium (W3C). Non la scusa per averla inserita in un browser, ma almeno non c'era un intento malevolo. Lo stesso non si può dire per per i membri pro DRM del W3C.

[^4]: Il post di Moxie ha suscitato molte reazioni. Due approfondimenti validi sono su Linux Weekly News e un post sul blog di Matrix.org.