4 pontos por GN⁺ 2025-11-17 | 4 comentários | Compartilhar no WhatsApp
  • As pequenas bibliotecas utilitárias de JavaScript estão se tornando cada vez mais desnecessárias por causa da capacidade dos LLMs de gerar código
  • Por exemplo, blob-util é um pacote npm com 10 anos de existência, uma coleção de ferramentas para lidar com Blob, mas agora a IA consegue gerar código semelhante na hora
  • Essa mudança permite menos dependências e desenvolvimento mais rápido, mas também provoca a perda de oportunidades de aprendizado e compreensão
  • Após a expansão dos recursos nativos do Node.js e dos navegadores, os LLMs estão acelerando o fim das bibliotecas pequenas
  • No futuro, o valor do open source provavelmente continuará em áreas criativas, de grande escala e especializadas

O declínio do open source pequeno e o impacto dos LLMs

  • blob-util, criado há 10 anos, é uma coleção simples de utilitários para converter o objeto Blob do JavaScript em string ou ArrayBuffer, com mais de 5 milhões de downloads semanais
    • O autor o criou ao ver que usuários do PouchDB tinham dificuldades para lidar com Blob
  • Atualmente, cerca de 80% dos desenvolvedores usam IA no trabalho, e por isso utilitários simples podem ser substituídos por LLMs
    • Como exemplo, o Claude gera na hora uma função TypeScript para converter Blob em ArrayBuffer
  • O resultado do Claude é semelhante ao blob-util, mas é mais verboso e tem validação de tipos excessiva, enquanto o tratamento de erros é melhorado
  • O autor menciona que essa mudança pode parecer uma redução de dependências e aumento da robustez do código

Perda de valor do open source voltado ao aprendizado

  • O README do blob-util inclui um tutorial com o personagem Kirby e tinha como objetivo, além de oferecer uma função simples, ajudar no aprendizado de JavaScript
  • Em um ambiente de desenvolvimento centrado em LLMs, respostas imediatas passam a ter prioridade sobre compreensão e educação, reduzindo a necessidade desse tipo de open source educativo
  • Tentativas como llms.txt para automatizar documentação acabam redefinindo o próprio significado da documentação

Uma nova direção para o open source

  • O autor continua contribuindo com open source, mas acredita que a era das bibliotecas pequenas e de baixo valor acabou
    • Já havia uma tendência de queda com a expansão de recursos nativos do Node.js e dos navegadores (node:glob, structuredClone etc.)
    • Os LLMs aceleraram decisivamente esse movimento
  • Bibliotecas com papel educativo (como Underscore.js) também se tornam menos necessárias
    • Funções simples como agrupamento de arrays agora podem ser resolvidas com APIs padrão

As condições para que o open source ainda retenha valor

  • O valor se concentra em projetos grandes, criativos e especializados que LLMs não conseguem gerar facilmente
    • Por exemplo, o projeto fuite e a pesquisa sobre detecção de vazamento de memória são trabalhos criativos difíceis de reproduzir com LLMs
  • No futuro, o significado do open source estará em novas ideias e criatividade humana
    • Como exemplo, o texto menciona o framework Ripple.js, desenvolvido por Dominic Gannaway, destacando o espírito humano de experimentação

Conclusão

  • Os LLMs tornaram parte do open source obsoleta, mas ainda existem oportunidades para criar novas formas de open source
  • A criatividade e o espírito de experimentação dos desenvolvedores humanos são apresentados como elementos centrais para a sustentabilidade do ecossistema open source na era da IA

4 comentários

 
savvykang 2025-11-20

Acho que tudo bem, desde que consigamos impedir apenas hábitos estranhos do ecossistema como o left-pad.

 
shakespeares 2025-11-19

