Who Watches the Watch List?
After three months of noise from one PHP path, the filter changed. The small promotion raised a larger question about how much judgement belongs inside a telemetry system, and who exercises it.
Read moreThe complete archive of articles, thoughts, and engineering notes.
After three months of noise from one PHP path, the filter changed. The small promotion raised a larger question about how much judgement belongs inside a telemetry system, and who exercises it.
Read moreA single thirty-day window made the scanning look like one steady thing. Three months shows the opposite: overlapping campaigns that surge and vanish, an edge that loses its lead and then takes it back, and a curated filter already drifting out of date.
Read moreThis site's robots.txt politely asks crawlers to avoid six paths. None of the six exist. Anyone who asks for one anyway has just introduced themselves.
Read moreSome code changes can be verified by reading the diff. Others require understanding the code. The split matters.
Read moreOne CloudFront edge location dominated the probe traffic by a factor of six. Pulling that thread led to Azure Canada Central and a particular kind of internet scavenger.
Read moreA homework photo turned a simple maths question into three valid answers and a late-night lesson in why notation matters.
Read moreA static site with no login pages, no forms, and no commercial value still attracts more than twenty thousand unsolicited requests a month. This is what that traffic contains.
Read moreWhy a CloudFront Function was the right choice for canonical host redirects and URL rewriting, and what would change that decision.
Read moreHow a slow GitHub Actions run led to a handful of small fixes: browser caching, dropping WebKit, and understanding what --with-deps actually does.
Read moreA privacy-preserving analytics pipeline on AWS, built to cost almost nothing.
Read more