Começar hoje
Eu fazia sites em PHP e HTML. Punha-os num servidor web por FTP e era isso. Mas começar hoje é, paradoxalmente, mais difícil e mais fácil do que nunca.
Por um lado, as barreiras de entrada nunca foram tão baixas. Podemos montar capacidade de computação em qualquer parte do mundo em milissegundos, fazer deploy global com uns cliques e escalar de forma elástica para acompanhar a procura. Acabaram-se os dias em que um problema na rede elétrica local ou uma quota de alojamento rígida deitavam abaixo o site inteiro.
Mas, ao mesmo tempo, há muito mais em que pensar. Lembro-me de quando bastava escrever uma página no Dreamweaver da Adobe (então Macromedia), juntar uns frame sets e mandá-la por FTP para um servidor.
Era isso. Sem sistemas de build complexos. Sem preocupações com normas de acessibilidade como a WCAG, sem receio de vulnerabilidades de segurança intrincadas como ataques à cadeia de fornecimento (dependências maliciosas em pacotes npm) ou ataques de canal lateral (como os ataques de temporização). Não tínhamos de pensar no RGPD, no CCPA ou numa dúzia de outros quadros de conformidade. Não havia debate interminável sobre frameworks de frontend como React, Vue ou Angular, limites de taxa de APIs, orquestração de contentores ou modelos de segurança zero-trust. A segurança era um pormenor de última hora, e agora temos de nos preocupar com CSRF, XSS, injeção de SQL e proteção contra ataques DDoS.
Podíamos simplesmente construir. Era um tempo em que se experimentava sem consequências, juntando ideias só para ver o que funcionava. Não precisávamos de justificar cada projeto com um business case, nem de apaziguar os críticos do Hacker News a perguntar como é que aquilo encaixava numa “estratégia de monetização a longo prazo”. Construíamos coisas por construir, pelo gosto de aprender e criar. Ainda é possível hoje? Ou estamos tão presos à corrida da eficiência e do propósito que perdemos essa liberdade? Tudo precisa agora de um público definido, de um roadmap, de uma estratégia de entrada no mercado. Mas as melhores inovações vêm muitas vezes de mexer em coisas sem plano.
E, para lá disso, tendemos a complicar demasiado. Fazemos engenharia a mais nas soluções antes de percebermos o problema que estamos a resolver. Porque saltamos logo para a orquestração de microsserviços antes de termos sequer construído um monólito? Eu adorava ter muitos microsserviços dispersos, cada um a tratar de uma tarefa específica, mas agora vejo isso como um fardo. A simplicidade de uma única base de código é subestimada. Estamos tão ansiosos por seguir as boas práticas que por vezes esquecemos de fazer primeiro a coisa funcionar. É como se otimizássemos para a escala antes de provarmos que há alguma coisa que valha a pena escalar.
Hoje, as coisas em que precisamos de pensar são muitas vezes geridas por outros. A Cloudflare, a Vercel e a Netlify tornam quase sem esforço pôr coisas online, mas se alguma delas acabar com o plano gratuito ou fizer uma grande mudança de política, muitos de nós ficariam aflitos. O preço por utilização facilita o crescimento, mas por vezes parece desligado do valor realmente entregue. A comodidade é incrível, mas tem um custo, tanto financeiro como em dependência de serviços centralizados.
Claro que o desenvolvimento web moderno traz benefícios imensos. Ferramentas como React e Next.js permitem-nos construir aplicações interativas e incrivelmente capazes. As plataformas de cloud dão infraestrutura robusta e escalabilidade, e o foco na segurança e na acessibilidade tornou a web mais fiável e mais inclusiva.
Continuo a acreditar no valor de poder correr coisas em casa. Gostava que os ISP oferecessem um segundo IP só para tráfego de entrada, para que as pessoas pudessem fazer self-hosting sem os truques complicados de hoje. Devíamos estar a fomentar a inovação, não a tornar mais difícil para os indivíduos experimentar e construir coisas novas. Quanto mais incentivarmos as pessoas a mexer, a criar e a empurrar os limites do possível, melhores todos ficamos.
Percorremos um longo caminho desde a Web 1.0, mas garantamos que continuamos a deixar espaço para a próxima geração de construtores começar do zero e aprender fazendo, tal como nós. Não seguir um tutorial e repetir, mas perceber de facto os fundamentos e construir em cima deles. É assim que vamos manter a web viva e entusiasmante nos próximos anos. Talvez devêssemos todos tentar construir este fim de semana um pequeno projeto pessoal, sem nos preocuparmos com boas práticas ou monetização, só pelo gosto de criar.