Razones por las que JAMstack es el nuevo estándar

Jose Hurtado
reign
Published in
6 min readJun 22, 2021

JAMstack es una nueva tendencia de desarrollo web y de aplicaciones que promete velocidad de despliegue, seguridad, eficiencia y escalabilidad. Con una correcta implementación todo esto se transforma en una interesante promesa.

Si vivimos en el mismo reino -de la tecnología- entonces es probable que compartamos en diferentes parajes del desarrollo y la innovación web; y que hayamos encontrado señales de innovadoras formas de desarrollar.

Un dolor conocido

Si quisiéramos simplificar al máximo el esquema tradicional del desarrollo web podríamos usar, como ejemplo, un sitio que usa una infraestructura dependiente de un CMS (como nuestro viejo conocido WordPress), que aloja el contenido en una base de datos MySQL u otra, y que tiene como intermediario los llamados hechos con un lenguaje como PHP, para terminar entregando el contenido que será cargado en nuestra página y que, luego de eso, puede visualizado por los usuarios.

Cualquier error en este flujo ya sea de sintaxis, de servidor o de transferencia de datos, traerá problemas como una carga incompleta o nula, lo que para la manera en que se mueven los usuarios implica visitas perdidas, clientes (entiéndase ventas) perdidas e incluso colaboradores de nuestro propio equipo completamente desorientados. Colaboradores que no podrán, entre otras cosas, dedicarse a crear contenido por estar solucionando constantemente problemas de infraestructura… que nada tiene que ver con lo realmente quieren hacer.

Emerge JAMStack

Si vivimos en el mismo reino -de la tecnología- entonces es probable que compartamos en diferentes ecosistemas del desarrollo e innovación web; y que hayamos encontrado referencias a innovadoras formas de desarrollar, que van ganando terreno gracias a sus particular brillo y adaptabilidad a nuevos escenarios.

Quizás estoy compartiendo mucho relato y pocos hechos, así que comencemos este recorrido definiendo lo fundamental:

¿Qué es JAMStack?

Es una arquitectura de desarrollo web que se basa en desplegar sitios estáticos previamente construidos. Esto es un completo cambio de paradigma en el desarrollo tradicional y se enfoca en el requerimiento mobile-first web” o dicho de otra forma, enfocándose en los tiempos de carga asumiendo que el ancho de banda nunca está asegurado.

Sus primeras tres letras aluden a los tres pilares que lo sustentan;

  1. J →JavaScript, es conocido como el lenguaje de los navegadores. Su versatilidad permite emplearlo para enlazar la interfaz con hooks o llamados a APIs de manera eficiente y rápida, siendo el frontend quien procese estos requerimientos.
  2. A → APIs, son parte de la filosofía de JAMStack al componer el sitio o aplicación de múltiples microservicios de terceros, quienes ya especializados en ello, ofrecen la facilidad de implementarlos y utilizarlos en sitios estáticos, superando el sesgo inicial al convertir el sitio en interactivo e intuitivo.
  3. M → Markup, es la ciencia detrás de la efi-ciencia de JAMStack; gracias a que el contenido está previamente generado, este puede ser llamado sin necesidad de vincularse a una base de datos clásica (como MySQL o MongoDB), lo que nos permite abstraer el backend asociado a nuestro sitio. Esto permite un sorprendente incremento en la velocidad de carga de los sitios.

Ahora vale la pena preguntarse… ¿Para qué enfocarnos en la infraestructura si podemos concentrarnos en el contenido?… Y claro que la primera respuesta será otra pregunta; ¿y dónde se alojará el contenido?

Esto es algo que podemos lograr gracias a esta metodología de desarrollo que libera parte de nuestra fuerza de trabajo, facilita el despliegue y desacopla funcionalmente -algo clave- la capa de presentación de la de contenido.

Para implementar un nuevo estándar necesitaremos inicialmente gran motivación; estamos frente a una disrupción a las costumbres y eso siempre genera resonancia.

Los fundamentos

Que JAMstack hoy emerja como una metodología de desarrollo alude al cómo la implementación de esta tecnología obtiene resultados excepcionales en proyectos de gran escala. Para desplegar de manera efectiva este potencial se utilizan una serie de elementos fundamentales:

