L5 · 01 · Reading & Reproducing Research Papers

Level 5 is where you stop learning only from tutorials and start learning from the frontier itself. Papers are where new capabilities first appear — but they're dense, assume context, and sometimes oversell. This page gives you a method: read in three passes, extract the claim, reproduce it small, and write up what you found.

Level 550 minTrack 20

By the end of this page you can

The three-pass read

Don't read a paper like a book. Keshav's "How to Read a Paper" gives the standard method:

PassTimeReadGoal
1. Bird's eye5–10 minTitle, abstract, intro, headings, figures, conclusionIs this relevant to me? What category is it? What's the claim?
2. Grasp~1 hourEverything except proofs; study figures and tablesUnderstand the method and evidence; note what you'd need to verify
3. ReproducehoursDeep read; re-derive; reimplementCould you rebuild it? Where are the hidden assumptions?

Most papers deserve only pass 1. Pass 2 for papers you'll cite or build on. Pass 3 for the few that change how you work.

Extract the claim

Every paper makes a claim. Write it as a falsifiable sentence: "Method X improves metric Y on benchmark Z by N%, compared to baseline B." Then check:

Reproduce small, then ablate

You rarely need the full result. Reproduce the mechanism at toy scale — then ablate: remove one piece at a time to see which parts actually cause the effect. A result that only works with all 6 tricks is fragile; one that survives ablations is robust.

def experiment(use_technique: bool, seed: int = 0) -> float:
    """A reproduction harness: same task, technique on/off, fixed seeds.
    Returns a score; compare across seeds, not single runs."""
    import random
    rng = random.Random(seed)
    # Placeholder for the real task. Stand-in: technique adds a small boost.
    base = 0.70 + rng.uniform(-0.02, 0.02)
    return base + (0.05 if use_technique else 0.0)


def run(n_seeds: int = 5) -> dict:
    on = [experiment(True, s) for s in range(n_seeds)]
    off = [experiment(False, s) for s in range(n_seeds)]
    return {"with": sum(on) / n_seeds, "without": sum(off) / n_seeds}


if __name__ == "__main__":
    r = run()
    print(f"with technique:    {r['with']:.3f}")
    print(f"without technique: {r['without']:.3f}")
    print(f"delta:             {r['with'] - r['without']:+.3f}")
    assert r["with"] > r["without"]

The discipline: same data, same seeds, only the technique differs. Multiple seeds, because one lucky run proves nothing — the same rule as your eval suites (L3·04).

Using AI to read papers (carefully)

Great uses

  • "Explain this term/method at my level" for unfamiliar notation
  • "What assumptions does this make?" after your own first pass
  • "Write a summary of section 3" then check it against the paper
  • Generating a reproduction plan or pseudocode

Dangerous uses

  • Letting the AI tell you the claim before you've read it (it'll rationalise)
  • Trusting its summary of results without checking the tables
  • Asking "is this paper good?" — sycophancy, not review

Rule: use AI to lower the entry cost, not to replace the read. You'll internalise far less if it pre-digests everything.

Staying current without drowning

Write it up

After a pass-3 read or reproduction, write one page: claim, method, your reproduction, what held up, what didn't, and "should we care?" This is what turns reading into knowledge you can share — and it's the capstone shape for Level 5.

Try it (60 min)
  1. Pick a famous paper (attention, RLHF, RAG). Do pass 1 only: write the claim in one falsifiable sentence.
  2. Now pass 2: list the baseline, the metric, and one thing they didn't measure.
  3. Use AI to explain one section you found hard — then verify its summary against the paper.

Key takeaways