A personal applied-learning workspace: ramp on a concept by doing, following the 70 / 20 / 10 split.
- 70% hands-on — runnable notebooks (with graphics), small code examples, exercises.
- 20% mentoring — how the concept applies to my real projects, open questions to talk through, a progress tracker.
- 10% coursework — a compact knowledge base: essentials, seminal + frontier papers, a related-topics map, courses.
One self-contained folder per topic lives under topics/. Each is generated by the global /user-learn <topic> skill.
- Diffusion models — generative models that learn to reverse a gradual noising process.
- Model distillation — train a small "student" to replicate a large "teacher".
topics/<slug>/
├── README.md # index + suggested learning path
├── 10-coursework/ # 10% — knowledge base (essentials, papers, related topics, courses)
├── 20-mentoring/ # 20% — project seed-ideas, open questions, progress tracker
└── 70-handson/ # 70% — notebooks/, examples/, exercises.md
uv sync # one-time: installs jupyter, numpy, matplotlib, torch (CPU), etc.
uv run jupyter lab # or open the folder in VSCode and pick the .venv kernelEvery notebook is committed already executed (graphics embedded), so you can read it through without running. To re-run them all headless as a sanity check:
bash scripts/run_all_notebooks.sh(or powershell -ExecutionPolicy Bypass -File scripts/run_all_notebooks.ps1)
In an authenticated Claude Code session: /user-learn <topic>. The skill scaffolds the 70/20/10 folder, fans out one sub-agent per file, and self-validates every notebook by executing it.
applied_learning is a valid b2_project_goblin target — uv run goblin suggest applied_learning (from the goblin repo) surfaces ranked "next learning steps" grounded in these topic folders. A future goblin learning-companion phase (spaced repetition, quiz generation, next-exercise nudges) is seeded at b2_project_goblin/seeds/phase-g-learning-companion.md.