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

Usando IA de forma séria, a IA Não Nivelou o Jogo: Ela Aumentou a Distância Entre Sênior e Iniciante. Atualmente podemos saber o nível de experiência de um desenvolvedor apenas pela sua opinião sobre IA – Artigo

IA, lógica pura e o fim do programador de sintaxe

Hoje eu quero falar de um paradigma que, na minha visão, pouca gente está enxergando com clareza quando discute IA e programação. E para isso eu vou partir de uma ideia que não é uma opinião, nem “filosofia barata”, mas algo que podemos tratar como regra matemática.

Na física existe o chamado princípio da mínima ação (ou princípio de Hamilton), que, em resumo, diz que sistemas físicos tendem a seguir o caminho em que uma certa grandeza — a ação — é mínima ou estacionária. Traduzindo grosseiramente: quando você olha para muitos fenômenos físicos, o que acontece de fato é, de certa forma, o caminho “mais econômico” do ponto de vista matemático.

Em paralelo, em biologia e em termodinâmica de sistemas vivos, existe toda uma linha de estudo mostrando que sistemas biológicos evoluem otimizando eficiência de uso de energia: organismos que usam energia de maneira mais eficiente tendem a se sair melhor, sobreviver mais e se reproduzir mais.

Ou seja: não é só um “jeitinho da natureza”. Há um padrão matemático/otimizador por trás dessas coisas. Vou chamar isso aqui, ao longo do texto, de regra matemática de eficiência mínima: sistemas complexos tendem a convergir para soluções que, dentro das restrições, são “boas o bastante” gastando o mínimo de esforço possível.

E é aqui que eu quero conectar isso com a IA moderna.

Antes e depois da IA: o que realmente mudou na programação

Antigamente, o problema central da programação era, basicamente, a máquina. Se você errasse uma vírgula, um ponto e vírgula, um parêntese, podia perder horas no debug. O foco era puramente sintático: falar a língua da máquina sem escorregar.

Esse era o jogo: humano x máquina.
A gente sofria com:

detalhes de compilador ou interpretador,

erros bobos de sintaxe,

configuração manual de ambiente,

dependências, build, etc.

Hoje, esse não é mais o problema principal. A máquina já é muito boa em entender sintaxe. A IA é excelente em cuspir código sintaticamente correto em dezenas de linguagens diferentes.

O paradigma mudou:

Antes: o programador era um tradutor de ideias em linguagem de programação (com muita atenção à sintaxe).

Agora: o programador que usa IA virou um programador de lógica pura.

Ou seja, a IA resolve o “como escrever isso em Python/JS/Go/qualquer coisa”.
O problema que sobra é: o que exatamente deve ser feito e em que contexto.

A lógica substituiu a sintaxe (e ficou mais difícil)

Dá pra resumir assim:

Hoje o programador já não é mais, principalmente, um programador de linguagem. Ele é um programador de lógica pura.

E aqui tem um detalhe importante: programar com IA não ficou mais fácil em termos de conhecimento. O que ficou mais fácil foi digitar código.

Para usar IA de forma séria em programação, você precisa:

Ter uma visão completa do sistema que está projetando;

Conhecer a stack, as bibliotecas, o ambiente de execução;

Entender infraestrutura, rede, protocolos, servidores, segurança;

Conseguir descrever essa lógica de forma clara para a IA.

Se você não domina o ambiente, não conhece bem as bibliotecas, não entende as camadas de rede, de sistema operacional e de hardware que estão por baixo, você não consegue escrever uma lógica perfeita na forma de instruções para a IA. E, sem lógica perfeita, a IA vai “completar as lacunas” da forma mais econômica possível — e é aí que nascem os erros.

Não é só sobre o código: é sobre o ambiente inteiro

Vamos pensar num exemplo concreto.

Você quer montar um servidor web usando um agente de IA.
Hoje isso já é bem possível: você pode pedir para a IA:

