No Code, Low Code ou High Code — Eis a questão
Como uma pessoa que veio de fora do mundo da tecnologia a ideia das plataformas no/low code me deixou maravilhado, pessoas que não sabem código (como eu) poderiam criar aplicativos, web apps, sites inteiros para começar seu negócio, validar as suas hipóteses, conseguir feedback dos clientes; e isso tudo sem precisar gastar fortunas com os desenvolvedores de código enquanto espera meses para a aplicação ficar pronta. Falando assim parece que essas ferramentas são a resposta para a vida né? Seriam elas o “42” da tecnologia?
Já dando o spoiler da minha visão, a resposta é não, continuamos sem o “42” para qualquer área da vida (a menos que você viaje pela galáxia). Coloco a minha resposta como não pois cada ferramenta no/low code, assim como as diversas linguagens que podemos chamar de high code, buscam se especializar em uma determinada área do desenvolvimento e, foram inclusive criadas para atuar em uma determinada área da “cadeia produtiva”, tomando essa expressão emprestada das áreas da administração. Mas, e se uma ferramenta no/low code fosse criada com a intenção de fazer o pacote completo? Existem algumas que são assim, que nascem justamente com essa missão, e na Inventos nós as exploramos bastante, e chegamos a algumas conclusões quanto às situações onde podemos usá-las com maestria e onde elas falham e dão mais dor de cabeça e dificuldade do que usar código logo de começo.
Quando usar no/low code
No começo do texto dei algumas visões de onde eu acho interessante o uso dessas ferramentas, de maneira geral, em pequenas/médias tarefas ou criações que não sejam extremamente complexas. Para validar hipóteses de negócio as plataformas no/low code de construção são muito úteis, elas permitem que você crie protótipos ou pequenas aplicações mais simples com algum grau de robustez que podem ser colocadas rapidamente no mercado, permitindo rápidas iterações, embora deixe a desejar em alguns pontos, como design por exemplo. O design feito em no/low code nunca será tão refinado como em high code, e está tudo bem para um MVP ou um protótipo inicial. A possibilidade de automação de tarefas internas ou entre softwares de plataformas utilizadas pela empresa ou entre empresas são muito mais rápidas e práticas com esse tipo de ferramenta, e funcionam muito bem até o ponto ao qual elas foram construídas para suportar.
Dentro do exposto acima é muito interessante utilizar as plataformas no/low code, em especial pelo custo delas ser mais baixo, tanto monetariamente quanto temporalmente falando, e elas podem entregar soluções muito boas, contanto que não se tente fazer nada extremamente complexo. Por serem tecnologias recentes em sua grande maioria, ainda não possuem um nível elevado de maturidade e isso pode levar a bugs e mais dor de cabeça em determinados momentos.
Quando não usar o no/low code
Pelas experiências que eu tive e o que vi em meus estudos, um dos casos onde não devemos usar o no/low code para criar versões 2.0 de alguma plataforma ou aplicativo já existente e utilizado por milhares de pessoas. Isso foge da intenção dessas ferramentas, que é justamente ser uma versão 1.0, ou 0.5 de algum negócio, validar ideias e fazer aplicações mais rápidas e simples e sem muita necessidade de customização.
Outra situação onde eu não recomendaria é quando o core business do negócio a ser validado é complexo e requer funções de programação avançadas e refinadas. Como a maior parte das plataformas não é preparada para trabalhar com esse tipo de operação, elas vão, provavelmente, apresentar diversos bugs e funcionamentos inesperados, muitas vezes trazendo mais trabalho e dor de cabeça do que teríamos se estivéssemos fazendo em high code desde o começo.
E, claro, não seria recomendado utilizar uma ferramenta dessas para tentar construir nela uma aplicação para a qual ela não foi idealizada para suportar, em rápido paralelo, não tentaríamos usar Python para construir uma página da web, ou React para criação de um banco de dados ao invés do SQL.
Onde estamos então?
No/low code é muito bom, muito útil e pode agilizar muitas tarefas dos desenvolvedores, podendo apoiar diversas áreas da empresa ou permitir a empreendedores criarem MVPs e protótipos rapidamente, sem gastar rios de dinheiro para validar e pivotar suas hipóteses. Mas isso não quer dizer que qualquer MVP pode ser feito com essas ferramentas, e muito menos que elas são o “42” da tecnologia. Em grande parte, ainda estão em seu nascimento, e com toda certeza vão ganhar muita robustez, mas não acho que se tornarão uma bala de prata no futuro.
O que você acha? Concorda com nosso ponto de vista? Não concorda? Conta para a gente!