Agora os devs (ao menos os idiotas) começam com o mimimi: “Como assim, André, você é um dev com 15 anos de experiência, programa em diversas linguagens, especialista em Node.js, C#, PHP, como tem a audácia de citar os lixos do WordPress e da Wix em um post seu, blá blá blá”…
Simples: por que caralhos vocês acham que eu vou perder meu tempo escrevendo e otimizando códigos para montar um blog ou site simples se, em 10 minutos, eu subo um WordPress e compro um template pronto com PageSpeed 100 no Theme Forest? Como o Fabio Akita fala, o bom código é zero código. Se eu posso fazer e obter resultados melhores sem perder tempo e massa encefálica, faz zero sentido escrever o código só pra me sentir mais programador. Eu vou te falar uma coisa triste: provavelmente esse blog, feito no WordPress em 15 minutos, com um Template de $15, deve estar mais otimizado e melhor indexado no Google do que seu site em React feito na mão. É triste, mas é a realidade.
Pare de desperdiçar seu tempo
Hoje em dia eu só tenho o trabalho de abrir um editor de código por dois fatores principais: ou por quero muito estudar alguma coisa, como foi com a Unity e Web3, ou pelo desafio de fazer alguma coisa muito difícil tecnicamente. Eu posso me dar a esse luxo, já que tenho condições de pagar desenvolvedores para cuidar de tarefas mais simples. Porém nem mesmo meus devs metem a mão em trabalhos tão triviais, como criar um site ou coisas do tipo. Se você está iniciando na programação e ainda não sabe fazer um site, não se preocupe. Nos últimos 15 anos aperfeiçoamos e simplificamos o processo, ao ponto de qualquer pessoa hoje, somente assistindo alguns vídeos no YouTube, conseguir fazer isso, sem nem precisar escrever uma linha de código (mas é claro que saber fazer vai te servir de experiência). Quando iniciei no desenvolvimento web no FrontPage e Dreamweaver 3, o que precisava saber era HTML, CSS e, na época, o JavaScript, que servida para mostrar popups chatos e pequenas animações bobas. Quando surgiu, o Flash pareceu uma revolução, mas, honestamente, pra mim o Flash só serviu para criar os primeiros Players de vídeo (antes da implementação do padrão atual) até que “veio a falecer” pelas mãos de Steve Jobs, em sua famosa carta de 2010, “Thoughts on Flash”. O tempo passou, o JavaScript evoluiu e veio a onda de frameworks web de Frontend, que são praticamente um erro e, a seguir, explico o motivo.
Dividir Backend e Frontend foi um erro
Até o surgimento do Angular 1, o mercado web de uma forma geral era visto como uma coisa só. O mesmo dev que codificava no Backend em PHP, Ruby, .Net, era o cara que escrevia o HTML, CSS e JavaScript na grande maioria das vezes. Quando trabalhei em agências, os cargos eram DESIGNER e PROGRAMADOR, pronto. Um cara fazia o layout no Fireworks ou Photoshop e o programador implementava. Alguns designers iam um pouco além e já entregava o layout modelado no HTML e CSS. Então você tinha um cara que manjava minimamente de lógica e programação para realizar implementações Frontend com JavaScript, com o famoso jQuery ou derivados. O mais diferente disso foi com a popularização do WordPress, que cria templates e plugins, em meados de 2012 mais ou menos. Foi nessa época que eu conheci o Node.js em sua incrível versão bugada 0.6 mas, por incrível que pareça, já naquela época era muito promissor, ao ponto de eu largar o PHP e me dedicar exclusivamente a desenvolver tudo em Node. Foi só em 2017, quando iniciei o Vigia, que voltei a pensar em frontend de fato. Na primeira versão usei Angular 1 e depois mudei para Vue.js e assim foi até 2021.
Quando o sistema estava mais sólido e estável, contratamos alguns devs frontend com experiência e eu fiquei pasmo com o nível de dificuldade básica em algarismos que esses profissionais têm para trabalhar com frameworks como Angular, React e Vue, pois eles precisam de fato codificar os componentes. Essa divisão do backend ficar responsável por API e o frontend implementar chamadas e exibir resultados parece razoável a princípio, quando se tem nas duas pontas programadores de fato, mas o que tenho visto, no geral, são pessoas em uma camada intermediária entre designer e programador, que nem sabem fazer bons layouts e nem sabem programar direito. Coisas como segurança, performance e indexação foram jogados no lixo. Eu tive que passar semanas otimizando o PageSpeed do site e, para quem não sabe do que eu estou falando, o Google tem regras bem definidas de como o site precisa se comportar para ter um bom SEO, não adianta ter um site bonitinho que não indexa bem. Obviamente isso não é regra geral, existem bons devs frontend por ai, mas são raros.
Não quer aprender, vai pro No-code
Eu sou da seguinte opinião: não está a fim de se dedicar a aprender a base lógica necessária para ser um bom dev? Não tem aptidão? Não tem paciência? Sem problemas, use soluções No-Code, como o Wix, para entregar seus produtos, mas, por favor, não seja um dev medíocre. Eu tenho acompanhado o mercado nos últimos 15 anos e o padrão de qualidade caiu vertiginosamente. Não que os sites antigamente fossem melhores tecnicamente, o JavaScript mesmo sofreu uma mudança bruta em 2015, foram anos de evolução, mas a maioria dos devs não seguiu o mesmo fluxo e a nova leva de desenvolvedores está cada vez mais subindo no nível da abstração sem o mínimo do conhecimento de base, isso independente de cursar uma universidade ou não. Os frameworks facilitam e ao mesmo tempo distanciam os devs do entendimento avançado da linguagem.
Programar não é para qualquer um, requer paciência, resiliência, dedicação, prática. Você vai virar madrugadas tentando arrumar soluções para problemas inúteis, que serão jogados no lixo depois, até chegar ao ponto de entender com plenitude o que está fazendo e tomar decisões assertivas de linguagens, frameworks e, aí sim, criar códigos com real qualidade. Eu demorei mais de 10 anos para entender realmente o que estava fazendo e hoje sinto muita falta de alguns conteúdos acadêmicos que abandonei como álgebra, trigonometria, estrutura de dados, entre outros.
Meu conselho é, se você não se identifica com programação mas precisa trabalhar com isso, procure soluções em que você não precisa codificar ou vai precisar o mínimo necessário. Não tem nenhum problema nisso, de verdade, até por que muito dificilmente você vai trabalhar com sistemas ou sites que requerem mais do que o Wix ou o WordPress podem proporcionar. Sistemas complexos, que exijam Node.js, frameworks do nível do React, Angular ou Vue, devem ser 1% da web. Tem muita empresa que só usa por modinha ou por que acha bonito falar que o Front dela foi feito em algum dessas tecnologias.
No-Code bala de prata?
Óbvio que não! Você vai usar WordPress ou Wix para fins específicos. Quer montar um blog, uma pequena loja, etc., use o WordPress. Quer montar uma landpage, um site pequeno, coisas relativamente simples, use Wix. Se for montar um e-commerce maior, vá para soluções como Loja integrada, Nuvem shop, Magento. Grande varejista? Use VTEX. Existem dezenas de soluções para CMS, e-commerce, blog, site, em dúzias de linguagens diferentes, sendo desenvolvidas há anos e é provável que todas elas sejam melhores do que você codando do zero. Quer algo além disso, aí sim você começa a pensar em usar alguma linguagem e framework para, de fato, codar.