configurar um Ubuntu Server,

instalar e configurar um Apache ou Nginx,

subir um serviço, colocar SSL, configurar virtual hosts, etc.

Só que, se você não entende:

como funciona um servidor Linux,

conceitos básicos de rede (porta, host, DNS, roteamento, firewall),

como o Apache ou o Nginx lidam com vhosts, upstream, proxy, cache,

permissões de arquivo, usuário, grupo, segurança básica,

então você não tem como descrever a lógica do sistema de forma completa para a IA.

Você até pode pedir:

“Configura um servidor web pra mim com HTTPS.”

Mas se não detalhar a lógica, o fluxo, as restrições, a arquitetura, a IA vai:

montar algo que parece funcionar,

mas talvez com brechas de segurança,

ou com uma arquitetura frágil, difícil de escalar,

ou com configurações padrão que não são adequadas pro seu contexto.

E é aí que entra a tal regra matemática aplicada à IA.

Como a IA “pensa”: previsão estatística + eficiência

De forma bem simplificada, uma IA de linguagem (tipo os grandes modelos de linguagem que a gente usa hoje) funciona assim:

Ela recebe um prompt (seu pedido);

Usa o conhecimento que tem (treinamento + contexto atual);

Gera uma previsão estatística do próximo token (palavra, pedaço de palavra, símbolo, etc.);

Vai estendendo isso até completar uma resposta.

Ou seja, ela está sempre tentando responder:

“Dado tudo o que eu já vi, qual é a continuação mais provável e mais coerente para esse texto?”

Mas, além de probabilidade, na prática, a implementação desses modelos é cheia de técnicas de otimização de eficiência:

arquiteturas mais compactas,

quantização de pesos,

podas de modelo,

mecanismos de inferência adaptativa,

técnicas específicas pra reduzir custo de energia e latência,

tudo isso pra fazer a mesma coisa gastando menos recurso computacional.

Isso não quer dizer que a IA “obedece literalmente” ao princípio de mínima ação da física. Mas quer dizer que, do ponto de vista de engenharia, ela é constantemente empurrada em direção a soluções que:

sejam boas o bastante,

funcionem na maior parte dos casos,

e custem menos energia/computação.

Ou seja: na prática, devido a ser criada por um organismo vivo (o humano) ela segue uma espécie de regra matemática de eficiência:

“Dado o que foi pedido, produzir uma resposta plausível, estatisticamente coerente, da forma mais simples possível dentro das restrições.”

E isso tem uma consequência direta:

Se você pede algo sem especificar bem a lógica,
a IA vai tender a te devolver a solução mais simples e barata que se encaixa mais ou menos no pedido.

É por isso que, quando o prompt é vago, o resultado parece “genérico”, “rasa” ou “errado”.

Por que os sêniores “voam” com IA e os newbies sofrem

Agora entra o ponto mais polêmico, mas que, na prática, eu vejo assim:

Para profissionais extremamente experientes,
a IA virou uma ferramenta de produtividade sem precedentes (e eu falo com conhecimento de causa).

Um full-stack sênior hoje, usando bem IA, consegue:

produzir sozinho o que antes exigia um time inteiro,

com muito mais velocidade,

com muito mais consistência,

porque ele sabe:

o que pedir,

como descrever a lógica,

como revisar o resultado,

onde a IA costuma “escorregar”.

Em outras palavras:

Um especialista + IA boa = produção absurda.

E aqui vale enfatizar a balança totalmente desequilibrada que se formou:

de um lado, um sênior que entende a stack, a infraestrutura, os padrões de arquitetura, segurança, negócio,

do outro, o iniciante que ainda está tentando decorar sintaxe, conceitos básicos e não enxerga o sistema de forma inteira.

Para o sênior, a IA funciona como um multiplicador brutal:

ele delega à IA tudo o que é mecânico, repetitivo, chato,

