La verdad incomoda sobre las herramientas para desarrolladores y la recopilacion de datos
Abra la politica de privacidad de casi cualquier herramienta para desarrolladores que utilice y encontrara una seccion sobre recopilacion de datos. Analisis de uso, informes de fallos, seguimiento de funcionalidades, duracion de sesion, perfiles de hardware -- la lista continua. La mayoria de las empresas presentan esto como una necesidad: necesitan datos para mejorar su producto, priorizar funcionalidades y corregir errores. Y para ser justos, ese razonamiento no es del todo incorrecto. Las decisiones de producto basadas en datos son un enfoque legitimo para construir mejor software.
Pero hay una pregunta que rara vez se formula: ¿a que costo?
Por que la mayoria de las herramientas para desarrolladores recopilan datos analiticos
La justificacion estandar para la telemetry en herramientas para desarrolladores se divide en algunas categorias:
- Decisiones de producto. ¿Que funcionalidades se usan mas? ¿Cuales se ignoran? Los analisis ayudan a los equipos de producto a priorizar que construir a continuacion y que descontinuar.
- Informes de fallos. Cuando algo falla, la notificacion automatica de fallos ayuda a los desarrolladores a identificar y solucionar problemas mas rapido, a veces antes de que los usuarios los reporten.
- Monitoreo de rendimiento. ¿Cuanto tiempo tarda una operacion determinada en diferentes equipos? ¿Donde estan los cuellos de botella? La telemetry proporciona datos de rendimiento del mundo real que los benchmarks sinteticos no pueden replicar.
- Metricas de negocio. Tasas de retencion, embudos de activacion, prediccion de abandono -- estas metricas impulsan las decisiones de negocio, especialmente para empresas respaldadas por capital de riesgo bajo presion para mostrar crecimiento.
Nada de esto es inherentemente malicioso. Pero el efecto acumulativo es que su entorno de desarrollo se convierte en una fuente de datos de comportamiento. Cada commit, cada cambio de rama, cada conflicto de merge, cada archivo que abre -- todo es potencialmente observable. Para una herramienta que se encuentra en el centro de su flujo de trabajo, eso es una cantidad significativa de informacion sobre como trabaja, en que trabaja y cuando.
Por que GitSquid eligio un camino diferente
Cuando comenzamos a desarrollar GitSquid, tomamos una decision deliberada: zero telemetry. No "telemetry minima." No "telemetry anonimizada." Zero. Esto no fue una ocurrencia tardia ni un argumento de marketing. Fue un principio de diseno fundamental, y he aqui por que.
La privacidad es una funcionalidad
Creemos que la privacidad no es solo una casilla de cumplimiento normativo. Es una funcionalidad con la que los usuarios deberian poder contar. Cuando usa GitSquid, la aplicacion se ejecuta completamente en su maquina. Los datos de su repositorio, su historial de commits, sus estructuras de ramas, sus patrones de flujo de trabajo -- nada de eso sale de su ordenador. Eso es una garantia, no un ajuste que tiene que recordar activar.
Las herramientas para desarrolladores lo ven todo
Un cliente Git no es una herramienta casual. Tiene acceso a toda su base de codigo, a sus mensajes de commit (que a menudo contienen nombres de proyectos, numeros de tickets y contexto sobre lo que esta trabajando), a los nombres de sus ramas y a sus patrones de colaboracion. Sabe en que repositorios trabaja, con que frecuencia hace commit y cuando esta activo. Recopilar telemetry de un cliente Git significa recopilar datos que estan profundamente entrelazados con su trabajo profesional y a veces personal. No queriamos esa responsabilidad, y no creemos que usted deba tener que concederla.
La confianza deberia ser simple
Con muchas herramientas, la confianza requiere leer politicas de privacidad, verificar las opciones de exclusion, esperar que los datos "anonimizados" sean verdaderamente anonimos, y confiar en que las practicas de manejo de datos no cambiaran con la proxima adquisicion o ronda de financiacion. Queriamos que la confianza fuera simple: GitSquid no recopila sus datos. Punto final. No hay politica de privacidad que analizar, no hay ajustes que auditar, no hay acuerdos de procesamiento de datos que revisar.
Que significa "zero telemetry" concretamente
Para ser precisos sobre lo que queremos decir, esto es lo que GitSquid hace y no hace:
No recopilamos:
- Analisis de uso de ningun tipo
- Informes de fallos ni registros de errores
- Seguimiento de uso de funcionalidades
- Datos de sesion ni patrones de actividad
- Perfilado de hardware o sistema operativo
- Metadatos ni contenido de repositorios
Las unicas solicitudes de red que realiza GitSquid son:
- Validacion de licencia. Cuando activa su licencia, GitSquid verifica su validez con nuestro servidor de licencias. Es una comprobacion de activacion directa, no un informe de uso.
- Comprobacion de actualizaciones. GitSquid comprueba periodicamente si hay una version mas reciente disponible para que pueda mantenerse al dia. No se transmiten datos sobre su uso durante esta comprobacion.
Esa es la lista completa. Sin puntos de conexion analiticos, sin cargas de datos en segundo plano, sin informes de uso "anonimos". Si monitorea su trafico de red mientras usa GitSquid, vera exactamente estos dos tipos de solicitudes y nada mas.
El compromiso que aceptamos
No vamos a pretender que no hay inconvenientes. Sin telemetry, no tenemos informacion automatica sobre que funcionalidades son populares, donde los usuarios tienen dificultades o que causa fallos en configuraciones de hardware especificas. En su lugar, confiamos en los comentarios directos de los usuarios, las conversaciones de soporte y nuestras propias pruebas exhaustivas. Es mas lento. Es menos sistematico. Significa que a veces nos enteramos de los problemas mas tarde de lo que lo hariamos con informes de fallos automaticos.
Consideramos que es un compromiso aceptable. Nuestros usuarios obtienen una herramienta que respeta completamente su privacidad, y nosotros obtenemos un producto construido sobre relaciones genuinas con los usuarios en lugar de extraccion de datos. Preferimos tener cien usuarios que confian profundamente en nosotros que un millon de puntos de datos de usuarios que no sabian que estaban siendo rastreados.
Un cambio en la industria
No estamos solos en este pensamiento. En toda la industria del software, hay un reconocimiento creciente de que el enfoque de "recopilar todo, descifrar que significa despues" tiene costos reales -- regulatorios, reputacionales y eticos. El auge de alternativas centradas en la privacidad en navegadores, correo electronico, mensajeria y busqueda muestra que los usuarios valoran cada vez mas las herramientas que respetan sus limites.
En el espacio de herramientas para desarrolladores especificamente, este cambio importa aun mas. Los desarrolladores entienden la tecnologia. Saben lo que significa la telemetry, que datos se pueden derivar de los patrones de uso y lo que los datos "anonimizados" pueden revelar cuando se combinan con otras fuentes. Construir herramientas para esta audiencia sin respetar su privacidad no es solo una cuestion etica. Es una cuestion de credibilidad.
Una promesa simple
Nuestra posicion sobre la telemetry no va a cambiar con una nueva version del producto, un cambio de liderazgo o una ronda de financiacion. Zero telemetry es parte de lo que es GitSquid. Su codigo se queda en su maquina. Su flujo de trabajo permanece privado. Su confianza permanece simple.
Esa no es una funcionalidad en la que estemos dispuestos a comprometer.