Jeffrey M. Barber

Tombstone

harvester

Jul 2019 · age 37

What it was

A week-long tool for moving small-business websites, law firms in both samples, off an old CMS: not by copying the HTML, but by turning each site into template plus JSON so the content could be poured into a new design. It had a deliberately odd topology. Firefox was the crawler, steered by a sidebar and an injected content script Jeff called the trojan. A local Node proxy was the database: every response passed through it and was stored byte for byte before anything interpreted it. The trojan kept asking the proxy "what next?" and was told to harvest links, go to a page, or run the capture rules, a small JSON language of selectors with scoped repetition that painted a coloured border on everything it took. A replay server then served the captured site with no origin at all. It worked for one site.

Wins, for the age

What it taught

Genealogy

Ancestors: none on record. A standalone spike. Descendants: Opinion Panel: documents taken in raw, then extracted into structured records.

Epitaph

Here lies harvester: a browser talked into crawling itself, a proxy that remembered everything it saw, and one small firm's website reborn as a pile of JSON. It worked once, on purpose.