[ Pitch ] AI coding vs no/low-code: competição ou colaboração? | Newsletter O Digital
Galera,
Postei isso na minha newsletter e resolvi compartilhar aqui pra vcs tbm, imagino que vão ter opiniões fortes sobre o tema.
Contem a experiêcia de vcs e fiquem a vontade pra discordar, vai ser bom ouvir os contrapontos!
Espero que curtam o texto.
🏗️ No/low code e o momento atual
Nos últimos anos, um pouco antes do boom da GenAI tivemos a popularização do no/low-code, impulsionado por ferramentas como Bubble, Flutterflow, Zapier e similares.
Essas ferramentas permitiram que pessoas não técnicas como designers, product managers, gerentes e outros criassem aplicações pequenas para MVPs - e até, aplicações não tão pequenas.
Obviamente, pessoas que sabem codificar também podem usufruir da velocidade e praticidade do low-code, mas vejo uma certa resistência da maioria dos devs que converso sobre isso - uma pena, para eles.
Pra esquentar ainda mais o ecossistema de (tretas) discussões sobre high-code ou no-code, a GenAI veio aí pra mudar tudo!
⚠️ Quais são os problemas do no/low code?
Temos diversos pontos de atrito entre desenvolvedores e entusiastas de no-code, os principais pontos de discórdia que vejo por aí são os seguintes:
Personalização limitada
Uma plataforma no/low-code é mais rápida exatamente por trabalhar em cima de padrões e componentes já construídos e validados.
Se você precisar muito “sair da caixinha” para criar coisas únicas e mega personalizadas, usar uma ferramenta dessa pode ser sim um problema.
Contrapontos: Ao contrário do no-code, as plataformas low-code (baixo código) permitem inserir trechos de código, exatamente para customizar o que não é possível por padrão.
Além disso, as plataformas líderes de mercado estão cada dia mais robustos e atualizados conforme o ecossistema de tecnologia.
Risco e dependência de plataforma
Esse é o clássico: “não construa no terreno dos outros“, ou seja, usando uma plataforma para criar seus sistemas, você está diretamente dependente dela. Eu já falei bastante sobre Risco de Plataforma neste post.
Você está sujeito a updates na plataforma (inclusive versões quebradas), instabilidade, aumento de preço e algo mais difícil, porém não impossível de acontecer: o encerramento das atividades da empresa. Já imaginou ter seu site dentro de uma plataforma no-code que encerra suas operações? Prepara para refazer do zero, bem provavelmente.
Contrapontos: De certa forma, a não ser que você tenha um servidor Linux na sua casa, sempre vai haver algum tipo de dependência: seu servidor na nuvem (AWS, Microsoft), a store que hospeda o app (iOS, Android), etc.
Se escolher um dos top players de mercado, dificilmente você terá grandes problemas.
Escalabilidade
Um dos pontos mais polêmicos de todos: no-code escala ou não escala? A resposta varia de pessoa para pessoa.
O primeiro ponto que quero destacar aqui antes de discutir esta resposta é: o que é escala?
Escala é ter 1k, 10k ou 1M de usuários? É suportar TB de dados ou suportar milhares de acesso por dia? Percebe que não há 1 só resposta para essa pergunta?
Então, se não sabemos exatamente o que é essa escala, fica difícil responder.
Particularmente, eu acredito no meio termo, aquele velho depende.
No-code vai funcionar para muitas empresas para sempre, eles nunca vão ter problemas de escala. Para outros, pode sim ocorrer um gargalo em que será necessário mudar (ou mesclar) pedaços de software high-code.
Depende muito do que é exigido e da necessidade de cada negócio.
Preconceito, barreira cultural e síndrome do impostor
Sim, é isso mesmo. E pra mim este é o pior e mais difícil de lidar de toda a lista!
Para quem passou a vida escrevendo códigos por horas antes de ver algo funcionar, pode ser frustrante fazer um “arrasta e solta” e ter o mesmo resultado em poucos minutos.
Para quem passou a vida gastando meses desenvolvendo algo, ver uma aplicação entregar o mesmo valor para o usuário final pode fazer a pessoa se questionar sobre o próprio valor profissional.
E aí, de forma inconsciente (ou não), o mecanismo de auto-defesa pode ser ativado: isso não tem qualidade, não escala, não fica bom, não tem segurança, sua_defesa_aqui.
Minha dica para esse pessoal é: isso é só mais uma forma de fazer a mesma coisa, abrace as vantagens, entenda as desvantagens e saiba quando usar ou não essa abordagem. Quem vai ganhar com isso é você!
🤖 AI coding quebrando tudo (menos o código)
Pra começar, trago um relato pessoal que fez pensar muito.
Eu queria criar uma pequena aplicação para um MVP de forma muito rápida, pensei em usar uma plataforma low-code para isso.
Porém, para quem não sabe, eu fui desenvolvedor por muitos anos. E a coisa da habilidade é como aquele papo sobre andar de bicicleta: depois de anos sem exercitar, você não tem a mesma expertise, mas com um pouco de treino volta a conseguir fazer isso relativamente bem.
Então, me vi no seguinte dilema: aprender uma nova ferramenta no-code, ou usar as novas GenAIs para codificarem para mim? Eu fui na opção 2, por um simples motivo: eu acabo TODOS aqueles possíveis problemas do no-code.
É simples, eu tenho melhor dos mundos: a AI coda pra mim e agiliza absurdamente o meu desenvolvimento. Enquanto isso, não tenho risco de plataforma, escala, nem mesmo limitações da plataforma, afinal o código é meu e eu faço que o que eu quiser!
O resultado?
Em 2 dias completei a criação do MVP, que arrisco dizer, levaria pelo menos 15 dias para ficar pronto desenvolvendo da forma tradicional (contando que eu já tenho anos de prática, mesmo que um pouco enferrujado, rs).
O projeto está sem bugs, documentado, organizado e o melhor de tudo: funcional e na mão do usuário final!
Nem tudo são flores
Preciso ser justo, pessoas de negócio não conseguiriam fazer esse projeto desta forma.
Eu só consegui essa entrega incrivelmente produtiva por ser uma pessoa bem técnica há muito tempo. Eu sei os caminhos, ferramentas e frameworks que agilizam, melhores linguagens, etc.
Durante o desenvolvimento também tive pequenos problemas e precisei intervir: a AI se confundiu com versões de ferramentas, entrou em loop para resolver um problema, precisou que eu especificasse exatamente qual ferramenta e como usar. Mas nada que faça eu me arrepender nem por 1 segundo, faz parte do jogo!
🤯 E o futuro? AI ou no-code?
Aqui temos um tema interessante para pensar: será que o futuro é de pessoas não técnicas construindo via no-code, ou de pessoas extremamente técnicas produzindo códigos na velocidade de luz?
Eu tenho alguns palpites:
A médio prazo: ambos. Teremos diversos MVPs sendo feitos por pessoas de negócio usando no-code, enquanto desenvolvedores são mais produtivos usando AI.
A longo prazo: AI + no-code. Eu acredito que teremos uma fusão das 2 estratégias. Surgirão ferramentas que constróem aplicações usando código, mas que permitem que o usuário interaja também com drag and drop.
Um misto de estratégias: cria o botão visualmente com o mouse, e adiciona um prompt para dizer a ação que será feita no clique do botã.
Sinceramente, esse é o futuro que eu gostaria de ver!
🛠️ Ferramentas utilizadas
Claro que eu não ia te deixar na curiosidade! As ferramentas que usei para este MVP foram:
- ChatGPT (GPT4o e o1-preview) para conversar e tirar dúvidas mais gerais.
- Windsurf com Claude 3.5: A nova IDE simplesmente INCRÍVEL, que te permite desenvolver conversando com um bot. Claude é o melhor LLM para desenvolvimento que usei até agora.
- Cursor: Uma outra IDE de desenvolvimento que te ajuda a codar via AI. Usei para comparar com o Windsurf, mas não havia real necessidade de usá-la também :).
- Google: sim, eu ainda precisei um pouco do tio fora de moda.
- Github: para buscar frameworks e libs open-source.
Se gostou deste post, dá uma olhada na newsletter e assine para receber os próximos no seu email.