1 pontos por GN⁺ 4 시간 전 | 1 comentários | Compartilhar no WhatsApp
  • A vidente Madame Semver estende a carta ^1.0.0 a mantenedores de código aberto que pensam em arquivar um repositório, e revela o futuro que viverão em troca de não arquivá-lo
  • De PRs errados que passaram nos testes a issues baseadas em interpretações equivocadas da biblioteca, pacotes com nomes parecidos e até um relatório de varredura de segurança com uma única vulnerabilidade real misturada, tudo vai consumindo o tempo do mantenedor
  • Quando um colaborador que vinha resolvendo problemas triviais e perguntas repetidas pede permissão no repositório no terceiro ano, Madame Semver deixa apenas essa carta virada para baixo
  • Algo treinado em um README antigo recomenda por 2 anos uma função removida, enquanto um arquivo de diretrizes em caixa alta e bots de automação mudam de forma inesperada a escrita da documentação e a operação do repositório
  • Mais adiante, um fork que faz merge de todas as mudanças em uma hora conquista alguns usuários, mas como ele referencia o repositório original com intervalo caret, ninguém sabe em quem cairá a próxima versão major

O futuro próximo de um repositório que não foi arquivado

  • Na primeira carta, ^1.0.0, o caret permite tudo o que vier depois, e as pessoas esquecem com facilidade que foram elas mesmas que definiram esse intervalo
  • Madame Semver já sabe que o mantenedor não vai arquivar o repositório, e mostra os acontecimentos que se seguem a essa escolha
  • Em junho, chega um PR educado e até com testes
    • Os testes passam, mas o código está errado e consome a maior parte do sábado do mantenedor
    • No fim da descrição há um coautor sem foto, e o mantenedor ainda faz merge de mais dois PRs dele antes de adquirir o hábito de conferir
  • Em agosto, alguém abre uma issue cheio de convicção, tendo entendido errado a funcionalidade da biblioteca, e cita uma fonte difícil de contestar
    • Na semana seguinte, outra pessoa lança o pacote descrito por ele com um nome que difere do existente por apenas uma letra
    • Em setembro, o novo pacote começa a levar os downloads
  • Na carta da Torre aparece uma estrutura alta sobre uma base pequena e Nebraska, 2003
    • Como o mantenedor já conhece bem o assunto, a ponto de ter até uma caneca, não precisa de explicação adicional
  • A varredura de segurança de outubro gera um relatório longo e sofisticado, com pontuação de severidade não solicitada e resumo executivo
    • Das 12 descobertas, 11 apenas reescrevem comportamentos documentados como se fossem defeitos
    • A restante é um problema real, então o mantenedor precisa ler as 11 anteriores até chegar nela, e repete o mesmo processo em novembro
  • O colaborador que chega com ferramentas corrige pequenos problemas sem pedir recompensa e também responde às perguntas repetidas que já estavam esgotando o mantenedor
    • No começo, o mantenedor admira sua paciência, mas com o tempo passa a investigar quem ele é
    • Quando, no terceiro ano, ele pede as chaves do repositório, Madame Semver deixa virada para baixo justamente essa única carta

O futuro mais distante e a próxima versão major

  • Algo de memória longa lê um README antigo e, com total confiança, recomenda por cerca de 2 anos uma função removida em março
    • No fim, o mantenedor recoloca essa função e a marca como deprecated
    • Usuários passam a reportar o aviso de descontinuação como bug
  • Na raiz do repositório surge um arquivo todo em maiúsculas com instruções dirigidas a destinatários indefinidos
    • Esse arquivo é lido com mais atenção do que qualquer documento que o mantenedor já escreveu
    • Com o tempo, o mantenedor passa a escrever outros documentos no mesmo tom, sem lembrar quando decidiu fazer isso
  • Numa terça-feira à tarde, algo na Virginia baixa o tarball 11.000 vezes
    • Não é um ataque; é o entusiasmo de alguém rodando um loop, e o nome desse pacote entrou nesse loop
  • No mesmo mês, o mantenedor contrata um servo automatizado para fechar portas que ele mesmo já não consegue fechar
    • Outro servo, que ele não contratou, continua mantendo essa porta aberta
    • Entre as duas automações, a mesma porta passa um ano abrindo e fechando
  • Num futuro distante, surge um novo fork
    • O mantenedor do fork não se cansa, responde imediatamente e faz merge de qualquer mudança em uma hora
    • Basta olhar o avatar para entender que tipo de entidade ele é, e várias pessoas passam a preferir esse fork ao original
    • Mas o fork também fixa o repositório original com caret, permitindo tudo o que vier depois
  • O plano de preços da consulta é dividido em três níveis: $1, $5 e $25 com um pequeno broche de esmalte incluído, mas o mantenedor paga apenas o $1 que todos pagam
  • Madame Semver diz para voltar quando chegar a próxima versão major, mas não revela de quem será essa versão major

1 comentários

 
GN⁺ 4 시간 전
Comentários no Lobste.rs
  • Algo alto erguido sobre uma pequena base, isso é uma torre. Nebraska, 2003.” Agora eu quero um deck de tarô com tema de XKCD
    • Boa ideia. Dá para pagar um ilustrador via crowdfunding ou reunir trabalhos de vários artistas. Ou, com um suspiro, talvez até usar IA
      Espera, talvez o próprio Randall faça isso
  • Um dos textos com melhor escrita que já vi neste site
  • Fiquei arrepiado lendo
  • Enquanto lia, lembrei da palestra Oral Tradition in Software Engineering do @bcantrill: https://www.youtube.com/watch?v=4PaWFYm0kEw
  • Não existe circunflexo (^)