Skip to content

English · Español

Lab 02 — Curate the "What's next" reading list

🇪🇸 Veinte recursos seleccionados con cuidado. Cada uno con un "por qué está en la lista" y un "qué hacer con él". Una lista de 200 bookmarks no es una lista; una de 20 curada es una hoja de ruta.

Objective

Produce docs/phase-40-hardening-postmortem/READING_LIST.md: 20-40 entries, organised into categories, each annotated. Plus a final "Off-ramps" section linking back to the punted threats from lab 00.

Setup

  • Lab 00's off-ramp entries (already added to READING_LIST.md).
  • A clean Markdown file with section headers.
  • Your bookmark history, the journal entries, the report files — anything that points at "things I wanted to read but didn't get to."

Tasks

  1. Define the categories. Eight is a reasonable number. Suggested:

  2. Foundations & math (review or fill gaps).

  3. Architectures beyond Mini-GPT (mixture-of-experts, state-space, multi-modal).
  4. Training at scale (distributed, mixed precision, parallelism).
  5. Inference at scale (PagedAttention, speculative, serving frameworks).
  6. Post-training (RLHF, DPO, constitutional, evals).
  7. Production / MLOps (deployment, observability, registries).
  8. Security & alignment (jailbreaks, prompt injection, model alignment).
  9. Off-ramps (specifically connected to punted threats and "what's next" projects).

  10. Each entry has the same shape:

### [Title](url)

- **Type:** paper / blog / book / video / repo / course
- **Why on this list:** one sentence about the gap it fills.
- **What to do with it:** one sentence about how to engage — read end-to-end, skim §2, implement, watch first 30 min, etc.
- **Estimated time:** 30 minutes / 2 hours / a weekend / multi-week.
- **Prerequisites:** if any.
  1. Aim for 20-40 entries. Quality over quantity. Each entry should pass the test: "if Borja only had 10 things to read after the project, would this be on the list?" If no, cut.

  2. Distribute across categories. Roughly even. Don't put 15 in one category and 1 in another. If one category is sparse, either find more or drop the category.

  3. Connect off-ramps to threats. The "Off-ramps" section should:

  4. List each punted threat from lab 00 as an off-ramp.
  5. Add 2-3 additional off-ramps not tied to threats (e.g., "scale up to a 1B-param model").
  6. Each off-ramp lists ≥ 1 recommended resource from the rest of the reading list.

  7. Add a top-of-file preamble: 50-100 words. What this list is (a personal recommendation set), what it isn't (an exhaustive AI reading list), how to use it (pick one per month, not all at once).

  8. Sanity-check the URLs. Every link works as of the date written. Add a "Last verified: YYYY-MM-DD" line at the bottom.

Examples of good entries

### [The Annotated Transformer](https://nlp.seas.harvard.edu/2018/04/03/attention.html)

- **Type:** blog (with code).
- **Why on this list:** Most accessible line-by-line walkthrough of the original transformer paper. Useful even after building one from scratch — different perspective.
- **What to do with it:** Read end-to-end, but skim the parts you already implemented (Phase 17).
- **Estimated time:** 2-3 hours.
- **Prerequisites:** Phase 17 done.
### [vLLM: Easy, Fast, and Cheap LLM Serving with PagedAttention](https://blog.vllm.ai/2023/06/20/vllm.html)

- **Type:** blog (+ associated paper).
- **Why on this list:** Reference architecture for the inference serving you scratched at in Phase 33. PagedAttention is the engineering trick that makes 100s of concurrent requests feasible.
- **What to do with it:** Read the blog, skim the paper §1-3. Then `pip install vllm` and serve a small HF model.
- **Estimated time:** 4 hours (read) + a weekend (try it).
- **Prerequisites:** Phase 27 (modern attention), Phase 33 (serving).

Examples of bad entries (avoid)

### [Attention Is All You Need](https://arxiv.org/abs/1706.03762)

- One of the most influential papers in deep learning.

Why bad: no "why on the list," no "what to do," no estimated time. Reads like a Wikipedia stub.

### [https://github.com/some/cool-repo](https://github.com/some/cool-repo)

- Has some good code.

Why bad: no title, no type, no signal about what's in it.

Deliverable

docs/phase-40-hardening-postmortem/READING_LIST.md:

# What's next — reading list

(50-100 word preamble.)

## Foundations & math
(2-5 entries)

## Architectures beyond Mini-GPT
(2-5 entries)

...

## Off-ramps
(3-5 entries, each connecting to a punted threat or to a next-project direction)

---
Last verified: 2026-05-23

Acceptance

  • ≥ 20 entries, ≤ 40.
  • Each entry has all 5 fields (Type, Why, What to do, Time, Prerequisites).
  • Categories present and roughly balanced.
  • Every URL works (last verified date < 2 weeks old).
  • Off-ramp section references at least 3 punted threats from lab 00.

Pitfalls

  • Including everything you've ever bookmarked. This is a recommendation list, not a bookmark dump. Most of your bookmarks should be cut.
  • Picking only "famous" resources. The Karpathy videos, the OpenAI cookbook, the Annotated Transformer — yes, include them. But also include the less-famous resources that genuinely helped you. They're often higher-signal because fewer people have already read them.
  • Resources that require a paid subscription. Note when an entry is paywalled. Prefer open alternatives where they exist.
  • Mixing "off-ramps" with "things to read." The off-ramps section is for projects/directions, not articles. Articles in support of an off-ramp belong in their topic section, referenced from the off-ramp.
  • Letting the list go stale. Add a "Last verified" footer. Plan to re-verify at next-project kickoff.

Stretch

  • Add a "skip these" section. Popular resources that you specifically did NOT find useful, with one-sentence "why not." Equally valuable.
  • Add an explicit "if you only have 10 hours" subset. Five entries from the list that are non-negotiable.

Next: 03-knowledge-graph.md