Ja constatei que ampliar o horizonte de atenção da IA antes da resposta ajuda absurdamente a se chegar na melhor solução. Ou seja, fazer ela ter consciência do que está ao redor da sua pergunta.
Vou dar alguns exemplos:
- Descreva o cenário e o problema: ao falar de race condition, explique seu ambiente, sua infra, a razão do paralelismo (se é proposital). Por exemplo: vc pode estar escalando horizontal...
- Quando o preço do erro é alto explore alternativas: "se hipoteticamente a solução proposta fosse inviável no momento, quais outros caminhos vc sugere?" O Claude muitas vezes complementa com coisas do tipo "isso me fez considerar algo que muda minha resposta anteriror..."
- E a melhor de todas: "estou com o problema X. O mercado ja resolveu este problema de alguma forma? Se sim, no final avalie isso frente ao meu código"
Outras pequenas dicas:
- Em refatoração ou mudança em ponto crítico: "compare essa atualização com a vetsao anterior e liste para mim os potenciais pontos de falha introduzidos". Mas solicite listar, nao corrigir. Assim vc pondera o risco.
- "Revise as alterações realizadas em busca de potenciais bugs ou falhas de segurança que podem ocorrer ao entrar em produção". Isso aqui faz ele considerar que o ambiente que ele validou é dev mode, e em produção é diferente. Erros que sao pegos: infra é diferente; Subir back depois do frontend quebra; variáveis de ambiente; versoes de db, de server, backfill necessário, bump de campo novo necessário...
- Se o terreno é sensível, solicite para ele apenas listar as possibilidades ou a solução proposta. Pra vc ter chance de avaliar.
Cereja do bolo: comece com "com base no meu código, ..." Isso obriga a ancorar a resposta no que vc ja tem. Em muitos casos isso é muito útil.
É honesto dizer que eu nao decorei tudo isso. Isso é tudo pensado "on the fly", com base no primeiro princípio: ampliar o horizonte antes de pedir a resposta.