foca o cérebro só na lógica, na arquitetura, nas decisões difíceis,

e passa a ter uma capacidade de entrega que, na prática, substitui vários desenvolvedores mais juniores juntos.

Já para os newbies, é quase o oposto, de forma inversamente proporcional:

Eles não têm a visão lógica completa,

Não entendem bem infraestrutura, segurança, padrões de arquitetura,

Muitas vezes nem dominam bem uma linguagem do início ao fim.

O que acontece?

Tudo o que eles produzem com IA precisa ser revisado,

Eles não conseguem saber se a resposta faz sentido no todo,

Caem em armadilhas clássicas de “copiar e colar código que compila, mas está errado na lógica ou na segurança”,

Gastam mais tempo apagando incêndio, ajustando e retrabalhando do que se tivessem feito algo muito menor, na mão, dentro da zona de conforto deles.

O resultado prático dessa balança é:

Quanto mais experiente você é, mais a IA te empurra pra cima.

Quanto menos experiência você tem, mais a IA expõe as suas lacunas.

Em muitos casos, pra um iniciante, seria mais eficaz:

Sentar e escrever ele mesmo um sistema pequeno,
sem IA,
do que tentar orquestrar algo complexo com IA sem ter a base lógica.

Porque, sem base, a IA vira uma máquina de gerar complexidade que ele não consegue controlar.

A opinião sobre IA como termômetro de experiência

É aqui que entra a provocação do título:

“Atualmente podemos saber o nível de experiência de um desenvolvedor apenas pela sua opinião sobre IA.”

Obviamente isso não é uma fórmula exata, mas, na prática, tem um padrão que aparece o tempo todo:

Quanto mais um desenvolvedor reclama que “a IA só erra”, “não serve pra nada sério”, “só faz código bugado”,

maior a chance de ele estar esbarrando nas próprias lacunas de entendimento de lógica, arquitetura e contexto — e culpando a ferramenta.

O sênior, quando a IA erra, tende a pensar algo como:

“Ok, o prompt estava ruim.”

“Faltou contexto.”

“Ela não tem informação suficiente sobre essa parte da infra.”

“Esse tipo de decisão arquitetural não dá pra delegar direto.”

Ou seja, ele enxerga o erro como efeito colateral de uma lógica mal especificada, e não como um “defeito moral” da IA.

Já o iniciante, muitas vezes, faz o caminho inverso:

Pede algo super vago ou impossível,

Não consegue avaliar o que recebeu,

Se perde nos detalhes,

E conclui: “IA não funciona.”

Por isso, em muitos debates de fórum, a forma como alguém fala de IA acaba entregando bastante coisa:

Quem domina lógica e ambiente costuma falar de limitações, escopo, casos de uso, riscos e boas práticas.

Quem não domina costuma falar de IA em termos de decepção genérica: “não presta”, “só serve pra tutorial”, “vai sempre precisar escrever tudo do zero”.

Não é que a opinião sobre IA seja um “medidor oficial de senioridade”, mas ela revela o quanto a pessoa:

entende que a IA é uma extensão da lógica humana,

aceita que precisa descrever muito bem o que quer,

assume responsabilidade pelo design do sistema,

ou prefere jogar a culpa em cima da ferramenta.

Em resumo:

A forma como o dev reclama (ou não) dos erros da IA costuma revelar se ele está brigando com a sintaxe ou lidando conscientemente com a lógica.

O ruído nas redes: “IA não funciona”, “programador nunca vai morrer”

Como a grande maioria do mercado ainda é iniciante ou intermediário, quem é que mais fala nas redes sociais, fóruns, YouTube, etc.?
Justamente essa maioria.

E aí surge o coro:

“A IA erra muito.”

“A IA não serve pra programar de verdade.”

“Isso aí é só pra protótipo.”

“Programador nunca vai morrer.”

“Sempre vai precisar de desenvolvedor humano.”

