Decodificando el script bash ofuscado en una camiseta de Uniqlo
OCR y transcripción
- Algunos llaman a la camiseta un caso “de pesadilla” para OCR; otros dicen que es trivial para las herramientas modernas (Live Text de Safari/Preview, imagen-a-texto de Android, Google Lens, Gemini, Claude, ChatGPT, PaddleOCR, sistemas industriales de OCR).
- Varios señalan que teclearlo a mano sería más rápido y fiable, evocando la nostalgia de teclear programas desde revistas; otros apuntan que los humanos cometen errores y prefieren OCR más corrección humana.
- Unos cuantos describen flujos de trabajo con varias herramientas: ejecutar varios motores OCR, comparar las salidas y corregir manualmente los desajustes; uno menciona una herramienta personalizada que agrupa errores OCR probables para revisarlos rápido.
- La falta de corrección de errores en la carga base64 hace que el verdadero reto sea el OCR/transcripción.
¿Fue el script generado por un LLM?
- Un bando argumenta que “sí”: comentarios inusualmente densos y a veces redundantes, patrones tipo copia-y-pega, uso torpe de
bcy una lógica extraña de color/degradado dan sensación de LLM. - Otros sostienen que “no”: los humanos también sobrecomentan, los comentarios quizá se usan para rellenar la longitud base64 y colocar caracteres de “PEACE FOR ALL”, y las rarezas encajan con un desarrollador de Python escribiendo bash.
- Se discuten un vídeo del diseñador y un prototipo en Python; la gente discrepa sobre cuánto apoyan o refutan la participación de un LLM. En conjunto, sigue sin resolverse.
Comportamiento, portabilidad y estilo del script
- El script depende de
bc; algunos sistemas (por ejemplo, instalaciones de Debian, Alpine y otros) no lo tienen por defecto, lo que provoca errores en tiempo de ejecución. Se comparten alternativas en Python y awk, a menudo más rápidas y sencillas. - Los problemas de locale (coma decimal,
LC_ALL=Cfrente a UTF-8) pueden romper los corazones/decimales; se usan las variables de entornoCOLUMNSyLINES. - Varios sugieren añadir
sleepen el bucle para que la animación sea legible. Otros señalan problemas de estilo shell (sinset -euo pipefail, elección de base64, manejo de SIGINT).
Diseño de la camiseta, cultura y marketing
- Se mencionan colaboraciones Uniqlo–Akamai y camisetas de código anteriores (incluidas en Go). A muchos les gusta que esta contenga código realmente funcional en lugar de texto “con pinta de técnico” pero falso.
- Se trazan comparaciones con camisetas de DeCSS y otras tradiciones de “código en la ropa”; algunos lo ven como publicidad ingeniosa que la gente paga por llevar puesta.
Fuentes y composición tipográfica
- Hay debate sobre si la fuente impresa imita Consolas o Roboto Mono; el consenso es que la camiseta usa una fuente de aspecto monoespaciado, pero compuesta con kerning/anchos variables, probablemente mediante herramientas de diseño.
- Esto dispara conversaciones sobre fuentes cuasi monoespaciadas (Monaspace, las fuentes de iA Writer, Trispace) y técnicas como “texture healing” y ligaduras.
Automatización frente a esfuerzo manual
- El hilo menciona un XKCD sobre sobrerautomatizar tareas pequeñas. Algunos sostienen que teclearlo a mano habría sido más rápido que complejos flujos de OCR/LLM; otros valoran la automatización por reducir errores y por diversión.
Seguridad y marco de “ofuscación”
- Varios señalan que esto es codificación base64, no una ofuscación seria, y cuestionan llamarlo “Easter egg” cuando está impreso abiertamente.
- Aparecen preocupaciones en tono ligero sobre gente ejecutando
evalcon base64 desconocido, superficies de ataque tipo código QR, o incluso una hipotética zero-day de Tesseract escondida en el texto.