CSE Roadmap

Common tier · about 4 hours · 4 parts

Part 3 of 4 · 2 min read

Exercises

Easy

Easy 1: Run it (30 minutes)

Run python -m pytest -q, python sample/eval.py and python run_all.py in code/mini-portfolio.

Done when: you can explain each table in the results.

Easy 2: Fill the README template (1 hour)

Copy templates/README.template.md for your own project and write every section, leaving placeholders for numbers.

Done when: a stranger can state what it does and for whom after reading the first paragraph.

Easy 3: Lint your README (30 minutes)

Run lint on your current README.

Done when: you have fixed or justified every flag.

Medium

Medium 1: Generate from results (3 hours)

Make your evaluation write results.json and generate your README table from it with render.

Done when: one command rebuilds the README and the provenance check reports nothing.

Medium 2: Write the architecture note (3 hours)

Fill the architecture template with at least five decisions, each with alternatives and what you gave up.

Done when: each decision names evidence or states that it is an assumption.

Medium 3: Cold read (3 hours)

Ask three people to read your README for 60 seconds and report what they understood.

Done when: you list what each missed and what you changed.

Hard

Hard 1: Evaluation report with error analysis (8 hours)

Write the full evaluation report for your capstone, including ten failures grouped by cause with counts. (I did not run this, so your results are the ground truth.)

Done when: a reader can reproduce your headline number with the commands you give.

Hard 2: Continuous check (8 hours)

Add a continuous-integration job that regenerates the README tables and fails when they differ from the committed file or when the linter raises a flag. (I did not run this.)

Done when: a deliberate stale number fails the build.

Hard 3: Demo recording (8 hours)

Record the 90-second demo from the script on a clean machine, with captions, and test it with three viewers. (I did not run this.)

Done when: viewers can state the user, the result and one limit.