Na minha visão, isso é, no mínimo, míope.

Eu acredito, sim, que o programador, do jeito que a gente conhece hoje, vai deixar de existir.
Não amanhã. Mas no horizonte em que a lógica das IAs for maturando.

Quando tivermos:

motores de IA mais avançados,

treinados fortemente em lógica (não só em texto),

e profundamente ajustados ao contexto de uma stack específica,

a função do programador como “escritor de código” perde totalmente o sentido.
O que sobra são:

arquitetos de sistemas,

pessoas de produto com visão técnica,

especialistas que definem regras, contexto, objetivos, restrições.

Mas esse papel já é outro: não é mais o “dev que escreve código linha a linha”.

O período de transição: 5–6 anos de vantagem pros sêniores

Eu enxergo os próximos cinco a seis anos como um período de transição mais ou menos assim:

Agora até ~5–6 anos

IAs ainda dependem muito da lógica que o humano fornece;

Programadores sêniores e full-stack ganham uma vantagem brutal de produtividade;

Empresas percebem que um especialista bem equipado com IA entrega mais do que um time cheio de juniors.

Efeito no mercado

Diminui a necessidade de contratar muitos iniciantes;

A contratação de gente realmente experiente continua forte;

A porta de entrada para o mercado júnior fica bem mais estreita.

Depois desse período

Com o avanço dos motores lógicos de IA,

até a demanda por sêniores tende a cair,

porque boa parte da lógica passa a ser capturada e automatizada pelos próprios modelos.

Ou seja:

A fase em que o sênior “brilha” com IA é real, mas não é eterna.

O próximo paradigma: IAs treinadas no conhecimento lógico de cada empresa

Tem mais um ponto que eu acho fundamental:
modelos generalistas x modelos específicos de empresa.

Os modelos de linguagem generalistas (como os públicos na web):

vão continuar existindo,

ótimos pra uso geral, estudo, prototipagem, etc.

Mas dentro das empresas, eu vejo uma tendência muito forte para:

treinar modelos próprios,

em cima do conhecimento específico daquele negócio.

E não é só um “banco de FAQ”. É algo muito mais profundo:

Como a empresa funciona,

Quais são seus processos internos,

Quais leis e regulações se aplicam ao negócio,

Como é o dia a dia dos funcionários,

Como são modelados os dados,

Como o produto é pensado e evolui.

Isso tudo vira um banco de conhecimento lógico interno — que, aliás, é dificílimo de construir. Cada empresa tem o seu, com suas exceções, regras, gambiarras históricas, jeitos únicos de operar.

Quando esses modelos internos estiverem maduros, o fluxo passa a ser:

A empresa tem uma IA que entende profundamente o negócio;

Essa IA gera a lógica do sistema em cima desse conhecimento;

A partir dessa lógica, outras IAs ou ferramentas geram código, infra, pipelines, testes, etc.

Nesse cenário, o “full stack” como a gente conhece hoje é cada vez menos necessário. O papel humano migra para:

definir o que o negócio precisa,

ajustar políticas, regras, exceções,

supervisionar riscos, ética, conformidade,

e muito menos para escrever código.

Conclusão: não é a IA que erra, é a lógica que não foi escrita

Resumindo tudo:

Existe uma regra matemática de eficiência por trás de muitos sistemas naturais e tecnológicos;

A IA moderna embarca essa lógica de otimização, tanto no modelo quanto na engenharia que roda em volta dele;

Quando você não descreve a lógica completa de um sistema, a IA vai buscar a solução mais simples e mais barata que pareça plausível — e é isso que, muitas vezes, chamamos de “erro da IA”;

Para profissionais extremamente experientes, a IA já permite um salto de produtividade absurdo, a ponto de um sênior substituir times inteiros em vários contextos;

Para iniciantes, o uso de IA sem base sólida torna tudo mais difícil, não mais fácil;

Estamos num período de transição em que:

