3.2. Los CMS y las pilas Jamstack
Durante la segunda mitad de la década de 1990, en plena expansión de internet y sus servicios, los sistemas de gestión de contenidos (Content Management Systems, CMS) se convirtieron en la herramienta clave para el desarrollo y la implementación de productos de información digital en la red. Hubo que esperar a los inicios de la década siguiente para que los CMS se popularizaran a todos los niveles, gracias a la publicación de gran número de herramientas, muchas de ellas bajo licencias de software libre.
La base se identifica con el acrónimo LAMP, que corresponde a la combinación de Linux, Apache, MySQL y PHP ó Perl. Sobre un servidor de espacio dedicado o compartido, la combinación del software para servidor web Apache, del sistema de gestión de bases de datos MySQL (o María DB), y de intérpretes de lenguajes PHP y Perl, permite instalar y operar casi cualquier tipo de servicio o de producto de información digital. Los sistemas de gestión de contenidos instalados sobre estas bases han respondido a una arquitectura casi estandarizada, en la cual pueden identificarse tres subsistemas principales, correspondientes a los bloques de procesos de gestión y administración, de colección y de publicación. El aumento de prestaciones de los CMS ha hecho más complicada su gestión. Si bien en sus primeros momentos se pretendía simplificar y democratizar los procesos de publicación en internet, el aumento de la complejidad de los sistemas, la proliferación de plataformas y canales de publicación, y el aumento de fuentes de información externas de las que es necesario integrar información ha limitado las posibilidades de los CMS que se podrían considerar "tradicionales". La falta de flexibilidad ha sido señalada como uno de los problemas de esta generación de CMS.
También resulta evidente que existen situaciones en las cuales determinados productos de información no requieren de las prestaciones que ofrecen los sistemas de gestión de contenidos. La codificación de documentos mediante HTML puede ser suficiente en contextos en los que no sea necesaria una actualización continua de contenido. Sin embargo, si se atiende al principio citado previamente de "crear una vez, publicar en muchos lugares", HTML no es esquema de codificación que se preste a un proceso de edición ágil.
Fig. x. Comparación de estructuras entre CMS tradicional y JAMstack (fuente original).
La necesidad de generar documentos web de forma rápida y sencilla ha llevado a la aparición de herramientas generadoras de páginas web estáticas. Por este motivo están adquiriendo una creciente importancia las denominadas JAMstack. Las JAMstack son la combinación de código escrito en JavaScript, diferentes API o microservicios reutilizables, y documentos cuyo contenido se ha etiquetado con lenguajes de marcado ligero (véase apartado 2.x). Derivados principalmente del campo de la elaboración de documentación de software, se basan en la utilización de lenguajes de etiquetado ligero, como MarkDown o reStructuredText, que luego son procesados por generadores de documentación como Sphinx o MkDocs. El resultado se envía a un espacio de hosting, en el cual se publica el contenido generado. La velocidad de respuesta de los servidores al enviar páginas HTML estáticas es mucho mayor que al interactuar con un CMS. La gestión de las modificaciones en estructura y contenido del conjunto de documentos, en un entorno local de producción, también es más ágil y sencilla, ya que es el generador el que se encarga de actualizar y regenerar la estructura de acuerdo a los cambios introducidos. Si a esto se acompaña el control de versiones y un cliente de sincronización con repositorios, se dispone de un entorno completo para la elaboración de documentos para internet.
Material complementario
- Merino, M. JAMstack, un nuevo enfoque de desarrollo web impulsado por el éxito financiero de Netlify. genbeta. 2021
{{@5685}}