Nos últimos anos, muito se tem discutido sobre como a IA pode acabar com nossos empregos. Por um bom tempo, ignorei esse papo, a maior parte parecia puro bu11SH1T. Eu já tinha estudado redes neurais e conhecia o básico sobre LLMs, Machine Learning, Deep Learning, Processamento de Linguagem Natural e Sistemas Especialistas. Já tinha testado algumas ferramentas de IA generativa, mas nada me impressionava: eram bugadas, cheias de "delírios" e bem limitadas.
No ano passado (2024), voltei a estudar o tema com mais atenção. Muita coisa evoluiu, houve avanços relevantes, mas ainda assim, nada que indicasse uma substituição real de um Software Engineer, como várias manchetes sugeriam na época.
Desde então, venho acompanhando de perto, fazendo testes e experimentos, tentando entender melhor como essa tecnologia pode impactar nosso dia a dia. E foi assim que surgiu a ideia deste experimento: utilizar 100% IA para modificar o visual do meu site pessoal (rafaelhs-tech.com). O objetivo era simples: mudar apenas o tema visual do site, vamos ao caso.
Stack
Criei meu site pessoal em 2021 usando Angular (versão 7 ou 8, não lembro ao certo). A estrutura era básica, com a interface separada em componentes e uma pegada visual meio “espaço sideral”.
Como era
Essa era a versão original. A jornada com os agentes de IA começou com o Claude 3.7. Meu primeiro prompt foi algo assim:
“Essa é uma aplicação Angular XX e quero alterar o estilo visual com uma temática cyberpunk. As pastas estão organizadas por componentes, e cada componente representa uma página.”
Claude analisou as páginas, identificou os arquivos SASS, começou a sugerir mudanças... mas aí começou a delirar: criou arquivos em React dentro de um projeto Angular.
Tentei corrigir, mas ele insistia. Sempre surgia algo quebrado, arquivos fora do padrão, ou partes em React. Resultado: joguei tudo fora e recomecei do zero.
Dessa vez, fui mais específico: informei a versão do Angular, a estrutura de pastas, arquivos relevantes, etc. O resultado? Visualmente um pouco melhor, mas o site estava todo quebrado. Páginas desalinhadas, estilizações inconsistentes... e o pior: o código estava uma bagunça.
Esse tipo de resultado era recorrente. Para quem não percebeu: hoje em dia, misturar HTML, CSS e JS desse jeito é má prática em projetos modernos.
Não foi exatamente uma surpresa, mas reforçou uma verdade: esses agentes não têm noção real de boas práticas. Continuei com Claude 3.7 por mais um tempo, mas comecei a me irritar. Pedia uma coisa, ele fazia outra. Foram mais de 15 prompts para alinhar um botão. Chegou um ponto em que seria mais fácil eu mesmo resolver, mas eu queria simular a experiência de um usuário sem conhecimento técnico.
Também testei com o CodeLLM, mas surgiu outro problema: ele não mantém histórico muito longo. A cada nova tentativa, se o prompt quebrava, era necessário recomeçar do zero, sem memória do progresso anterior.
Delírios comuns que enfrentei com Claude 3.7:
- Criava coisas que eu não pedi
- Não conseguia desfazer alterações
- Deletava tudo e começava do zero em loop
Troquei então para o Claude 3.5, e o comportamento foi mais estável. A IA seguiu os comandos com mais precisão. Continuei criando prompts, ajustando o layout e cheguei neste resultado:
Como ficou
Após cerca de 40 prompts, cheguei a um visual legal. Mas o código continuava problemático: mistura de CSS com SASS, JS no meio do HTML, nomes de arquivos esquisitos, comentários inúteis... nada muito aproveitável. Decidi então testar outras LLMs: Gemini 2.5, GPT o1, GPT o4mini. O resultado foi o mesmo: frustração, e me gerou um resultado bem diferente cada tentativa, que era esperado também.
Reflexões
Sem dúvida, a IA está mudando a forma como programamos, estudamos e até pensamos em soluções. Mas substituir um engenheiro de software? Ainda estamos bem longe disso.
Vejo manchetes tratando as LLMs como se fossem o “nirvana do desenvolvimento”, mas, na prática, não é bem assim. Algumas observações:
- Em nenhum momento editei o código manualmente, mesmo sabendo como corrigir. Isso faz diferença.
- O projeto era em TS, SASS e HTML, um cenário comum e bem documentado. Mesmo assim, a IA cometeu muitos erros. Imagine isso num backend com Elixir, Clojure ou Crystal, não funciona muito bem, eu já tentei.
- A qualidade do código gerado é baixa. Funciona, mas exige bastante retrabalho.
- Prompts vagos geram respostas vagas, parece óbvio, mas um usuário comum não vai saber ser tão específico.
- O custo final ficou em torno de US$ 14. Se eu não tivesse refeito do zero algumas vezes, cairia para uns US$ 8 ou 9.
Conclusão
Depois dessa experiência, posso afirmar: a singularidade está longe. LLMs são, no fim das contas, input de texto → output de texto. Claro, há muito acontecendo entre esses dois pontos, mas não existe “inteligência” real envolvida.
Se você repetir o mesmo prompt, os resultados podem mudar (Não deterministico), as LLMs não escolhem sempre a palavra mais provável é uma base probabilistica, algumas outras ténicas de top-k ou top-p podem mudar o resultado, mas sim, isso eleva a régua para tarefas simples, o que pode impactar profissionais mais iniciantes, mas tudo depende do contexto.
Fico imaginando um cenário com backend, BFF, Terraform, CI/CD... ou mesmo microserviços onde uma mudança gera efeitos colaterais em outros pontos. A chance de virar uma bagunça é alta. Conversei com amigos da área de mobile, e eles confirmaram: lá, a situação é ainda pior, acredito que no contexto web é onde funciona melhor.
Cabe a nós acompanhar essa transição e adaptar nosso workflow. Eu, por exemplo, uso IA todos os dias, para estudar, escrever documentos, criar PRDs, MRDs, diagramas e etc. Mas ainda está longe de resolver muitas questões sozinho.
Se você curtiu essa reflexão, comenta aí e compartilha sua experiência com LLMs.
Do mais, até mais!
Top comments (0)