Level 2 · M.Sc
Python Programming
Syllabus · 42 phases · ~1 year
Every unit this programme teaches, in the order it is taught. Headlines only — the material itself opens once you are enrolled.
- Phase 0 Foundations & tooling
- Phase 1 Running Python
- Phase 2 Values, names & the object model
- Phase 3 Numbers, booleans & operators
- Phase 4 Strings, bytes & Unicode
- Phase 5 Lists & tuples
- Phase 6 Dictionaries & sets
- Phase 7 Control flow & structural pattern matching
- Phase 8 Functions, arguments, scope & closures
- Phase 9 Comprehensions & generator expressions
- Phase 10 Iterators, generators & the iteration protocol
- Phase 11 Exceptions & error handling
- Phase 12 Classes & instances
- Phase 13 Dunder methods & operator overloading
- Phase 14 Properties, encapsulation & state
- Phase 15 Inheritance, composition & the MRO
- Phase 16 dataclasses, enums & namedtuples
- Phase 17 Duck typing, protocols & ABCs
-
Phase 18
Modules, the import system &
__main__ - Phase 19 Packages, project layout & building a distribution
- Phase 20 Virtual environments, dependencies & lockfiles (uv)
- Phase 21 File & path I/O
-
Phase 22
Serialization &
tasqpersistence - Phase 23 Dates, times & timezones
- Phase 24 Regular expressions
- Phase 25 The functional toolbox
- Phase 26 Type hints & static typing with mypy
- Phase 27 Testing with pytest
- Phase 28 Property-based testing (Hypothesis)
- Phase 29 Debugging, logging & introspection
- Phase 30 Processes, threads & the GIL
- Phase 31 subprocess & talking to the OS
- Phase 32 async/await & an intro event-loop model
- Phase 33 HTTP clients & talking to APIs
- Phase 34 A small database-backed app (sqlite3)
-
Phase 35
A small web API for
tasq(FastAPI) - Phase 36 CLI ergonomics, configuration & packaging
- Phase 37 Performance basics
- Phase 38 Security & robustness
-
Phase 39
Capstone:
tasqis complete - Phase 40 Hardening, postmortem & "What's Next"
- Phase 41 Portal integration