Si has navegado por este blog habrás notado que cada artículo tiene una imagen cuadrada diferente. Un patrón de cubos que parece un código QR pero no lo es. Colores que cambian de un post a otro. Y en el centro, siempre el mismo kanji: 忍.
Esas imágenes no fueron diseñadas manualmente. Fueron generadas por el contenido mismo de cada artículo.
Cómo funciona
Cuando publico un artículo el sistema toma dos datos: el título y la cantidad de caracteres del contenido. Con el título genera un hash criptográfico, una cadena única e irrepetible de caracteres. Ese hash se convierte en un mapa que decide qué cubos de una grilla de 32 por 32 se llenan y cuáles quedan vacíos. Es el mismo principio que usa un código QR real pero sin codificar ningún dato legible. Solo el ADN del texto convertido en forma visual.
La cantidad de caracteres determina el color accent de cada imagen:
Los artículos cortos son dorados. Los de longitud media pasan por azul frío y púrpura. Los más largos son terracota. Y si algún día escribo algo realmente extenso, será verde menta.
El resultado es que cada artículo tiene una huella visual única. Si cambio una sola palabra del título el patrón cambia completamente. Si el artículo crece o se reduce de categoría el color muta. La imagen está viva mientras el texto lo esté.
El kanji del centro
En el centro de cada imagen hay un espacio en blanco con el kanji 忍. Se lee shinobi en japonés. Significa perseverar en silencio, resistir con paciencia, moverse sin ser visto. Es el origen del nombre de este blog y el ancla visual que conecta todas las imágenes entre sí sin importar cuán diferentes sean sus patrones.
Por qué no usar imágenes normales
Podría haber usado fotografías de stock o imágenes generadas con Midjourney para cada post. Pero este blog habla sobre la intersección entre diseño y tecnología. Quería que hasta las imágenes reflejaran esa filosofía. Que no fueran decoración sino datos convertidos en forma. Que cada una contara algo sobre el artículo que representa sin necesidad de leerlo.
También hay una razón práctica. Este sistema es completamente automático. Cuando publico un artículo nuevo las imágenes para los tres idiomas se generan solas. No tengo que buscar fotos, no tengo que abrir Photoshop, no tengo que pensar en qué imagen poner. El contenido se ilustra a sí mismo.
Detalles técnicos
Las imágenes se generan en PHP con la librería GD. La grilla es de 32 por 32 cubos sobre fondo blanco. El hash se expande usando MD5 y SHA1 encadenados para cubrir las 1024 celdas. Cada carácter hexadecimal del hash determina si una celda es cubo negro, cubo de color accent, cubo gris claro o espacio vacío. El kanji central se renderiza con la fuente Noto Sans CJK si está disponible en el servidor.
Las imágenes se usan en tres lugares: como thumbnail en la página principal, como cabecera visual dentro de cada artículo y como imagen de Open Graph cuando alguien comparte un link en redes sociales. La misma imagen. Tres contextos diferentes.
Si eres desarrollador o diseñador y quieres implementar algo similar en tu propio proyecto, escríbeme. Es más simple de lo que parece y el resultado le da una identidad única a cualquier blog o plataforma de contenido.