Not a single work but a category… History; for many users, AdBlock, AdBlock Plus, and uBlock.
Over the years community-maintained EasyList etc. became so good nowdays we enable a blocker with defaults and almost never have to intervene.
But for a long time, ad blockers were remarkably good at enabling end-users to intervene (adversarially!) from two directions:
- Start from interface → I don’t want to see this
. - Start from behavior (log of HTTP requests) → I don’t want it to do this
.
There is some PbE distance from concrete ad example to DOM selector/URL regex syntax that is likely to generalize; blockers bridge it by synthesizing some good guesses (and by one-off/best-effort nature—users accept partial blocking, and are angry enough to even tolerate partial breakage).
Plus two affordances to debug:
- toggle off & reload (is the site itself broken or did blocker/me do that?)
- same log of requests shows both blocked and non-blocked ones, letting you correct in both directions.
Additional Resources
This is a subset of browser extensions but blockers have much lower barrier to user entry. You don’t “write an extension”, you use off-the-shelf blocker’s focused dev tools to add a custom rule (frequently, with just a few clicks).
Metadata
- suggesters: cben
- curators: cben