A linguagem Go do Google é usada por desenvolvedores em projetos tão diversos quanto armazenamento em nuvem e streaming de mídia. Mas uma proposta para que a cadeia de ferramentas seja reportada ao Google por padrão incomodou muitos usuários. Aqui está o que você precisa saber.
Nenhum software é perfeito e as versões são frequentemente atualizadas para adicionar novos recursos ou para corrigir problemas e tapar falhas de segurança.
Desenvolvedores de software estão continuamente se esforçando para melhorar seu software e, para isso, precisam de dados. Eles precisam saber quais recursos são populares, se devem desenvolver ou melhorar certos aspectos do software e diagnosticar problemas.
Normalmente, os desenvolvedores recebem dados voluntariamente, por meio de solicitações de recursos e relatórios de bugs.
Como alternativa, alguns softwares solicitarão que o usuário envie automaticamente um relatório de bug aos desenvolvedores se ele travar. Essas informações incluem detalhes sobre o que o usuário estava fazendo para que a equipe de desenvolvimento possa diagnosticar e corrigir o problema. Também pode incluir detalhes como o sistema operacional, geolocalização aproximada e qualquer outra coisa que possa ser útil.
Na maioria dos casos, quando o software falha, você verá uma caixa de diálogo solicitando o envio do relatório, com opções para permitir ou recusar a permissão.
Além dos relatórios de falhas e bugs, os desenvolvedores geralmente não sabem como as pessoas estão usando seu software.
Go é uma linguagem de programação de código aberto desenvolvida pelo Google. Ele teve um surto de popularidade devido à sua simplicidade, velocidade e recursos de simultaneidade. Ele é usado em todos os aspectos do desenvolvimento, e os projetos escritos em Go incluem Docker e Kubernetes. Netflix, Soundcloud e, naturalmente, o Google usam o Go para vários serviços de back-end.
Em fevereiro de 2023, Russ Cox, engenheiro de software do Google com o projeto Go, publicou um proposta no golang GitHub repositório. Ele sugeriu que a telemetria nas ferramentas de linha de comando Go deveria estar ativada por padrão, enviando dados sobre o uso das ferramentas de volta ao Google.
Cox propõe o uso de um sistema limitado de telemetria, no qual as decisões sobre a coleta de métricas ocorrem em um processo público aberto. As principais características da proposta incluem:
- Os relatórios carregados incluem apenas contagens totais de eventos durante uma semana inteira, não qualquer tipo de rastreamento de eventos ordenados por tempo.
- Os relatórios carregados não incluem IDs de usuário, IDs de máquina ou qualquer outro tipo de ID.
- Os endereços IP expostos pela sessão HTTP que carrega o relatório não são registrados com os relatórios.
- O sistema está ativado por padrão, mas desativar é fácil, eficaz e persistente.
Cox também afirmou: "Não estou sugerindo que a instrumentação seja adicionada pelo compilador Go a todos os programas Go no mundo: isso é claramente inapropriado."
As respostas às propostas de Cox foram mistas; alguns desenvolvedores Go acham que a proposta é desnecessária e prejudicial, enquanto outros a veem como uma boa ideia. Também há preocupações de que a telemetria ativada por padrão infrinja os regulamentos de proteção de dados, como o GDPR da Europa.
Telemetria não é algo novo
Se você já configurou um PC com Windows, terá clicado em várias telas relacionadas à configuração de telemetria. Felizmente, você pode instruir seu sistema operacional a enviar apenas informações básicas para a Microsoft.
No entanto, você não tem a opção de desabilitar totalmente a telemetria — ou "dados de diagnóstico" — durante o processo de instalação. Desativando a telemetria do Windows após a instalação também é um exercício nada trivial. Mesmo o Ubuntu, o sistema operacional de desktop de código aberto mais popular, tem apenas um leve aceno para o consentimento de telemetria.
Em outros lugares, o .NET SDK e o .NET CLI da Microsoft têm relatórios de travamento opt-out e enviarão várias métricas para Redmond sobre seu sistema e seu uso.
Embora você possa desativar facilmente a telemetria da ferramenta de desenvolvimento da Microsoft, há um argumento de que ela deve ser aceita por padrão.
A telemetria é muito valiosa para os desenvolvedores, portanto, é possível que a configuração de ativação por padrão se infiltre em outras ferramentas, IDEs e compiladores.
Isso é especialmente provável se esses projetos com telemetria de exclusão se tornarem mais populares do que outras linguagens e ferramentas.
Do ponto de vista de um programador, será difícil e demorado passar por todo o seu kit de ferramentas, verificando se a telemetria está ativada, desativando-a e esperando que uma atualização futura não reverta isso contexto.
Go não é a única linguagem de programação na cidade
Apesar de sua popularidade crescente, o movimento de Go em direção à telemetria de exclusão pode fazer você pensar. Se você levar a privacidade muito a sério, pode até decidir abandoná-la completamente.
Existem centenas de linguagens de programação e ferramentas disponíveis, e certamente há pelo menos uma que também se adequará ao seu projeto.