Como a IA multiplica sua competência e sua Incompetência
Olá! Boa noite!
Este Post é uma breve conclusão e discussão que gostaria de ter com um humano de preferência. Nos ultimos 4 meses, utilizei o cursor para programar, inicialmente de maneira parcial e depois de algum tempo totalmente vibe coding. No último mês gastei 200 dolares incluindo o plano de 60 dolares do editor, ou seja entrei de cabeça no vibe coding, e tirei algumas conclusões sobre:
Impacto Inicial
Muito se fala sobre impactos na codebase e etc, mais eu creio que o problema não esteja totalmente ai, pois lembro de quando comecei a utilizar o cursor somente como autocomplete, e era alienigena, ajudava muito e o código era fantastico, inclusive quando comecei a usar o chat em algumas features mais urgentes ou que eu tinha tudo planejado, o código ficava exatamente como eu faria. O problema começou quando comecei a aplicar em larga escala (falo de escrever no máximo 50 linhas de código por dia), reparei que não era somente o código que ficava ruim e sim, isso acontecia:
- Eu não tinha respostas imediatas a bugs, e oque levaria 5 min antes agora leva 25 pois estou totalmente dependente de um terceiro e minha melhor resposta seria oque a IA falasse (em projetos maiores ela não acertava com frequência)
- Eu me sentia e me sinto extremamente inseguro em fazer qualquer alteração em módulos com acoplamento alto (geralmente módulos de maior importância), porém achava que precisava da velocidade da IA.
- Eu não achava valioso estudar conhecimento técnico de framework ou linguagem ou escrever código na mão, pois "A IA faz isso eu sou engenheiro e comando a maquina".
Remédios
Depois de se ferrar algum tempo eu decidi começar a estudar oque os outros faziam para conter esses efeitos, aí conheci ferramentas de IA de primeira linha como:
- Spec Driven Development: não pratiquei ele de maneira totalitaria devido aos prazos e tempo curto entre uma iteração e outra, porém é excelente! utilizei o plans do cursor e é incrivel
- Debug Mode: testei somente no cursor contudo creio que tenha em outras ferramentas, ela é absolutamente incrivel para resolver bugs rápidamente em códigos de terceiros.
- Skills: está eu comecei a utilizar há pouco tempo, mais é incrivel, realmente deixa o agent mais acertivo, contudo tem a mesma caractéristica limitante das anteriores.
- Testes Automatizados: Tanto para evitar regressão quanto para o agente se guiar ao ler e roda-los, percebi que em muitos cenários caso você não queira revisar todo o código (funcionalidades de crud ou secundarias), é interessante uma abordagem de TDD e revise os testes de caminho felizes.
- Type-Safety: Esse ponto poucos tocam, contudo ultimamente isso tem feito tremenda diferença pois quando o modelo sabe os tipos e recebe erros ao quebra-los o resultado em tempo de execução tende a ser melhor, eu utilizo PHP (e TS) uma linguagem interpretada então necessito de uma ferramenta de analise estatica como o PHPSTAN.
Observe que essas 5 ferramentas consistem em: trazer o contexto certo ao agente. E só! Baseado nisso a limitação delas seriam: o Tamanho da Janela de Contexto, Contexto que a ferramenta passa e Contexto que você passa.
Conclusão
Após toda essa analise, observei que assumindo as três váriaveis limitantes que citei acima, conclui que:
- Melhorar o tamanho da janela de contexto é terceirizavel e na maioria dos casos a única opção, então aqui a maioria de nós estamos fadados a aguardar o avanço tecnológico.
- O contexto que a ferramenta passa para a LLM (prompts e tools) é algo genérico para uso geral e não uma bala de prata e encher sua ferramenta de MCPS ou Skills (Skills são mais otimizadas nesse caso) pode consumir sua janela de contexto (recurso limitado do qual você não tem controle).
- O contexto que você passa é um multiplicador e direcionador, pense que antes você pilotava um carro comum, e que tinha mais tempo de pensar com clareza, então se errasse a direção você conseguiria corrigir com uma maior margem de erro e os erros seriam mais claros, porém do dia pra noite você pilota um F-22 Raptor e agora um erro de direção de 5 min pode custar 225 KM.
Esse post tem um proposito opnativo sem dados quantitativos, porém gostaria de saber se discordam ou concordam com algum ponto.