← Torna al blog

Zero telemetria: perché non tracciamo i nostri utenti

privacy philosophy

La scomoda verita sugli strumenti per sviluppatori e la raccolta dati

Aprite l'informativa sulla privacy di quasi qualsiasi strumento per sviluppatori che usate, e troverete una sezione sulla raccolta dati. Analisi di utilizzo, report di crash, tracciamento delle funzionalita, durata delle sessioni, profili hardware -- la lista continua. La maggior parte delle aziende presenta tutto cio come una necessita: hanno bisogno di dati per migliorare il loro prodotto, dare priorita alle funzionalita e correggere i bug. E ad essere onesti, questo ragionamento non e del tutto sbagliato. Le decisioni di prodotto basate sui dati sono un approccio legittimo per costruire software migliore.

Ma c'e una domanda che viene posta raramente: a quale costo?

Perche la maggior parte degli strumenti per sviluppatori raccoglie dati analitici

La giustificazione standard per la telemetry negli strumenti per sviluppatori rientra in alcune categorie:

  • Decisioni di prodotto. Quali funzionalita sono le piu utilizzate? Quali vengono ignorate? Le analisi aiutano i team di prodotto a stabilire le priorita su cosa costruire dopo e cosa dismettere.
  • Report di crash. Quando qualcosa si rompe, la segnalazione automatica dei crash aiuta gli sviluppatori a identificare e risolvere i problemi piu rapidamente, a volte prima ancora che gli utenti li segnalino.
  • Monitoraggio delle prestazioni. Quanto tempo impiega una determinata operazione su hardware diverso? Dove sono i colli di bottiglia? La telemetry fornisce dati di prestazione reali che i benchmark sintetici non possono replicare.
  • Metriche di business. Tassi di fidelizzazione, funnel di attivazione, previsione dell'abbandono -- queste metriche guidano le decisioni aziendali, specialmente per le aziende finanziate da venture capital sotto pressione per mostrare crescita.

Niente di tutto cio e intrinsecamente malevolo. Ma l'effetto cumulativo e che il vostro ambiente di sviluppo diventa una fonte di dati comportamentali. Ogni commit, ogni cambio di branch, ogni conflitto di merge, ogni file che aprite -- tutto e potenzialmente osservabile. Per uno strumento che si trova al centro del vostro flusso di lavoro, questa e una quantita significativa di informazioni su come lavorate, su cosa lavorate e quando.

Perche GitSquid ha scelto un percorso diverso

Quando abbiamo iniziato a sviluppare GitSquid, abbiamo preso una decisione deliberata: zero telemetry. Non "telemetry minima." Non "telemetry anonimizzata." Zero. Non e stato un ripensamento o un argomento di marketing. E stato un principio di progettazione fondamentale, ed ecco perche.

La privacy e una funzionalita

Crediamo che la privacy non sia semplicemente una casella di conformita da spuntare. E una funzionalita su cui gli utenti dovrebbero poter contare. Quando usate GitSquid, l'applicazione funziona interamente sulla vostra macchina. I dati del vostro repository, la vostra cronologia dei commit, le vostre strutture di branch, i vostri pattern di lavoro -- niente di tutto cio lascia il vostro computer. Questa e una garanzia, non un'impostazione che dovete ricordare di attivare.

Gli strumenti per sviluppatori vedono tutto

Un client Git non e uno strumento casuale. Ha accesso all'intera base di codice, ai vostri messaggi di commit (che spesso contengono nomi di progetti, numeri di ticket e contesto su cio a cui state lavorando), ai nomi dei vostri branch e ai vostri pattern di collaborazione. Sa su quali repository lavorate, quanto spesso fate commit e quando siete attivi. Raccogliere telemetry da un client Git significa raccogliere dati profondamente intrecciati con il vostro lavoro professionale e talvolta personale. Non volevamo questa responsabilita, e non pensiamo che dobbiate concederla.

La fiducia dovrebbe essere semplice

