La decisión de migrar este blog de WordPress a una plataforma más liviana no apareció de la nada, lo venía pensando hace tiempo, pero terminó de tomar forma mientras armaba y escribía en Drop the firewall.

Ahí estuve probando y aprendiendo bastante de Hugo como generador de contenido estático, en conjunto con GitLab para control de versiones y Cloudflare Pages para alojar el sitio final, y la experiencia fue muy buena. Me gustó el resultado, pero sobre todo me gustó el proceso: simple, sin fricción innecesaria. Eso inevitablemente me llevó a mirar este blog y preguntarme por qué seguía usando un stack mucho más pesado para un sitio que, al final del día, es texto y algunas imágenes.

Parte de la decisión tiene que ver con el contexto. Estoy de viaje y no tengo ni el tiempo ni las ganas de estar pendiente de actualizaciones, plugins, compatibilidades o parches de seguridad. WordPress cumplió su función durante muchos años, pero para un blog personal empezó a sentirse demasiado: pesado, ruidoso y cada vez más orientado a ser una plataforma genérica antes que una herramienta para escribir. El empujón final a convertir Worpdress en algo pesado y poco funcional para un blog personal lo dio el editor visual / de bloques. No porque sea “malo”, sino porque viene cargado de funcionalidades que no necesito y que se interponen entre la idea y el texto. Para escribir, prefiero menos botones y más foco.

Hugo encaja mejor con esa lógica. No hay backend que mantener, no hay base de datos, no hay superficie de ataque que cuidar. Escribís en Markdown, versionás en Git y publicás de forma automatizada desde GitLab a Cloudflare Pages, pero también podrían ser otras plataformas: podría llevarme los archivos y el pipeline y funcionaría igual. El sitio es rápido, liviano y fácil de mantener.

No es la primera vez que uso generadores de contenido estático. Antes pasé por Hugo (en versiones bastante tempranas), Pelican, Jekyll y hasta Publii (que es una herramienta gráfica). Siempre tuve buenos resultados, pero el entorno en el que hacía los builds no era el mejor. Eso hoy queda bastante mejor resuelto con la combinación de GitLab + Cloudflare Pages, que se encarga de todo el ciclo de build y despliegue sin que tenga que pensar demasiado en ello.

Recuerdo que cuando usaba Pelican, hubo una época en la que escribía y publicaba desde la cantina donde estudiaba mientras me tomaba un café, aprovechando los 45 minutos que solía tener después de salir del trabajo y antes de entrar a clases. Lo hacía desde una Samsung Galaxy Tab 4 con 3G y una funda con teclado, y el único software que necesitaba era Termux, allí corría un editor de textos y Git. No podría decir era realmente cómodo, pero sí minimalista, y funcionaba bien. Buenos tiempos aquellos.

Pero, volviendo a la migración: en la misma línea que comentaba antes de ligereza y poco mantenimiento, opté por un tema minimalista pero funcional: PaperMod, con algunas modificaciones propias que pueden encontrar en el repositorio en GitLab. Quería algo simple, legible y sin demasiadas distracciones, acorde al tipo de contenido del blog.

Luego para mover el contenido usé el plugin WordPress to Hugo Exporter, que exporta páginas y artículos en Markdown con el front matter listo para Hugo, además de toda la galería de imágenes. En principio suena ideal, pero en la práctica no fue tan limpio. WordPress arrastra mucha metadata innecesaria y bastante HTML propio del editor de bloques que el plugin no maneja del todo bien. Eso implicó bastante trabajo manual y semi-automatizado para limpiar el contenido, reparar formatos y dejar los posts en un estado razonable. Para esto, afortunadamente tengo pocos artículos y no migré todas las páginas, así que con un poco de scripting, ChatGPT y alguna corrección manual el contenido quedó listo en poco tiempo. El resto fueron ajustes más puntuales: enlaces internos, feeds y redirecciones, intentando mantener todo compatible y sin romper demasiado el SEO. No es algo que me quite el sueño, pero ya que se hace, mejor hacerlo bien.

El resultado final es un blog más liviano, más simple y mucho más fácil de mantener. No es un cambio revolucionario, pero sí uno que me devuelve foco y ganas de escribir, que al final es lo que importa.

Todavía quedan ajustes y optimizaciones, y algunas decisiones que tomar. Debo pensar si vuelvo a incorporar el feed de los podcasts directamente aquí y cómo hacerlo, aunque eso de momento está funcional en su hosting propio y por lo que pude ver nadie se había suscripto por el generado por Wordpress. Y tampoco he publicado nuevos episodios en el podcast, aunque pretendo retomarlo pronto.

Tampoco volví a integrar los comentarios con Disqus como los usaba en WordPress. Más allá de la comodidad, es una solución pesada, altamente dependiente de JavaScript y bastante invasiva desde el punto de vista de la privacidad. Para un blog personal, cargar trackers de terceros y delegar la conversación en una plataforma externa no me termina de cerrar. Prefiero un sitio más liviano, incluso si eso implica resignar comentarios o pensar otras formas de intercambio más simples. De momento me pueden encontrar en los medios de contacto que aparecen aquí.

Por último, decir que detrás de este cambio no hay épica, ni modas, ni promesas de productividad infinita. Solo menos complejidad y una herramienta que facilita no introduce fricciones en crear y publicar el contenido. Con eso me alcanza; ojalá al lector también.