À medida que entramos numa era em que a satisfação obtida em relação ao esforço investido é cada vez menor, parece que pequenos utilitários acabarão sendo deixados de lado por serem considerados sem valor em comparação com o trabalho (esforço) necessário para mantê-los.

 
GN⁺ 2025-11-17
Comentários do Hacker News
  • Hoje em dia, cerca de 80% dos desenvolvedores usam IA no trabalho
    Utilitários como blob-util agora podem, em sua maioria, ser gerados diretamente por LLMs
    Mas essa abordagem é uma faca de dois gumes. Código não validado deixa um custo de manutenção e pode falhar em casos extremos
    Por isso, no ecossistema Java, coleções padrão confiáveis de utilitários como o Apache Commons se consolidaram

    • Bibliotecas utilitárias antigas já foram validadas em diversos ambientes e são estáveis
      Já o código gerado por LLM pode parecer lógico à primeira vista, mas tem grande chance de esconder bugs estranhos
  • Entramos em uma era em que a IA gera código e tutoriais em massa, acelerando a queda de qualidade e a spamização
    Há menos motivação para criar blogs pessoais ou bibliotecas pequenas

    • Na verdade, a web já estava lotada de spam de tutoriais de baixa qualidade há muito tempo
      Textos feitos por LLM parecem estar num nível parecido, então até sinto que ficou mais fácil filtrá-los
      Eu testo o valor real de um tutorial executando o código dentro de um devcontainer. Se funcionar, vale a pena ver; se não, descarto
    • Hoje, procurando um tema específico no YouTube, fiquei surpreso com a quantidade interminável de vídeos gerados por IA
    • A ideia de que “a era do spam de baixa qualidade está chegando” já virou realidade
    • Um desenvolvedor web brincou: “agora estamos 10 vezes mais rápidos, então isso não tem como fazer mal à humanidade”
    • Alguém, em tom de piada, jogou um código em assembly e ironizou: “se você não consegue explicar isso, então não é um desenvolvedor de verdade”
  • O inferno das microdependências em JS era um pesadelo
    Agora espero que essa era esteja acabando, e que voltemos a um tempo em que os desenvolvedores aprendam a programar de novo

    • Juntar pequenas coleções de utilitários em um único pacote, como jQuery ou lodash, foi o que deu melhor resultado
    • Mas há quem questione a ideia de que “agora acabou tudo”. Na verdade, pode até piorar com a enxurrada de código gerado por IA
    • Se o código de LLM aumentar, funções com a mesma finalidade ficarão espalhadas em várias versões, e cada correção de bug terá de ser feita separadamente
    • Usar LLM não faz com que as pessoas aprendam mais. Quando surgir um problema, elas só vão pedir para o LLM refatorar
    • “Agora chegou a era do vibe coder”, acrescentou alguém brevemente
  • Surgiu a pergunta se o “problema de inverter uma árvore binária” realmente existe

    • Isso parece se referir ao problema em que o criador do Homebrew fracassou numa entrevista do Google
    • Provavelmente é só um erro simples do autor e, mesmo que fosse feito, seria apenas um exercício sem sentido de inverter operadores de comparação
  • Houve concordância com a afirmação de que “a era das bibliotecas pequenas e de baixo valor acabou”
    A linguagem Go, desde o início, nunca teve inferno de dependências, e o problema do npm se deve a fatores culturais
    Agora, mais valioso e interessante do que utilitários é criar produtos que realmente funcionem

    • Como diz um provérbio de Go, “um pouco de cópia é melhor do que um pouco de dependência” (Go Proverbs)
    • Também apareceu a pergunta sobre qual funcionalidade do Go impediu esse tipo de problema com dependências
  • Eu acho que microdependências em si não fazem sentido
    Seria melhor simplesmente listar as funções em Markdown para que as pessoas copiem
    A abordagem de pequenas bibliotecas em C baseadas em arquivos de cabeçalho é mais prática

    • “Então por que não incluir essas bibliotecas de cabeçalho na biblioteca padrão de C?”, respondeu alguém em tom de brincadeira
    • Mas também surgiu a objeção prática: “se for no esquema de copiar e colar, como ficam as atualizações de segurança?”
  • Foi levantada a pergunta: “que tipo de open source ainda faz sentido agora?”
    Porque o código publicado acaba sendo absorvido como dado de treinamento para IA
    Por isso, em vez de FOSS completo, o modelo source-available pode ser uma alternativa

    • “Se mais pessoas podem usar, isso não é justamente a vantagem do open source?”, rebateu alguém
      O autor enfatizou que o significado da contribuição é maior do que apenas ter o nome creditado
    • Mas também houve ceticismo: “no fim, source-available também vai ser usado para treinamento”
    • Surgiu ainda a ideia de que “ninguém tem obrigação de dar conhecimento de graça ao mundo” e que é preciso rejeitar o compartilhamento sem reciprocidade
    • Houve quem dissesse que “distribuir código não livre é antiético” e que os princípios do software livre devem ser preservados
    • Alguém revelou que “perdeu o interesse em open source” e tornou todos os projetos privados
  • Eu acredito que o open source não vai desaparecer, e sim ficar ainda mais forte
    Desenvolvedores realmente criativos vão usar IA para criar inovações que empresas não conseguem produzir
    O open source continua sendo um campo real de validação de valor, e um espaço para aprender ultrapassando limites com IA

    • A verdadeira inovação virá do open source
      Mas a previsão é que governos e grandes empresas tentem regular sistemas de IA locais, e em breve surja uma fronteira sobre “qual IA os cidadãos podem usar”
    • Por outro lado, projetos open source já estão sofrendo com submissões de código gerado por IA
      Perde-se mais tempo com revisão e discussão de políticas e, especialmente em áreas complexas como compiladores, a IA não ajuda em nada
  • Alguém enfatizou que, “mesmo que não seja adicionado como pacote, o ato de publicar código em si ainda tem valor”

    • Eu também, quando encontro pequenos trechos de código, copio e adapto aos meus padrões. Isso me lembra o espírito de compartilhamento da ciência
      Se o LLM escrever o código no meu lugar, o custo de aprendizado diminui e posso focar em temas mais profundos
    • Acho que licenças copyleft são melhores. Elas impedem que empresas simplesmente se apropriem do código, obrigando-as a contratar gente diretamente
    • Mesmo sem executar, aprender lendo o código dos outros já tem muito valor. Eu penso que resolver problemas em si é um presente
    • Mas open source, no fim, é um investimento de tempo e trabalho
      Por exemplo, alguém disse que manteve o rubygems.org por 14 anos, mas saiu por decepção com a estrutura corporativizada
  • Houve a observação de que “escrever código com IA também é, no fim, uma forma de dependência
    Copiar e colar sem validação não é diferente de adicionar uma biblioteca externa

    • Mas o código gerado por LLM pode ser projetado de forma mais estreita para a necessidade, reduzindo recursos desnecessários e podendo ser mais eficiente
    • Além disso, ele tem a vantagem de não trazer a carga de ataques à cadeia de suprimentos ou atualizações frequentes
    • Por outro lado, bibliotecas acabam se modernizando automaticamente com o tempo, enquanto trechos de código gerados por LLM não
    • No fim, o problema não é a ferramenta, e sim o hábito de copiar e colar sem validar. Um desenvolvedor irresponsável terá o mesmo resultado usando qualquer ferramenta
 
haytsir 2025-11-18

No começo de 2024, quando eu estava fazendo um projeto pequeno,
pedi ao Claude 3.5 para criar um módulo de store state que pudesse ser usado em pure JavaScript,
e lembro de ter ficado surpreso porque ele escreveu um código conciso que ainda dava conta até de cenários de migração.

Quanto menor a biblioteca, mais provável é que já exista muito código público feito por pessoas que pensaram de forma parecida, então, se considerar que a IA consegue transformar isso em uma estrutura padronizada com facilidade, acho que é um fenômeno natural.

Como o copyparty, projetos que qualquer um pode imaginar, mas que são difíceis de manter por muito tempo individualmente.
É uma pena pensar que, daqui para frente, talvez fique mais difícil ver esses projetos limpos e bem lapidados surgirem porque alguém levou esse tipo de projeto até o fim.