Learning Resources¶
Resources organized by the course they help with, then a short list for beyond the degree. Where a course actually uses a resource, we say so and link the source; everything else is a companion we recommend. For what each course covers, see the Curriculum Map.
By Course¶
| Course | Resource | Why |
|---|---|---|
| 174 / 175 | The Python Tutorial | The official one; better than most paid courses for filling gaps |
| 201 | K. N. King, C Programming: A Modern Approach, 2nd ed. | The required text in Fall 2025 (course site) |
| 204 / 304 | Introduction to Algorithms (CLRS), plus MIT 6.006 | CLRS is the standard reference (201's Fall 2025 site recommends it too); 6.006 has free lectures if a topic doesn't click |
| 229 | The course's public RISC-V labs and the RARS simulator | Install RARS early and work through Lab 1 before it's due |
| 267 / 466 / 467 | Machine learning notes from 267 | The textbook for 267 in Winter 2023 (course site); the clearest bridge into 466/467 |
| 466 / 467 | Bishop, Pattern Recognition and Machine Learning (free PDF); Dive into Deep Learning | Bishop for the theory; D2L for neural nets with runnable code |
| 303 / 403 | Open Kattis, Competitive Programming 4, CSES Handbook | The course is graded on a UofA Kattis site, and the instructor suggests CP4 (info page); the CSES handbook is a free alternative |
| 313 | Kurose and Ross, Computer Networking: A Top-Down Approach; authors' site | The standard networking text; the authors post free lecture videos and interactive problems |
| 325 | Learn Prolog Now! | Free, interactive, and runs Prolog in the browser |
| 365 / 366 | Sutton and Barto, Reinforcement Learning: An Introduction (free PDF); UofA's RL specialization on Coursera | Sutton is UofA faculty and shared the 2024 Turing Award with Barto for this work; 365 uses the UofA RL MOOC (catalogue) |
| 379 | Operating Systems: Three Easy Pieces (free) | Short chapters that line up well with processes, concurrency, and file systems |
| 404 | MDN Learn web development | 404 expects you to write plain HTML/CSS/JS (project spec); MDN is the reference |
| 415 | Crafting Interpreters (free); MLIR Toy tutorial | Crafting Interpreters for the big picture; the Toy tutorial for the MLIR you'll use (course templates) |
Beyond the Degree¶
- Gaps in the curriculum (system design, frontend, containers, CI, production): one resource per gap on the Curriculum Map.
- Tools: The Missing Semester for the shell, Git, and debugging.
- A self-study map: Teach Yourself Computer Science if you want to see what a full CS curriculum looks like outside UofA.
- Practice: Advent of Code every December, good for picking up a new language.
Last verified: October 2026.