GitHub: um tour pelos repositórios que eu mantenho (e por que eles existem)
· 5 min de leitura · atualizado · ranking Hrönir #30/38
Para mim, repositório é a forma mais barata de pensar uma ideia até ela falar comigo. Não é metáfora — é workflow. Começo escrevendo um README, e quando o README começa a discutir comigo, sei que vale fazer o resto. O README que não discute — o que fica educado, vago, me deixa escrever o que eu quiser — geralmente significa que a ideia ainda não bateu em nada de real. Aprendi a desconfiar de README que consigo terminar em vinte minutos.
Tenho 64 repositórios públicos no GitHub. A maioria é a fase do README: a ideia sobreviveu tempo suficiente pra ganhar nome e primeiro commit, depois travou em alguma coisa. Alguns são onde eu realmente moro.
O que mais consome a cabeça
Essa legenda está fazendo muito trabalho silencioso. Sou procurador do Estado em Rondônia — vizinho do Pará, borda operacional da Amazônia. Meu trabalho cotidiano inclui ler diários oficiais em busca do que importa: nomeações, contratos, decisões regulatórias, o tipo de texto jurídico que é publicado porque a lei exige e depois desaparece num buscador que não indexa direito. O causaganha é minha tentativa de automatizar o que passo horas demais fazendo na mão. É também minha resposta mais clara à pergunta de o que eu construiria se pudesse construir só uma coisa.
O README discutiu por três anos. Ainda discute.
Camada de agentes
Em volta do causaganha orbita uma camada que eu construí porque precisei.
Esses existem porque o causaganha foi pedindo coisas que não existiam. O canivete porque eu precisava de uma ferramenta que falasse com vários agentes. O funes porque agentes esquecem, e o esquecimento é geralmente o que quebra uma sessão mais do que qualquer coisa técnica. O teatro porque alguns problemas se entendem melhor vendo duas posições brigarem do que tentando segurar as duas ao mesmo tempo.
Nem sempre sei se são boas ferramentas ou só ferramentas a que me acostumei. Essa distinção importa e eu frequentemente não consigo fazê-la com clareza.
O que Porto Velho cheira no código
Civic-tech sem advogado por perto vira blog post bonito sem efeito jurídico. Sei porque assisti isso acontecer, e algumas vezes fui eu assistindo isso acontecer a algo que eu mesmo construí.
Eis como isso parece na prática. Um time constrói um rastreador de financiamento político. O pipeline é sólido, a visualização é boa. Mas a resolução de entidades usa o CNPJ como identificador canônico, e no direito brasileiro um operador com três empresas de fachada debaixo do mesmo beneficiário final aparece como três entidades distintas com um terço da renda declarada cada uma. A interface é bonita e os números estão errados, e não tem ninguém no time que saiba por que o Artigo 10 da Lei Eleitoral distingue renda declarada de renda efetiva. Alguém protocola uma representação no Tribunal de Contas usando os dados. A representação é rejeitada por um vício formal que qualquer advogado teria pegado antes do primeiro commit. O README nunca bateu na camada jurídica, então nunca discutiu de verdade.
O inverso também é verdade — advogado sem capacidade técnica pode ler um contrato e perder a estrutura de banco de dados por baixo que determina se o contrato é executável ou teatro. Já fui esse advogado. Certa vez revisei um contrato de serviços com cláusula de SLA bem redigida — tempos de resposta, garantias de uptime, escalonamento de multas — e assinei. Dois anos depois o contratado descumpriu o SLA por seis meses consecutivos e não havia como aplicar a multa, porque o contrato não especificava qual sistema geraria a evidência, e o único sistema capaz de comprovar o descumprimento era o do próprio contratado. Juridicamente correto. Tecnicamente inexigível. Fui o advogado que não perguntou qual banco de dados gerava o relatório de SLA.
Esses três são a expressão mais clara da fratura que estou tentando fechar:
Porto Velho é longe. Infraestrutura é cara. A camada de accountability que existe em capitais maiores existe aqui principalmente no papel, e o papel está num diário que ninguém lê sistematicamente. A maioria das semanas eu sou uma das pessoas que deveria estar lendo, e estou numa audiência, ou escrevendo parecer sobre outra coisa. O Diário Oficial do Estado de Rondônia publica nomeações, contratos e decisões regulatórias porque a lei exige publicação — não porque alguém tem garantia de ver. Eu construo ferramentas pra ler sistematicamente não exatamente por virtude cívica. É frustração que encontrou um compilador.
Satélites
Os outros 49 ou 50 eu não consigo defender um por um. Alguns releio com prazer; outros, com vergonha. Os vergonhosos são geralmente os que eu sabia, quando escrevi o README, que ele ainda não estava discutindo comigo — e commitei mesmo assim porque a ideia parecia excitante e eu não queria esperar pelo atrito.
A melhor ferramenta pra distinguir um do outro é tempo. Abra um repo depois de seis meses e saiba em trinta segundos se você estava construindo alguma coisa ou só encenando o ato de construir. O teste dos trinta segundos é bastante confiável. O que aprendi aplicando ele é que os repos que sobrevivem são os cujos READMEs discutiram com as duas camadas ao mesmo tempo — técnica e jurídica simultaneamente, nenhuma deixando a outra fazer o movimento fácil. Os que morrem tendem a morrer de um lado só. Código que roda bem sem estrutura de accountability em volta. Argumento jurídico sólido sem compilador. A maioria dos meus satélites é isso: uma camada presente, uma ausente, README educado demais pra dizer.
O causaganha discute comigo há três anos porque não pode parar de discutir. No momento em que aceitar tranquilamente o que eu entrego, o diário vira uma pasta de PDFs de novo. Esse é o teste. Metade dos 64 vai morrer sem leitor, e tudo bem. O que não posso é deixar os que não deveriam morrer — os cujos READMEs ainda estavam discutindo e eu simplesmente cansei de escutar.
Posts relacionados
35 palestras que pretendo assistir: agentes de IA, civic tech e democracia digital
De pelicanos em bicicletas ao Querido Diário, vTaiwan e Polis — uma fila pessoal de 35 vídeos sobre engenharia de IA, govtech e infraestrutura participativa.
Três Martelos Entram num Bar
Sobre três posturas profissionais, quatro propriedades de alinhamento e a propriedade que teve que vir de fora.
O Agente que Não Inventa Verbos
Sobre Cucumber, endereçamento de conteúdo, e uma técnica de alinhamento que se revela mais antiga do que o alinhamento.
Comentários
Comentários ainda não configurados.