33.000 linhas de XML para te dizer que heavyWork() demora: como dominei o xctrace para LLMs

Na semana passada, eu estava analisando o desempenho de um aplicativo Swift usando o Instruments. Nada fora do comum: xctrace record, xctrace export, copiar o XML no contexto do Claude Code, pedir para detectar os hotspots. E o Claude me responde: “O arquivo XML é muito grande, não consigo processá-lo de forma confiável.” 33.553 linhas de XML. Tudo isso para um programa com duas funções. O verdadeiro problema xctrace export é uma ferramenta incrível. Ele te dá tudo: cada sample, cada backtrace, cada frame com seu binário, seu endereço de memória, seu UUID. É algo completo, preciso e exaustivo. ...

8 de março de 2026 · Fernando

Minha IA leu um JSON do disco 900 vezes dentro de um for (e por que nenhum linter pode te salvar)

Na semana passada, minha IA gerou um código onde ela lia um arquivo JSON do disco, fazia o parse, fazia uma busca e repetia isso 900 vezes dentro de um for. Cada iteração: abrir o arquivo, decodificar o JSON, buscar um valor e descartar tudo. Depois, fazia tudo de novo. É um erro que eu ensino meus alunos a evitar no primeiro mês de programação. O que aconteceu (sem enrolação) Estou desenvolvendo o Tokamak, um aplicativo para barra de menus no macOS que monitora a cota do Claude Max. Parte da funcionalidade escaneia ~900 arquivos JSONL de sessões de Claude Code. Para cada arquivo, o Tokamak precisa saber o byte offset de onde parou na última vez (leitura incremental — só ler o que é novo). ...

24 de fevereiro de 2026 · Fernando