How I tried to teach a scraper what not to load
Pixel Probe got faster once I started aborting the right requests. Then I tried to make that blocklist learn on its own.

Pixel Probe got faster once I started aborting the right requests. Then I tried to make that blocklist learn on its own.
How I built Pixel Probe to catch first-party analytics requests that still carry Google Analytics payloads.
Pixel Probe needed a real browser in a serverless route. The final setup looks tidy, but the path there went through a few dead ends first.
Pixel Probe started as a network inspector. It got much more reliable once I separated code that exists on the page from behavior I could actually observe.
At AlumniFire, the quiz wasn't just trivia. It was a school-specific scoring flow that fed sharing, reminder emails, and signup attribution without breaking the subdomain model.
A slow admin dashboard usually means someone hid network latency inside a nice-looking graph. I sped up an old Rails dashboard by parallelizing Google Analytics queries and caching time-bucketed results.
An internship search shouldn't force students to rebuild the same filters every time they come back. I built the flow so criteria persisted, geolocation stayed queryable, and search results could turn directly into resume drops.
Autosave gets tricky when the same field can be creating a record one moment and updating it the next. In Generations, quick edits on secondary parameters exposed that edge, so I collapsed create and update into one route and made the write path idempotent enough for rapid input.
An autosave feature is easy to pitch and easy to get wrong. The real work was making sure form writes survived unstable internet, page reloads, and rapid-fire input across a Rails app full of live data entry.
Security features get worse when they surprise people. In Generations and Reflections, I built a session monitor that warned before sign-out, let the user extend the session with a small interaction, and fixed the timer bugs that could have signed them out anyway.