Con molti strumenti, la fiducia richiede di leggere informative sulla privacy, verificare le impostazioni di opt-out, sperare che i dati "anonimizzati" siano veramente anonimi e fidarsi che le pratiche di gestione dei dati non cambieranno con la prossima acquisizione o round di finanziamento. Volevamo che la fiducia fosse semplice: GitSquid non raccoglie i vostri dati. Punto. Non c'e nessuna informativa sulla privacy da analizzare, nessuna impostazione da verificare, nessun accordo di elaborazione dati da esaminare.

Cosa significa "zero telemetry" concretamente

Per essere precisi su cio che intendiamo, ecco cosa GitSquid fa e non fa:

Non raccogliamo:

  • Analisi di utilizzo di alcun tipo
  • Report di crash o log degli errori
  • Tracciamento dell'utilizzo delle funzionalita
  • Dati di sessione o pattern di attivita
  • Profilazione hardware o del sistema operativo
  • Metadati o contenuti dei repository

Le uniche richieste di rete effettuate da GitSquid sono:

  • Validazione della licenza. Quando attivate la vostra licenza, GitSquid ne verifica la validita con il nostro server di licenze. Si tratta di un semplice controllo di attivazione, non di un rapporto di utilizzo.
  • Controllo degli aggiornamenti. GitSquid verifica periodicamente se e disponibile una versione piu recente in modo che possiate rimanere aggiornati. Nessun dato sul vostro utilizzo viene trasmesso durante questo controllo.

Questa e la lista completa. Nessun endpoint analitico, nessun caricamento di dati in background, nessun rapporto di utilizzo "anonimo". Se monitorate il vostro traffico di rete mentre usate GitSquid, vedrete esattamente questi due tipi di richieste e nient'altro.

Il compromesso che accettiamo

Non fingiamo che non ci siano svantaggi. Senza telemetry, non abbiamo visibilita automatica su quali funzionalita sono popolari, dove gli utenti hanno difficolta o cosa causa crash su configurazioni hardware specifiche. Ci affidiamo invece ai feedback diretti degli utenti, alle conversazioni di supporto e ai nostri test approfonditi. E piu lento. E meno sistematico. Significa che a volte scopriamo i problemi piu tardi di quanto faremmo con la segnalazione automatica dei crash.

Lo consideriamo un compromesso accettabile. I nostri utenti ottengono uno strumento che rispetta completamente la loro privacy, e noi otteniamo un prodotto costruito su relazioni genuine con gli utenti piuttosto che sull'estrazione di dati. Preferiamo avere cento utenti che ci danno profonda fiducia piuttosto che un milione di punti dati da utenti che non sapevano di essere tracciati.

Un cambiamento nell'industria

Non siamo i soli a pensarla cosi. In tutta l'industria del software, c'e un crescente riconoscimento che l'approccio "raccogli tutto, capisci cosa significa dopo" ha costi reali -- normativi, reputazionali ed etici. L'ascesa di alternative incentrate sulla privacy nei browser, nell'email, nella messaggistica e nella ricerca dimostra che gli utenti danno sempre piu valore agli strumenti che rispettano i loro confini.

Nello spazio degli strumenti per sviluppatori in particolare, questo cambiamento conta ancora di piu. Gli sviluppatori comprendono la tecnologia. Sanno cosa significa la telemetry, quali dati possono essere derivati dai pattern di utilizzo e cosa i dati "anonimizzati" possono rivelare quando combinati con altre fonti. Costruire strumenti per questo pubblico senza rispettare la loro privacy non e solo una questione etica. E una questione di credibilita.

Una promessa semplice

La nostra posizione sulla telemetry non cambiera con una nuova versione del prodotto, un cambio di leadership o un round di finanziamento. Zero telemetry fa parte di cio che e GitSquid. Il vostro codice resta sulla vostra macchina. Il vostro flusso di lavoro resta privato. La vostra fiducia resta semplice.

Questa non e una funzionalita su cui siamo disposti a scendere a compromessi.