Minha experiência de 1 mês usando IA para codar
Nessas últimas semanas eu entrei numa febre de usar IA para programar produtos e tem sido algo transformador. Já tá rolando até um termo hype pra isso, o chamado "vibe coding".
Vibe coding é você codar, programar, construir produtos por meio de um diálogo com os LLMs, onde você descreve o problema, a forma como você pensou em solucionar e a IA faz a parte mais mão na massa de gerar o código para você.
Ao longo desse último mês fui a fundo no vibe coding e aqui abaixo estão os 3 pontos principais da minha experiência até então.
IA desbloqueou uma forma totalmente diferente e mais rápida de aprender a programar
Aprender a programar é tipo aprender matemática na primeira série do fundamental: Primeiro você aprende a somar. Depois, multiplicar. Só depois você aprende que tudo isso é necessário pra saber álgebra e assim vai, sempre ficando mais complexo.
Mas no meu caso, eu já tinha coisas na minha cabeça que eu queria construir, mas que eu precisava saber trigonometria quando eu não sabia somar. E ir da soma à trigonometria era uma curva de aprendizagem muito longa - e chata.
Com IA é totalmente diferente, porque ela te ajuda a dar um pontapé inicial na sua ideia e você pode usar o seu próprio código pra aprender a codar.
É só perguntar pra IA o que cada parte do código faz e, se precisar, pedir para a IA te explicar de forma cada vez mais básica, até chegar no seu nível de entendimento. Esse tipo de ensino contextualizado com teoria + prática eu acho que é um dos grandes saltos que a IA trouxe para essa disciplina de "aprender a codar"
Com IA, você faz uma parte de orientação e curadoria
Orientação porque você precisa ter bem na sua cabeça quais são os "blocos" que você quer construir. Isso exige um exercício lógico bem grande. Eu já me peguei algumas vezes fazendo aqueles flowcharts para explicar quais ações e condicionais eu esperava daquela parte do produto. Apesar de você não estar usando a lógica para programar, você usa muito a lógica pra direcionar o LLM.
Curadoria porque você ainda precisa levar a melhor informação para que a IA possa fazer o que você está pensando. Por exemplo, Se você está trabalhando na parte de login e criação de conta do seu aplicativo e está usando o Supabase, mas não está passando a documentação da ferramenta nos prompts, é muito mais provável do modelo de IA não ter o melhor output, gerar um código pior e você demorar mais para implementar suas funcionalidades. Hoje, essa tem sido a stack que eu tenho usado para fazer meus projetos
Cursor AI como a ferramenta de IA para codar, usando o claude 3.5 ou 3.7 como LLM;
NextJS como framework do projeto, por eu já saber um pouco de JavaScript e ser um framework bem conhecido;
Supabase como banco de dados e autenticação do projeto;
Com IA, você não precisa saber código, mas você meio que precisa saber código
Tá, a grande proposta de valor de IA pra código é que você não precisa saber programar para construir produtos do zero, ok. Mas, se você tem uma noção básica de estrutura de projetos e de código, a sua vida é infinitamente mais fácil.
Por exemplo, no meu primeiro projeto com o Cursor, eu sabia zero de NextJS, um framework pra criar projetos mais rápidos. Então, eu dependia 100% da IA para identificar erros e corrigir. Só que chega num momento em que a IA identifica um erro, tenta corrigir e fica num loop eterno tentando arrumar de diferentes formas. Ou seja, o erro não é exatamente aquele, então como você resolve?
Em 30 minutos vendo um tutorial de NextJS, descobri que as páginas do seu app são as pastas que você cria dentro do seu projeto. Ou seja, se você tem uma pasta "app/campanhas" no seu projeto, quando você colocar ele no ar essa sera a sua página "site.com/campanhas". Só essa informação já mudou a forma como eu direciono a IA para fazer correções de erro mais contextualizadas. Aí você começa a aprender sobre rotas de API, começa até a entender um pouco do código, o jogo muda totalmente.
Se você tá afim de começar no vibe coding, essa é a minha sugestão de caminho:
Começa a brincar com o https://lovable.dev/. O Lovable é uma ferramenta de criação de código na nuvem, então você não precisa instalar um monte de pacotes no seu ambiente local, como o Cursor precisa.
Depois de criar a parte do frontend do seu app, crie uma conta no Supabase e veja como ligar seu banco de dados no seu app do Lovable.
Se você quiser se aprofundar ainda mais em código e entender a estrutura para poder orientar melhor e entender o que está acontecendo dentro do seu projeto, você pode fazer um cursinho de código. Eu tenho feito o codefa.st, um curso do Marc Lou, que é um indie hacker famoso, então é um curso de programação focado em botar produtos no ar.
Destaques da semana do Growth Digest
"Dear Marketers, Should your founder be an influencer? Autora: Emily Kramer from MKT1. A edição discute se fundadores devem se tornar influenciadores no LinkedIn, destacando a importância da autenticidade e engajamento. Os hosts oferecem uma checklist para selecionar candidatos ideais, estratégias para gerar conteúdo e como transformar engajamento em receita, além de compartilhar cases de sucesso.
The $32B lesson about putting yourself out there Autor: Tom Orbach. Na última newsletter, Tom Orbach compartilha como ganhou 25.000 seguidores usando uma estratégia de postagem sem riscos, destacando que o medo de falhar é irracional. Ele enfatiza a importância de um cronograma de postagens consistente e como cada tentativa gera aprendizado, favorecendo o crescimento exponencial nas redes sociais.