Palo Alto
I build instruments for things that are usually argued about instead of measured — how an interface holds attention, when a conversation is working on someone, whether a claim in the persuasion literature survives contact with its own evidence.
Most of it ships as software: iOS apps and web tools, and the measurement tooling underneath them.
Selected work → · ~35 projects across iOS, web, and research instrumentation.
- cognitive-attack-surface — A defensive taxonomy mapping a documented influence technique to the cognitive mechanism it exploits, each entry paired with a countermeasure and a testable audit criterion. Campaign-detection frameworks classify what an adversary does and stop at observable behavior; this one goes down a layer and attaches a check a reviewer can run. Includes a published citation pass that corrected three of my own errors and pulled two citations that turned out not to resolve to any real publication. Assessment 001 is in the repo: two adverse findings, and no composite score, because only one of six criteria was settleable from public evidence.
- mechanism-detector — Names which psychological mechanism an AI conversation is using, turn by turn. Labels manipulation, never generates it.
- clearframe-public — A Chrome extension that names the persuasion techniques in a headline and steelmans both sides without ideology labels.
- closing-evidence-atlas — A pre-registered systematic review with Bayesian meta-analysis over 39 named persuasion techniques. 11,785 records screened across 7 databases, 44 extracted. 15 of the most-taught techniques have zero peer-reviewed studies behind them. The protocol and the deviation log are committed before the results, so the work can be checked against what I said I would do.
- apca-gate — A contrast gate that does not lie in the dark. WCAG 2's ratio false-passes dark interfaces; measured against a dark ground, a colour that clears 4.5:1 lands at APCA Lc 35, under the floor for text at any size. One file, no dependencies, and
--selftestreproduces the four published reference values before you trust a number from it. - pam1-bandit — A fruit-fly mushroom-body model playing a slot machine, and a sweep for which payout schedule hooks it hardest.
- lsm-discovery — A Python replication of Pennebaker's Language Style Matching, validated on persuasive dialogue.
Native SwiftUI, shipped solo, App Store live.
- weight-and-watt — Your real maintenance number, computed from your own data rather than a formula.
- WeighIt — Decision analysis built on Analysis of Competing Hypotheses.
- closer-gym-ios — Daily drills, SwiftUI, iOS 17+.
- Three training apps drilling one operator skill each: reality-distortion-ios, mindcraft-ios (56 questions, each cited — Cialdini, Kahneman, Langer 1978), viraliq-ios.
The third app cost less to ship than the second.
- raroque-repo-audit — A pre-publish security-audit skill that catches the Supabase RLS and Stripe-webhook failures policy-level audits miss.
- linkedin-optimizer — Scores a draft, then rewrites it for a chosen audience. 1,200 lines, single file, no build step.
- post-bridge-mcp — A 50-tool MCP server for solo-dev marketing.
- ae-playbook — The same mechanism work pointed at commercial conversations: annotated outbound, a discovery framework, an objection matrix, each carrying the mechanism under the move.