Hoje em dia, embora o vibe coding esteja na moda, parece que a conclusão do vibe coding geralmente acaba levando à necessidade de ter a capacidade de entender e modificar código.
Eu também não sabia absolutamente nada de frontend e dependia do vibe coding, mas acabei sentindo seus limites, então ultimamente venho aprendendo usando o Gemini.
Com a seguinte estrutura, estou aprendendo programação: orientação sobre a área que quero aprender - recomendação de projetos para estudar essa área - criação de um roadmap de acordo com o período desejado - organização dos resultados (tarefas) que devem ser produzidos em cada data - organização dos conhecimentos necessários para criar esses resultados por conta própria - geração de um documento diário com conhecimento + exemplos semelhantes à tarefa + a tarefa a ser entregue, com base nesse esboço - feedback após a entrega da tarefa
Pessoalmente, acho isso mais divertido do que os métodos de aprendizado tradicionais e, por exigir aplicação prática, sinto que a eficiência do aprendizado é boa. Fiquei curioso para saber se vocês já estudaram programação usando IA, então deixo aqui a pergunta.
7 comentários
Não cheguei a fazer isso montando um currículo, mas me ajudou quando quis aprofundar um pouco mais em áreas que eu já conhecia por alto. Principalmente em padrões muito usados, que levariam bastante tempo para eu pesquisar por conta própria; como os LLMs são especializados nisso, acabaram ajudando mais. Claro que também houve muitos casos em que foi necessário fazer validação cruzada.
Não sou muito favorável ao uso do que costumam chamar de vibe coding, mas acho que, desde que isso não vire apenas o hábito do "faz aí", pode ajudar bastante no aprendizado. Principalmente quando você precisa encontrar uma solução com urgência por falta de opção, ou quando não faz a menor ideia de como abordar o problema, acaba sendo algo pelo qual dá até para agradecer.
No processo de estudo do autor, acho que a parte mais importante é justamente o processo de organizar o conhecimento por conta própria. Ao vasculhar diretamente StackOverflow, tutoriais, exemplos e a documentação oficial, isso não só vira um treino para adaptar a situação dos outros à sua própria realidade, como também se torna um processo de acumular conhecimento de base e ampliar a visão. São coisas difíceis de obter com facilidade estudando com IA no estilo "organiza isso para mim".
Não para estudar programação com IA em si..
Mas, ao desenvolver backend em outra linguagem (Node) que eu não conhecia bem, vindo do Java existente,
ao usar IA, em vez de aprender por um livro.. como o feedback vai e volta mais rápido,
o desempenho no trabalho melhora mais rápido.
É programação, sim, mas já recebi ajuda ao resolver problemas de análise numérica. Quando resolvi problemas de análise numérica com CuPy, eu mesmo escrevi todas as funções, mas como estavam lentas, recebi ajuda para vetorizar as funções.
Vocês já tentaram estudar programação usando IA?
No trabalho, preciso lidar com processamento de streams TCP, então estou estudando Netty + RxJava. Até então, eu não conseguia entender por que
backpressuree observables hot/cold eram necessários, mesmo lendo a documentação oficial ou posts de blog.Quando defini por conta própria um problema real que queria resolver e fiz perguntas sobre ele, recebi explicações exatamente adequadas à situação e realmente significativas, então ficou muito mais fácil entender. Também é muito útil porque, em vez de confiar cegamente em código de exemplo, basta usar no aprendizado apenas o código que realmente funciona. Houve duas vezes em que senti que pagar 30 mil won por mês valia a pena; uma delas foi esse tipo de caso, e a outra foram perguntas ou reflexões sobre liderança de equipe e comunicação.
Acho que é necessário pagar pelo Copilot e aprender, conforme a necessidade, compreensão de contexto e linguagem, estruturas de dados, redes, bancos de dados e sistemas operacionais.
Se fosse eu, acho que escolheria o repositório do GitHub do lugar onde quero aprender, pediria para o
repomix, occ/codexou algo do tipo analisá-lo, e aprenderia rodando um loop de perguntas e respostas; se a situação permitisse, também faria PRs e repetiria esse processo algumas vezes.