Each case has a hidden truth. Signal = the principle is present and works, or the video sits in its channel's top 20% by views. Noise = absent, fails, or bottom 20%.
Yes on signal = hit (+2). No on noise = correct rejection (+1). Yes on noise = false alarm (−3). No on signal = miss (−1). A false alarm costs more because it means you ship weak work.
d′ = z(hit rate) − z(false-alarm rate). c = −(z(H) + z(F)) / 2. Rates use the log-linear correction so d′ stays finite. The standard error follows Gourevitch & Galanter (1967).
Ladder: Beginner d′ < 1. Novice 1–2. Intermediate 2–3. Expert 3–4. Master ≥ 4. Level 2 unlocks at d′ ≥ 1 after 30 trials. Level 3 unlocks at d′ ≥ 2 after 40 trials. Expert certification per principle needs 60+ trials and a 95% lower bound above 2.
Optimal c: β = (P(noise)/P(signal)) × (1+3)/(2+1). The pool is near 50% signal, so β ≈ 1.33 and c* = ln(β)/d′.
Channel cases use public view counts from each channel's most recent ~120 uploads older than 30 days, snapshot 2026-09-01. Top 20% = signal. Bottom 20% = noise. Older videos have had more time to accumulate views; that is a known confound. Each video appears in exactly one case.
Graph cases are generated from a seeded formula. The truth is exact. The same ID always gives the same curve, so a CSV import replays correctly.