juniors sofrem para entrar,

sêniores surfam uma onda de alta produtividade,

mas lá na frente até o espaço dos sêniores tende a diminuir;

O futuro provável dentro das empresas é o de modelos de IA próprios, treinados no conhecimento lógico interno, que vão automatizar cada vez mais a própria programação.

No fim das contas, a IA não “erra” porque é burra.
Ela erra porque segue exatamente a regra matemática de eficiência com a lógica incompleta que a gente oferece.

E o novo papel de quem trabalha com tecnologia é justamente esse:
deixar de ser apenas programador de sintaxe e se tornar, de fato, arquiteto de lógica.

Carregando publicação patrocinada...
3

Eu sou programador iniciante e sempre pensei exatamente dessa forma. Eu nunca fui o tipo de pessoa que coloca a culpa na IA. Na verdade, eu gosto bastante de escrever prompts bem contextualizados.

Quando vou pedir para a IA alterar ou adicionar algo novo, eu sempre contextualizo tudo antes. Gosto também de montar um pequeno plano com o que vai ser feito, e prefiro trabalhar passo a passo. Não gosto de sair copiando e colando várias mudanças de uma vez só. Prefiro dividir para que a IA responda cada etapa com mais clareza.

Como eu ainda sou júnior, muitas vezes eu peço para a própria IA me perguntar sobre coisas que eu não especifiquei e que ela precisa saber antes de me dar uma resposta. Isso me ajuda a enxergar detalhes que eu estaria ignorando e que são importantes na lógica do sistema.

Então eu concordo totalmente com essa visão: a IA não resolve tudo sozinha, e se você não passa a lógica completa, ela realmente devolve algo simples demais. Por isso eu tento sempre preencher o máximo de contexto possível, e quando eu não sei direito o que falta, eu peço para ela me guiar.

Texto escrito por mim, com correções de ortografia feitas pela IA.

1

Porr* escreveu um livro. 🤣

Mas falando serio eu fiz exatamente isso: criei um home lab e servi dezenas de containers, projetos e ideias que eu tinha. Tudo com apoio de IAs. Os conceitos (a maioria) aprendi com as proprias IAs que iam sugerindo ajustes de seguranca e performance. Tive wue corriyir na mao muita coisa aonde aprendi mais a mexer em Linux (inventei de usar Archlinux, apanhei muito aliás...), entendi varios paradigmas e experimentei muita coisa que deixei de lado porque eneltendi que nem precisava. Em 6 meses eu aprendi muito mais de infra e devops mais do que em meu trabalho. Vou substituir um engenheiro de DevOps? Nao. Mas tenho uma visão muito melhor do que posso mexer, melhorar e até como ajudar outros equipes e outras areqs de TI. IA é uma ferramenta incrivel pra nós e é isso.

2

Bom post, faz abrir a mente para não se tornar apenas um desenvolvedor de código e sim um interpretador de problemas, com muita logica e entendimento de infraestrutura e tudo mais

2
1

Excelente post parabéns eu tenho uma estrutura de relatorios que usam pupeteer para transformar o html em pdf e armazenar, em alguns pontos do processo ele demora cerca de 2 segundos a geracao do relatorio em si era rapida demais mas tinha alguma parte do processo que demorava 1 ou 2 segundos e isso me incomodava pedir para a IA mapear cada parte do processo da geracao pra mim em tempo e quantidade de recursos usados, ela me gerou um script que rodava paralelo ao meu sistema e enteo foi que quando eu pedi para me explicar oq estava acontecendo, ela disse como funciona a estrutura do pupeteer funciona por debaixo dos panos entao foi onde ela me propôs criar um pool de navegadores que eram criados e destruidos sob demanda, coisa linda o meu entendimento da estrutura do puppeteer aumentou e consegui uma solução que me custa pouca RAM adicional, então é saber o o que e o por que, que a IA nos auxilia muito, sucesso a todos