- À medida que o 'slop' — conteúdo de baixa qualidade gerado por IA — se espalha pela internet, fenômeno semelhante também aparece no software, além de música, vídeo e texto
- A produção de conteúdo vem sendo otimizada com foco apenas em maximizar engajamento e receita, enquanto o artesanato e a criatividade desaparecem
- A queda de qualidade e a degradação técnica nas grandes empresas de tecnologia já vinham acontecendo antes da chegada da IA, e a divisão estreita de funções enfraquece a habilidade e a capacidade de raciocínio dos engenheiros
- Agentes de IA são úteis para tarefas repetitivas e bem definidas, mas têm limitações fundamentais: mentem, não entendem bem o código e geram código ruim
- Assim como no movimento Arts and Crafts do século XIX, chegou a hora de restaurar no software ideias da computação inicial e reviver um artesanato centrado no ser humano
A expansão do AI slop e o conceito de technique
- Desde o lançamento dos modelos de IA, houve um aumento explosivo de conteúdo de IA de baixa qualidade, chamado de ‘slop’, em áudio, vídeo e texto
- Conteúdo lixo sempre existiu, mas a IA reduziu em dezenas de vezes ou mais o trabalho necessário para gerá-lo
- Em tarefas sem discernimento, ou em que discernimento não importa, a IA chegou a um nível suficiente para substituir a mão humana
- O conceito de 'technique' de Jacques Ellul: uma forma de pensar que reduz atividades a um conjunto de meios eficientes voltados para objetivos mensuráveis e definidos
- Reels do Instagram, vídeos do YouTube e posts de blog passam a ser considerados “bons” quando extraem o máximo de engajamento com o mínimo esforço
- A obsessão por métricas e desempenho corrói valores intangíveis como artesanato, beleza e prazer
Comparação entre plataformas de música: Bandcamp vs Spotify
- Bandcamp: foco em álbuns completos e curadoria pessoal
- Sustentou o boom da música indie dos anos 2010 e 2020, ajudando artistas como Car Seat Headrest, Mitski, Alex G e Phoebe Bridgers a ganhar destaque
- Como plataforma cujo objetivo é a própria música, proíbe música gerada por IA
- Spotify: modelo baseado em playlists e recomendação algorítmica
- O foco está mais na otimização de métricas do que na música em si
- Disseminação de muzak sem graça e moldada para o algoritmo
- Em um ambiente onde o artesanato não entra na conta, a IA produz em massa conteúdo muito mais vantajoso do que música feita por humanos do ponto de vista de 'maximização de receita'
A queda de qualidade na indústria de software
- Mesmo antes da IA, muito software já se encontrava em um estado de baixa qualidade generalizada
- A engenharia de software nas grandes empresas de tecnologia se deformou até ficar mais próxima de ‘plumbing’
- Limitando-se a conectar vários sistemas para fazer os dados fluírem
- O conceito de ‘grande trabalho’, descrito por Richard Hamming como criar um presente para a humanidade, hoje é visto no setor de tecnologia como idealismo excessivo
- Muitos grandes sistemas de software estão inchados, mal projetados e pouco documentados
- Os usuários ficam constantemente na defensiva para não serem explorados no processo de ‘enshittification’ (degradação da qualidade) das plataformas
- Há concordância com a visão apresentada por Jonathan Blow na palestra Preventing the Collapse of Software Civilization
- Engenheiros profissionais e grandes empresas de software esqueceram como fazer o trabalho direito
- Devido a estruturas de monopólio não competitivo, protegidas da pressão de mercado
- as práticas de software se afrouxam
- as organizações incham
- e a qualidade geral cai muito
- Engenheiros de big tech exercem apenas papéis extremamente limitados dentro de organizações enormes
- e assim capacidades amplas de engenharia e o artesanato se deterioram naturalmente
Capital humano e o problema da divisão do trabalho
- O que uma empresa ou sociedade consegue fazer com computadores depende do capital humano, isto é, da capacidade de formar engenheiros com habilidades amplas
- A divisão extrema de trabalho nas grandes empresas de tecnologia
- produz em massa mão de obra técnica estreita, acostumada apenas a áreas específicas
- e a fixa em perfis que só funcionam dentro da estrutura organizacional atual das big techs
Dois fenômenos mostram como a IA se torna uma ameaça à engenharia de software
- 1. A percepção realista de que agentes de IA ameaçam a engenharia de software profissional
- Para engenheiros cujo papel foi reduzido à produção repetitiva e restrita de software de baixa qualidade,
- a IA de fato funciona como um substituto bastante eficaz
- 2. A generalização excessiva sobre a capacidade dos agentes de IA
Limitações fundamentais dos agentes de IA
- Para que essas alegações se sustentem, é preciso partir de uma visão extremamente estreita do que é software
- O mesmo que acontece com música gerada por IA, que exige enxergar música apenas como métrica de consumo
- Uma postura que trata software apenas como ferramenta para atingir fins, em que “se estiver bom o suficiente, basta”
- Ao testar agentes de IA diretamente, fica claro que eles são úteis em certos casos, mas têm limites nítidos
- Falam de forma plausível sobre coisas falsas, não entendem bem o contexto e frequentemente geram código de baixa qualidade
- Em algumas áreas pode haver melhora contínua, mas, assim como em música e texto, há limites estruturais evidentes
- Agentes de IA não têm pensamento autônomo e não conseguem descobrir sozinhos o que o usuário quer
- Eles funcionam melhor quando o problema está claramente definido
- Ex.: “escrever testes unitários”, “implementar uma função de banco de dados neste formato”
- Tentativas de generalizar sua capacidade em geral fracassam
- Muitas vezes resultando em código monstruoso, novo até pode ser, mas difícil de manter, entender e expandir
Problemas do “Vibe Coding”
- No início parece impressionante, mas com o tempo defeitos característicos passam a se destacar
- Código desnecessariamente verboso e com estilo desleixado
- Estrutura simples, porém com design plano e pobre esteticamente
- Marcas recorrentes e muito próprias, que aos poucos se tornam irritantes
- Quando surgem problemas, o processo de depuração vira um trabalho repetitivo e frustrante
- Você programa sem muita atenção enquanto vê outros vídeos ou rola redes sociais
- E continua repetindo ao agente pedidos como “tem um bug, corrige de novo”
- Características frequentes em código gerado por IA
- botões com padding excessivo
- espaçamento e cores inconsistentes
- achatamento estético geral
- elementos de UI sem razão de existir clara
- tendência a adicionar rótulos e explicações desnecessários a todos os elementos
Problemas sistêmicos da indústria de software e a necessidade de artesanato
- É difícil negar que a maior parte do código não é muito boa, especialmente em ambientes corporativos grandes
- Com IA, dá para continuar produzindo software de baixa qualidade mais rápido e com mais eficiência
- Mas a IA não resolve os problemas sistêmicos centrais da indústria de software
- O problema fundamental é que ainda não foi estabelecido como fazer software bem em ambientes de grande escala
- Para resolver isso, o que se exige não é automação, mas artesanato e pensamento crítico humano
O movimento Arts and Crafts e a semelhança com o software
- Vale olhar para o movimento Arts and Crafts da época da Segunda Revolução Industrial
- John Ruskin e William Morris responderam a uma era em que a capacidade impressionante das máquinas e da produção industrial deslocava o artesão individual
- Eles não viam a produção industrial como progresso automático, e reconheciam que havia um ‘estilo’ próprio tanto nos produtos quanto nas condições de trabalho que ela gerava
- Criticavam o fato de os trabalhadores estarem se tornando cada vez mais peças de uma gigantesca máquina industrial
- Apontavam que existe claramente um campo em que as máquinas não conseguem atuar, e que isso não mudou nem naquela época nem agora
- Buscavam como fonte de inspiração a recuperação do artesanato medieval
Uma mudança semelhante necessária no software
- Também no software é preciso uma mudança e um movimento semelhantes
- Há necessidade de voltar a estudar e restaurar modos de computação e formas de pensar do início da computação
- Existe um rico tesouro de ideias ignoradas pelo mainstream, mas que nunca desapareceram
- Projetos impressionantes e belos, feitos de maneiras diferentes do software atual
- Hoje estamos presos a um ramo muito estreito da evolução tecnológica, o caminho que vai de C/Unix a Javascript/web
- Mas há um território muito maior a explorar
- Basta seguir em uma direção minimamente não convencional para que a ajuda da IA praticamente desapareça
- Ao tentar fazer Claude escrever Forth, a experiência foi quase de atrapalhar mais do que ajudar
- Como ponto de partida, recomenda-se a wiki Permacomputing
Perspectivas para a era do código com IA
- O código com IA pode tornar ainda mais comum o software de baixa qualidade produzido em massa
- Ao mesmo tempo, pode abrir um novo espaço para engenheiros que queiram recuperar o artesanato e a expressão criativa
- Não é preciso ser pessimista: quanto mais raro o artesanato se torna, maior passa a ser seu valor próprio
- Num momento em que o software dominante expõe seus limites, a degradação da qualidade continua e a consciência política leva a reavaliar o valor de estruturas centralizadas
- Este pode ser um ótimo momento para o brilho do software experimental, feito por humanos e operado em escala humana aparecer nas margens
1 comentários
Comentários do Hacker News
Gostei da parte que menciona o pensamento de Jacques Ellul
Isso me fez refletir novamente sobre o fato de que a essência do “progresso” tecnológico está em elevar a eficiência ao valor supremo
É interessante como esse valor foi aceito quase sem contestação. Ainda assim, acredito que outras escolhas continuam sendo possíveis
A eficiência, por natureza, sacrifica adaptabilidade e resiliência
Já artesanato, cuidado e encantamento são difíceis de medir. A métrica que uso são os e-mails de pessoas reais, o que é irregular e imprevisível
Acho que também é possível criar código de alta qualidade com agentes de programação
Não termina com um único prompt; é preciso um processo orquestrado de planejamento–implementação–validação–revisão
No fim, ainda é trabalho de engenharia; só a ferramenta mudou. Como a diferença entre um serrote manual e uma motosserra: o resultado é o mesmo, mas o processo é diferente
Software corporativo costuma ter má qualidade principalmente porque é vendido a gestores que não o usam
Já o software de consumo é mais amigável porque o próprio usuário escolhe usar
Quando você escreve código para si mesmo, implementa só o necessário, então ele fica meio improvisado, mas funciona bem
Agentes de programação podem ser usados como uma lavadora de alta pressão para limpar um projeto. Não é arte, mas é satisfatório
Só não se deve usá-los em código delicado. Mas a maioria dos webapps tem bons testes, e agora quase não há motivo para fazer tudo manualmente
O resultado é um excesso de funcionalidades e toggles desnecessários
O gestor quer precisão nos dados, mas o funcionário reclama que inserir tudo isso é incômodo
Muitas vezes não há orçamento para integração ou o contrato é de curto prazo, então nem dá para fazer integração com CRM
Já o software corporativo é distorcido por fluxos de trabalho estranhos, porque os incentivos de quem paga e de quem usa não estão alinhados
A maioria dos engenheiros de software, mesmo antes da IA, já estava mais focada em salário e eficiência do que em artesanato
Por isso, o código gerado por IA acaba sendo apenas mais código mediano
Acho que a IA não vai restaurar o artesanato, e sim eliminar seus últimos vestígios
Assim como ferramentas elétricas não acabaram com a marcenaria artesanal, a IA também não fará isso
No futuro, vão coexistir “as pessoas da IDE” e “as pessoas do prompt para agentes”
Fiquei feliz de ver Forth mencionado. Uso com frequência
O código Forth gerado por LLM tem um estilo ruim, como se fosse uma tradução de C
O Forth padrão deveria ser curto e claro, mas os LLMs produzem código longo, cheio de condicionais aninhadas
Estou lendo Turing’s Cathedral hoje em dia
Isso me fez perceber novamente o artesanato da engenharia nos EUA do pós-guerra
Hoje parece que tratamos tudo como algo garantido e esquecemos como era a engenharia de verdade
A maior parte do código sempre foi péssima
Numa cultura centrada em resultados, a qualidade ficou em segundo plano, e bugs passaram a ser parte do custo do negócio
A IA se encaixa perfeitamente nesse ambiente. Ela já prospera numa cultura de código de baixo nível
Acho que dá para usar IA para fazer software melhor
Mesmo no código gerado por IA, é possível refletir design, padrões e melhores práticas
Isso é parecido com a diferença entre a fabricação tradicional de guitarras e a fabricação moderna de guitarras baseada em CNC
Se você assistir ao vídeo de fabricação de guitarras de Ulrich Teuffel, verá tecnologia e arte coexistindo
Claro, o artesanato é caro, então a maioria escolhe produtos industriais
Estou aplicando isso em projetos grandes, mas os resultados de longo prazo ainda são desconhecidos
Algoritmos que antes eu escrevia manualmente agora deixo a cargo de agentes
Assim como usar CNC em vez de fresagem manual, evoluo a stack tecnológica para criar obras de qualidade mais alta
Se for possível fazer software ruim de forma barata com IA, tudo bem
O importante é se a proporção de software bom aumenta. A IA aumenta essa possibilidade
A IA prospera em ambientes que otimizam software para um nível “bom o suficiente”
Em vez de substituir grandes engenheiros, ela expõe a realidade industrial já mecânica e orientada por métricas
Quanto mais comum ficar o código produzido em massa, mais o julgamento humano e o senso estético se tornarão recursos realmente escassos