Um engenheiro de software que afirma ter sido demitido da Meta em maio publicou um longo ensaio argumentando que a dependência intensa de ferramentas de programação com IA deixa os produtos de software frágeis, especialmente as grandes aplicações de software como serviço, que precisam permanecer online e escalar para milhões de usuários.
O engenheiro disse que só pode supor por que perdeu o emprego, mas suspeita que sua relutância em adotar as ferramentas de IA tão plenamente quanto alguns colegas tenha desempenhado algum papel. Ele afirmou que não era um resistente isolado. Em seus últimos meses na Meta, gerou pelo menos 90% de seu código com IA, o que descreveu como o mínimo necessário para uma avaliação de desempenho razoável. As ferramentas, no entanto, não multiplicaram sua produtividade como ele esperava. Segundo ele, sequer dobraram sua produção.
O que mais o incomodava era a qualidade. Ele disse ter observado colegas enviando códigos em grande parte gerados por IA e percebeu problemas que se acumulariam ao longo do tempo. Em um caso, segundo ele, um programador forte de sua equipe tentou integrar um código que usava eventos de JavaScript para criar efeitos de mouseover, em vez do seletor :hover do CSS, abordagem que ele classificou como totalmente não escalável.
Hoje, em outra grande empresa de tecnologia, ele diz ter migrado completamente para código gerado por IA, porque é isso que o trabalho exige. Ele ainda acredita que muitos desenvolvedores acabarão reconhecendo que essa abordagem não é sustentável. A IA, escreveu ele, lida bem com problemas que cabem dentro de sua janela de contexto, mas não compreende questões de longo prazo que ficam fora desse recorte restrito.
Por que o código escrito por IA torna grandes softwares frágeis?
Ele apresenta quatro maneiras pelas quais acredita que a IA produz código frágil. A primeira é a testagem superficial. Ele disse que agentes de IA frequentemente escrevem grande quantidade de testes para métodos triviais de leitura e escrita, enquanto os testes de ponta a ponta tendem a cobrir apenas os caminhos que a base de código já cobre. Na visão dele, esses testes deixam de lado categorias inteiras de usuários e interações superficiais, e as lacunas permanecem ocultas porque as métricas de cobertura de linhas ainda parecem saudáveis.
Por que ele diz que o código se desfaz
O segundo problema é a complexidade. Ele escreveu que a IA costuma usar dois ou três métodos auxiliares onde um bastaria e que aplica princípios como o DRY, ou "don't repeat yourself" (não se repita), de forma tão rígida que a estrutura extra torna o código mais difícil de depurar para as pessoas. O terceiro é a compreensão em declínio. Quanto mais uma empresa depende da IA para escrever código, argumentou ele, menos engenheiros entendem como o sistema funciona, o que dificulta identificar uma nova abstração que não se encaixe nas estruturas de dados e algoritmos existentes.
O quarto problema é a velocidade. Cada solicitação de integração chega mais rápido que a anterior e recebe menos tempo de revisão, escreveu ele. Os desenvolvedores passam os olhos pelo código, deixam de perceber detalhes importantes e permitem que pequenas falhas, como testes fracos e variáveis mal nomeadas, se acumulem até o código ficar emaranhado.
Sinais de alerta
Quais sinais de alerta mostram que o código de IA está prejudicando um produto de software?
Para empresas que tentam identificar se a IA está prejudicando seus softwares, ele listou quatro sintomas. O primeiro é o aumento de incidentes. Ele descreveu um padrão em que uma falha grave no fim de um mês é seguida de outras no mês seguinte, até que a equipe passe a lidar com incidentes quase todos os fins de semana, depois de um ano ou dois de codificação agêntica.
O segundo é a recuperação mais lenta. Engenheiros que já não compreendem bem a base de código precisam analisar códigos complicados e pouco testados quando uma ferramenta de IA não consegue encontrar a causa de um problema do cliente, de modo que cada interrupção custa mais tempo e dinheiro para ser resolvida.
O terceiro são erros que só os clientes reais encontram. Ele argumentou que, quando as pessoas deixam de ler o código com atenção, podem não perceber se a IA está adicionando análises de dados ou tratando erros corretamente, de modo que as falhas passam despercebidas pelos testes automatizados e pelos testadores internos.
O quarto é uma experiência pior tanto para os usuários quanto para os desenvolvedores. Ele escreveu que as bases de código construídas por IA não são pensadas para usuários humanos nem para os humanos que as mantêm, e que o resultado é uma espiral descendente que descreveu como enshittification.
Código escrito por IA vai se sustentar em produtos de software premium?
Ele encerra com uma previsão mais ampla. O software que atende bem as pessoas, escreveu, precisa de uma perspectiva humana. Ele comparou isso a pedir comida em um totem de restaurante ou comprar roupas online em vez de experimentá-las pessoalmente. Produtos baratos que competem principalmente por preço podem aceitar uma abordagem construída por máquinas, disse ele, mas os melhores e mais caros produtos continuarão sendo sob medida para os usuários e feitos por pessoas.
Questo articolo è stato scritto con l'assistenza dell'IA.
News Factory APP - notizie agentiche per potenziare il tuo SEO e AEO.