What I Learned Rebuilding Search Three Times

The evolution of Zettelgarden’s search: frontend hacks, brittle SQL, and finally a dedicated engine.