Foundation-strengthening reading and practice
This inventory accompanies the second improvement pass. Start with the original curriculum lessons and runnable exercises; consult an external source to answer a specific question. Full-book reading is optional depth, and purchases or full-book Markdown conversions are unnecessary. Source checks and local verification are documented in the dated authoring reports; they are not learner or independent-review results.
Program design and diagnosis
Use How to Design Programs, Part I for contracts, examples and systematic function design; transfer the method to the existing Python work rather than starting a second language course. Use The Debugging Book introduction to practice competing hypotheses and discriminating experiments. Consult the Python tutorial for syntax gaps. These support the Semester 00 design clinic and its independent transfer; they do not replace the tracker project.
Mathematics, languages and computational limits
Semester 01's connections check reuses existing probability, calculus and numerical-computing sources. Derive the sampling and units examples before reading more.
Use MIT 6.045J lecture notes selectively: finite automata/nonregularity in lectures 3–5; machines, decidability and reductions in 6–9. Optional book: Michael Sipser, Introduction to the Theory of Computation, corresponding sections in the edition available to you. The free course and local bridge suffice. The language-boundaries lab supports finite checks; the nonregularity and impossibility arguments must still be explained independently.
The Semester 03 construction clinic adds original product/sum, observation and evaluation exercises. Use its existing module resources for targeted repair; no additional book purchase is assigned.
Parallel computing
Use CMU Work and Depth and selected parallel-algorithm notes for cost models. Consult pthread_create and pthread_join, plus the local platform manual, for API behavior. Existing OSTEP concurrency selections remain the book backbone. Complete the native histogram clinic; model bounds do not guarantee speedup.
Database evidence
Read SQLite isolation, WAL and the Python sqlite3 documentation alongside the database-boundaries experiment. Use PostgreSQL transaction isolation for the separate PostgreSQL sessions. A successful SQLite process-exit experiment does not establish PostgreSQL behavior or power-loss durability.
Assistance, review and release decisions
Use NIST SSDF 1.1 as the identified secure-development reference and NIST AI RMF with the named teaching version 1.0. Record the actual revision consulted as these evolve. These are decision frameworks, not certification from completing a worksheet. The S07 proposal fixture, S08 full-effort comparison and S09 artifact-substitution challenge supply concrete practice. No AI subscription is needed; authored cases must not be mislabeled actual model observations.
Common statistical learning
An Introduction to Statistical Learning offers author-hosted Python/R books and course links. Select statistical learning, classification, resampling and regularization sections to repair a named weakness. The scikit-learn pitfalls guide supports training-only preprocessing and leakage reasoning. The core bridge reuses six existing AI-specialization lessons; no full specialization or deep-learning stack is required.
Practice route and purchasing rule
The roadmap and semester indexes link each new clinic. Preserve predictions, failed attempts, repairs, actual output, assistance and limitations. Use one primary explanation first, then a second only when a concrete confusion remains. Borrow or use author-provided access before considering a purchase. Buy a book only if sustained use makes its format valuable; owning it does not close an implementation, reviewer or retention gate.
These additions strengthen practice and reasoning. No collection of resources establishes a population percentile, future-proof expertise or immunity to new technology; the required evidence is independent transfer, maintained work and revised judgment when assumptions change.