Builds automáticos

Prescindiendo de una base de datos tradicional, cada vez que exista un nuevo archivo o modificación, todo el contenido; ya sean imágenes, texto y diseños -entre otros- se reflejará en el sitio de producción, tal como si fuera una web tradicional “dinámica”: el HTML volverá a generarse automáticamente para mostrar las actualizaciones.

Sitios estáticos

Que el sitio sea estático implica que el llamado a la URL será único, independiente del dispositivo y sin necesidad de consultar a una base de datos, lo que brinda una mayor velocidad de respuesta y carga. El sitio se cargará gracias a que estará previamente generado utilizando herramientas como Gatsby, Hugo o Nuxt.

APIs

El uso de JavaScript permitirá que sea el frontend quien haga todo el trabajo que tradicionalmente realizaba el backend. Esto porque permitirá enlazar el contenido leído desde Git con APIs de terceras partes que ofrecen servicios especializados, lo que brinda la opción de personalizar, dinamizar y canalizar los requerimientos. Funciones sencillas para tareas específicas.

De hecho, podemos implementar incluso formularios sin necesitar vincular el sitio a una base de datos utilizando Netlify.

Headless CMS

Es un sistema que gestiona el contenido, pero cuya infraestructura (back-end) funciona de repositorio mientras que el contenido en sí estará disponible mediante API-Rest.

Gracias a que el contenido está previamente construido, el despliegue requerido es entregado específicamente, sin necesidad de realizar carga tras carga completa del sitio web.

Content Delivery Network (CDN)

En complemento al desacople entre la capa de presentación y la de contenido JAMStack utiliza un Content Delivery Network (CDN), cuya composición de diferentes puntos de acceso a los datos permite realizar llamados con mayor proximidad geográfica, mejorando aún más los tiempos de carga

JAMStack es un nuevo estándar

La combinación de los elementos anteriormente descritos, sumados a un gran listado de herramientas complementarias, brindan un escenario prometedor y llamativo, ya seas de un equipo de desarrollo, jefatura a cargo o incluso un curioso navegador. JAMStack se consolida por sus extraordinarios resultados que luego se traducen en grandes experiencias.

  • Velocidad. El CDN y la eficiencia que brinda la proximidad de conexión a la ubicación del usuario, junto a la respuesta directa del front en la carga del contenido construido en los sitios estáticos, genera un incremento en la velocidad de carga. Tanto para visitantes como para el despliegue de nuevo contenido, se experimenta un sitio muy rápido (como debe ser en estos tiempos).
  • Seguridad. Prescindir de la infraestructura nos libera de tener que adelantarnos a posibles amenazas. Dicha responsabilidad pasa a ser parte de las preocupaciones del proveedor del servicio. Además, al componerse el sitio de un repositorio privado (y único) y de interactuar con APIs de terceras partes, el área de contacto se reduce significativamente, por lo que existen menos “posibles” puntos vulnerables para ataques externos.
  • Deployment & workflow. Trabajar en este esquema renueva el gusto por la generación del contenido, por la innovación y la búsqueda de la interacción usuaria. El trabajo colaborativo mediante Git permite mantener un control de versiones de manera estricta, trabajar de forma simultánea y organizar el contenido creado para su revisión y posterior despliegue.

¿Listo para conquistar nuevas posibilidades?

Para implementar un nuevo estándar necesitaremos inicialmente gran motivación; estamos frente a una disrupción a las costumbres y eso siempre genera resonancia. Pero igual de importante es que requerimos contar con un partner, nuestro escudero que brindará el soporte y los consejos apropiados al momento de no encontrar respuestas a la vista.

Reign es tu Headless Agency Partner, un equipo con el que podrás experimentar de primera mano qué es Headless y lo determinante al momento de digitalizar tu idea y negocio.

La comunidad está en desarrollo, la incorporación de este estándar va en aumento y con ello la oferta de proveedores, pero ten cuidado: necesitas estár atento a los hechos. ¡Te invitamos que conozcas las bases de nuestro reino!

--

--