← Back to catalogue

Discipline herald — Software
Discipline herald

Level 3 · Ph.D

Ph.D Advanced Python Programming

Software · Live · v0

Doctoral Python engineering — interpreter internals, performance, typing systems, and large-scale architecture.

Path type
Software
Enrollment

€19.95

Deadline
Next cohort starts 2027-09-06 (AY 2027/28)
Length
+1 year · 56 phases
Language
English · Español
Content freshness
Curriculum updated 2026-08-23 · content rev 694abd1b
Cortex Credits (CC)
280 CC · 364 CC across all tiers of this programme
What are Cortex Credits?
Syllabus
View the phase syllabus
  1. Foundations
  2. What "advanced" means + the pyforge target
  3. The CPython object model in depth
  4. Bytecode & the dis module
  5. The CPython evaluation loop (the ceval mental model)
  6. Reference counting & the cyclic garbage collector
  7. Memory: arenas, pools, __slots__, sys.getsizeof
  8. The import system internals
  9. Descriptors & how methods/properties really work
  10. Metaclasses & class creation
  11. Class-customization hooks: __init_subclass__, __set_name__
  12. Attribute lookup, __getattr__/__getattribute__ & proxies
  13. Abstract base classes & the collections.abc tower
  14. Generators, coroutines & yield from
  15. itertools & lazy pipelines at scale
  16. Decorators with state & context managers
  17. Generics, TypeVar, ParamSpec & variance
  18. Protocols, structural typing & overloads
  19. Typed plugin systems & runtime type introspection
  20. Strict typing of dynamic code (the limits of mypy)
  21. Threading in depth & the GIL (and the no-GIL future)
  22. multiprocessing & shared memory
  23. concurrent.futures & executor patterns
  24. asyncio I — the event loop inside
  25. asyncio II — synchronization, cancellation & structured concurrency
  26. Async I/O at scale — streams & servers
  27. Choosing a concurrency model — a measured comparison
  28. Profiling & measurement
  29. Optimization & the cost model of Python operations
  30. The buffer protocol & memoryview
  31. C extensions via the C-API
  32. Cython & native acceleration
  33. ctypes/cffi & calling shared libraries
  34. Building wheels, sdists & native builds
  35. API design, deprecation & semantic versioning
  36. Plugin architecture & entry points
  37. Publishing, supply-chain & reproducible builds
  38. Developer tooling (an AST-based linter/codemod)
  39. Documentation, examples & a stable public surface
  40. Capstone
  41. Hardening, postmortem, "What's Next"
  42. Portal integration
  43. The specializing adaptive interpreter (PEP 659)
  44. The tier-2 optimizer & the experimental JIT
  45. Free-threading in depth (PEP 703) & thread-safe native code
  46. Subinterpreters & the per-interpreter GIL (PEP 684/734)
  47. Rust extensions with PyO3 & maturin
  48. The stable ABI, limited API & extension portability
  49. Embedding CPython & the initialization config (PEP 587)
  50. CPython on WebAssembly (Emscripten / Pyodide)
  51. Production observability: sys.monitoring (PEP 669) & tracing
  52. Rigorous benchmarking & the CPython research literature
  53. Proposing the doctoral capstone (research method)
  54. Capstone I: execute the research
  55. Capstone II: verified publication & hardening
  56. Frontier, ethics & close; portal integration
Enrolment prerequisites

What changed

Every release of this programme, newest first.

  1. v0 Pilot Wave A backfill: v0 pilot baseline

Professor: Vacancy available

Sign in to request enrolment

↑↓ to move · ↵ to open · esc to close Sign in to search programmes and course content.