Executando verificação de segurança...
3

[CARREIRA] Uma nova habilidade do DEV: pensar bem para conseguir explicar bem

Meus 2 cents,

Estou experimentando meus primeiros desenvolvimentos 100% sem mexer no codigo, so interagindo com o agente de codificacao (codex, antigravity, copilot)

  • OK, confesso um certo desconforto em nem ver que tipo de macarronada o agente gerou, mas fecho os olhos, tapo o nariz e sigo em frente

  • ATENCAO: estou usando isso em sistemas internos e pontuais, onde seguranca NAO EH uma preocupacao - so automatizando certas coisas que nao faria na mao porque tomariam um tempo que o custo/beneficio nao justifica, mas que gerando em 2 horas de conversa com a IA torna viavel.

Um efeito colateral (positivo) curioso do uso de agentes de codigo e IA no desenvolvimento eh que uma necessidade esta ficando evidente: saber expressar claramente o que voce quer que o sistema faca.

Antes, grande parte do trabalho do DEV era traduzir o pensamento diretamente em codigo.

O fluxo era interno:

  • pensar -> codar -> testar -> ajustar.

Confesso que eu mesmo tinha um certo "vicio" de comecar a codificar com apenas as linhas gerais do que desejava.

Com agentes de codigo, parte desse processo mudou e agora existe um intermediario.

O fluxo muitas vezes vira algo como:

  • pensar -> explicar -> avaliar o resultado -> ajustar a explicacao.

Ou seja, o DEV passa a conversar com o processo de desenvolvimento.

E isso revela uma coisa interessante: as vezes a gente percebe que nao sabe explicar direito o que quer.

  • Quando a ideia esta vaga, o prompt fica vago.

  • Quando o prompt fica vago, o resultado tambem fica.

Lembra um pouco as reunioes do time para conversar sobre como esta avancando, e trocando ideias, com a vantagem que voce tem a palavra final (coloque uma risada tiranica de vilao do James Bond como fundo musical aqui - so quem ja foi voto vencido em reuniao de diretoria sabe o tipo de prazer e satisfacao obtido aqui ao ter o poder de decisao e ponto final).

E ai nasce um ciclo bem conhecido de quem ja tentou usar IA para programar sem clareza:

  • o DEV pede algo de forma imprecisa

  • o agente gera algo aproximado

  • o DEV corrige de forma igualmente imprecisa

  • o agente tenta ajustar

  • o sistema fica cada vez mais estranho

Isso vira uma espiral de frustracao.

Nao porque o agente ou a IA eh ruim, mas porque o pensamento nao estava bem formado a visao nao estava clara.

Programar sempre exigiu pensamento estruturado, mas a diferenca eh que agora isso ficou mais visivel (e exigente).

Para direcionar bem um agente de codigo, o DEV precisa aprender a:

  • decompor o problema

  • definir claramente o comportamento esperado

  • explicar restricoes

  • indicar contexto relevante

  • validar o resultado com criterio

Curiosamente, isso aproxima o desenvolvimento de outras atividades classicas da engenharia de software:

  • escrever especificacoes

  • documentar comportamento

  • descrever cenarios de teste

  • comunicar requisitos

Ou seja, algo que sempre foi importante, mas que muitos ignoravam: clareza de pensamento e comunicacao tecnica.

Talvez os agentes de codigo nao estejam mudando a natureza do trabalho, mas apenas expondo algo que sempre esteve la:

  • Quem pensa de forma confusa produz sistemas confusos.

A diferenca eh que agora isso aparece muito mais rapido.

Saude e Sucesso !

Carregando publicação patrocinada...
2

Acho que pode revisar o código de boa, abrindo tudo na IDE e conferindo. Apenas não altero se vejo algo errado; peço pro agente revisar e corrigir.

Mas é isso mesmo, desse jeito, siga em frente. E desapega!

2

Meus 2 cents extendidos,

Pois eh, nestes casos queria ver como seria sem nem olhar para o codigo.

Mas o foco do post nem era a questao de editar ou nao via IDE: era a necessidade de ser claro nas solicitacoes.

Hoje eh dia muito se discute sobre a perda de habilidade cognitiva pelo uso de IA, e o que detectei (pelo menos neste momento) foi o contrario: se voce nao for capaz de se comunicar com clareza, o resultado nao eh dos melhores.

Nao entrei ainda no merito de como adquirir esta habilidade (que normalmente os DEV mais antigos ja tem), mas de como isso vai um pouco na contra-mao do senso comum ate agora: "IA te deixa burro".

Ainda que eu tenha deixado de lado aspectos tecnicos especificos, tive de reforcar outros mais imediatos, como clareza e concisao.

Mas obrigado pelos comentarios !

Saude e Sucesso !

2

Acho que a tendência é que as ferramentas de revisão se aprimorem. Porque hoje quando compilo um programa Go, não confiro o código de máquina gerado. Claro que compilação é determinística e modelos LLM são estocásticos. Mas da forma como os modelos evoluem, eventualmente teremos a impressão de que é um quase-determinismo.

Até que não tô preocupado com perda cognitiva da codificação, porque tem tanta coisa que ainda preciso aprender agora usando IA. É um novo corpo de conhecimento que se cria pra gente.

2

OK, confesso um certo desconforto em nem ver que tipo de macarronada o agente gerou, mas fecho os olhos, tapo o nariz e sigo em frente

Se gerou uma macarronada é porque você não definiu arquitetura.

Se você fecha os olhos e segue em frente é porque você também não se preocupa com a qualidade do código

1

Meus 2 cents extendidos,

Quanto a qualidade, para os desenvolvimentos que estou fazendo de fato nao me importo: sao sistemas apenas internos, de uso pontual e muito especificos: entao nao ligo mesmo, so quero que funcione e resolva o problema que se propoe.

Nao recomendo esta abordagem para producao.

Quanto a macarronada, foi mais forca de expressao: como nem estou ligando para isso (nestes casos especificos) nem vi que tipo de zona esta sendo gerada - apenas que no passado distante (ou seja ano passado), algumas tentativas de geracao via agente criava codigo bem esquisito, mesmo indicado baselines via CLAUDE.md, AGENTS.md e etc.

Mas as impressoes que leio de um modo geral dizem que isso melhorou muito - mas como nao eh o foco agora, nem parei para analisar.

Mas obrigado pelo comentario !

Saude e Sucesso !