Decifrando o script bash ofuscado em uma camiseta da Uniqlo

OCR e transcrição

  • Alguns chamam a camiseta de um caso “pesadelo” de OCR; outros relatam que é trivial para ferramentas modernas (Live Text do Safari/Preview, imagem-para-texto do Android, Google Lens, Gemini, Claude, ChatGPT, PaddleOCR, sistemas industriais de OCR).
  • Vários dizem que digitar manualmente seria mais rápido e confiável, evocando nostalgia de digitar programas de revistas; outros observam que humanos cometem erros e preferem OCR com correção humana.
  • Alguns descrevem fluxos de trabalho com várias ferramentas: rodar múltiplos motores de OCR, comparar as saídas e corrigir manualmente as divergências; um menciona uma ferramenta personalizada que agrupa erros prováveis de OCR para revisão rápida.
  • A falta de correção de erros no payload base64 faz da OCR/transcrição o verdadeiro desafio.

O script foi gerado por LLM?

  • Um grupo argumenta que “sim”: comentários unusually densos e às vezes redundantes, padrões parecidos com copy-pasta, uso meio desajeitado de bc e lógica estranha de cor/gradiente parecem LLM-ish.
  • Outros argumentam que “não”: humanos também comentam demais, os comentários podem ser usados para aumentar o comprimento do base64 e colocar caracteres de “PEACE FOR ALL”, e as peculiaridades combinam com um desenvolvedor Python escrevendo bash.
  • Um vídeo do designer e um protótipo em Python são discutidos; as pessoas discordam sobre o quanto isso apoia ou refuta o envolvimento de LLM. No geral, continua sem resolução.

Comportamento, portabilidade e estilo do script

  • O script depende de bc; alguns sistemas (por exemplo, instalações no Debian, Alpine e outros) não o têm por padrão, o que leva a erros em tempo de execução. Alternativas em Python e awk são compartilhadas, muitas vezes mais rápidas e simples.
  • Problemas de locale (vírgula decimal, LC_ALL=C vs UTF‑8) podem quebrar os valores/decimais; variáveis de ambiente COLUMNS/LINES são usadas.
  • Vários sugerem adicionar sleep no loop para tornar a animação legível. Outros apontam problemas de estilo de shell (sem set -euo pipefail, escolhas de base64, tratamento de SIGINT).

Design da camiseta, cultura e marketing

  • São mencionadas colaborações Uniqlo–Akamai e camisetas anteriores com código (incluindo em Go). Muitos gostam do fato de esta conter código totalmente funcional em vez de texto “tecnológico” falso.
  • São feitas comparações com camisetas DeCSS e outras tradições de “código na roupa”; alguns veem isso como publicidade inteligente pela qual as pessoas pagam para vestir.

Fontes e tipografia

  • Há debate sobre se a fonte impressa imita Consolas ou Roboto Mono; o consenso é que a camiseta usa uma fonte semelhante a monoespaçada, mas com kerning/larguras variáveis, provavelmente via ferramentas de design.
  • Isso desencadeia discussão sobre fontes quase monoespaçadas (Monaspace, fontes iA Writer, Trispace) e técnicas como “texture healing” e ligaduras.

Automação vs esforço manual

  • O tópico referencia um XKCD sobre automatizar demais tarefas pequenas. Alguns argumentam que digitar manualmente teria sido mais rápido do que pipelines elaborados de OCR/LLM; outros valorizam a automação por reduzir erros e por diversão.

Segurança e enquadramento como “obfuscação”

  • Vários observam que isso é codificação base64, não uma obfuscação séria, e questionam chamar isso de “Easter egg” já que está impresso abertamente.
  • Surgem preocupações em tom leve sobre pessoas executando base64+eval desconhecido, superfícies de ataque semelhantes a QR codes ou até um hipotético zero-day do Tesseract escondido no texto.