-
Cada novo forjamago deixava a busca mais lenta: matando o N+1 por trás do Forgemage.net
O diretório de forjamagos do Forgemage.net rodava umas sete queries por card — reviews, tempo de resposta, status online, três relações lazy — além de contadores de facetas recalculados a cada mudança de filtro. Veja como levei uma página de 24 cards de ~168 queries para um punhado, com um cache em batch escopado à request e uma passada paginate-then-hydrate, sem mexer nas páginas de perfil individuais.
Ler artigo ↗ -
Markdown for Agents, self-hosted: um subscriber Symfony no lugar de um plano da Cloudflare
A Cloudflare converte páginas em markdown para agentes de IA via Accept: text/markdown — nos planos pagos. O mesmo contrato HTTP cabe num event subscriber Symfony de 144 linhas. Minha homepage foi de 59 KB de HTML para 7,7 KB de markdown, na mesma URL.
Ler artigo ↗ -
RepoWrapped: um Spotify Wrapped para um repo do GitHub, e a API que brigou comigo
Uma ideia de fim de semana — uma página de stats compartilhável e um badge de README para qualquer repo e contributor do GitHub — virou uma briga com a API de stats do GitHub: 202 que nunca se resolvem, um muro no top 100 e um lookup do primeiro commit que você precisa arrancar de um header.
Ler artigo ↗