Learning Track · 6 Modules · 24 Lessons · 23 Exercises · 18h
The Introduction to programming curriculum
Programs translate algorithmic intent into memory operations across distinct runtime architectures. Master low-level bit representation, memory layouts, and manual allocation in C; compile-time type safety, RAII, and zero-cost polymorphic abstractions in C++; and dynamic object graphs, bytecode interpretation, and metaprogramming in Python.
Prerequisites & Preparation
Prerequisites: None
Recommended: Start here if new to low-level memory, systems programming, or C/C++
Scope: Engineers wanting to understand physical memory in C, RAII in C++, and dynamic runtimes in Python.
Track Architecture
- [systems] Systems and memory in C: Bits, memory layout, pointer arithmetic, stack frames, and manual heap allocation.
- [objects] Objects and lifecycles in C++: RAII, value semantics, smart pointers, vtables, and generic containers.
- [scripts] Dynamic execution in Python: The PyObject model, dynamic attribute lookup, C3 linearization, closures, and generator pipelines.
- [bridges] Cross-paradigm engineering: Stack virtual machines, cycle-detecting garbage collectors, and foreign function interfaces.
Systems and memory in C
Bits, memory layout, pointer arithmetic, stack frames, and manual heap allocation.
Objects and lifecycles in C++
RAII, value semantics, smart pointers, vtables, and generic containers.
Dynamic execution in Python
The PyObject model, dynamic attribute lookup, C3 linearization, closures, and generator pipelines.
Cross-paradigm engineering
Stack virtual machines, cycle-detecting garbage collectors, and foreign function interfaces.