Empezar hoy
Antes montaba webs en PHP y HTML. Las subía a un servidor web por FTP y listo. Pero empezar hoy resulta, paradójicamente, más difícil y más fácil que nunca.
Por un lado, las barreras de entrada jamás han sido tan bajas. Podemos levantar cómputo en cualquier parte del mundo en milisegundos, desplegar a nivel global con unos clics y escalar de forma elástica para atender la demanda. Se acabaron los días en que un problema en la red eléctrica local o una cuota estricta del hosting podían tumbar tu web entera.
Pero a la vez, hay muchísimo más que tener en cuenta. Recuerdo cuando bastaba con escribir una página en Adobe (entonces Macromedia) Dreamweaver, juntar unos cuantos frame sets y subirla por FTP a un servidor.
Y ya está. Sin sistemas de build complejos. Sin preocuparte por estándares de accesibilidad como WCAG, ni por vulnerabilidades de seguridad enrevesadas como los ataques a la cadena de suministro (dependencias maliciosas en paquetes de npm) o los exploits de canal lateral (como los ataques de temporización). No teníamos que pensar en el RGPD, la CCPA ni en una docena de marcos de cumplimiento más. No había un debate interminable sobre frameworks de frontend como React, Vue o Angular, ni sobre límites de tasa de las API, orquestación de contenedores o modelos de seguridad zero-trust. La seguridad era algo que se dejaba para el final. Ahora tenemos que preocuparnos de cosas como CSRF, XSS, la inyección SQL y protegernos de los ataques DDoS.
Simplemente construíamos. Era una época en la que podíamos experimentar sin consecuencias, juntando ideas solo para ver qué funcionaba. No teníamos que justificar cada proyecto con un caso de negocio ni aplacar a los críticos de Hacker News que preguntaban cómo encajaba en una “estrategia de monetización a largo plazo”. Construíamos por construir, por el gusto de aprender y de crear. ¿Se puede todavía hoy? ¿O estamos tan metidos en la carrera de la eficiencia y del propósito que hemos perdido esa libertad? Ahora todo necesita un público definido, una hoja de ruta, una estrategia de salida al mercado. Pero las mejores innovaciones suelen salir de trastear sin plan.
Y además, ahora tendemos a complicarlo todo. Hacemos ingeniería de más antes de entender siquiera el problema que resolvemos. ¿Por qué saltamos directos a la orquestación de microservicios antes de haber construido un monolito? Yo antes adoraba tener montones de microservicios dispares, cada uno con una tarea concreta, pero ahora los veo como una carga. La sencillez de un único código base está infravalorada. Tenemos tantas ganas de seguir las buenas prácticas que a veces nos olvidamos de hacer que algo funcione primero. Es como si optimizáramos para escalar antes de haber demostrado que hay algo que merezca la pena escalar.
Hoy, muchas de las cosas en las que tendríamos que pensar nos las resuelven otros. Cloudflare, Vercel y Netlify hacen que publicar cosas en internet sea casi un paseo, pero si algún día quitan el plan gratuito o cambian de política de golpe, a muchos nos pillaría con el paso cambiado. El precio por uso facilita escalar, pero a veces parece desconectado del valor que de verdad se entrega. La comodidad es increíble, pero tiene un coste, tanto económico como de dependencia de servicios centralizados.
Por supuesto, el desarrollo web moderno aporta enormes ventajas. Herramientas como React y Next.js nos permiten construir aplicaciones interactivas buenísimas. Las plataformas en la nube dan una infraestructura robusta y escalable, y el foco en la seguridad y la accesibilidad ha hecho de la web un lugar más fiable e inclusivo.
Sigo creyendo en el valor de poder ejecutar cosas en casa. Me encantaría que los proveedores de internet ofrecieran una segunda IP solo para el tráfico entrante, para que la gente pudiera autoalojarse sin los rodeos enrevesados de hoy. Deberíamos fomentar la innovación, no ponérselo más difícil a quien quiere experimentar y construir cosas nuevas. Cuanto más animemos a la gente a trastear, a crear y a empujar los límites de lo posible, mejor nos irá a todos.
Hemos recorrido un largo camino desde la Web 1.0, pero asegurémonos de seguir dejando sitio para que la próxima generación de constructores empiece desde cero y aprenda haciendo, igual que hicimos nosotros. No siguiendo un tutorial y repitiendo una y otra vez, sino entendiendo de verdad los fundamentos y construyendo encima. Así mantendremos la web viva y con ganas durante muchos años. Quizá todos deberíamos intentar hacer este fin de semana un proyecto pequeño y personal, sin preocuparnos de buenas prácticas ni de monetización, solo por el gusto de crear.