CMU's intro computer science sequence is one of the most respected in the world - and its shape is public. Here's the real progression: what language each course uses, what tool students actually work in, and the signature assignment that defines it. Each step links to a free cheat sheet here so you can build the same skill yourself.
The very first course. Students learn Python from first principles - no prior experience assumed - and build up through recursion, object-oriented programming, and working with strings, lists, sets, and dictionaries.
This is the jump from Python's guardrails to C's bare metal. Students spend most of the term in C0 - CMU's own simplified teaching subset of C, designed to catch mistakes early - then transition into full, unrestricted C near the end of the course.
CMU's most famous course. Rather than more application programming, this is where students go underneath their own code - how a compiler actually turns C into machine instructions, how memory is really laid out, and how a shell, a network socket, or a cache actually work.
malloc/free from scratchThis step builds directly on the C skills from Step 2 - the C cheat sheet above (pointers, structs, and especially dynamic memory / malloc) is exactly the foundation Malloc Lab assumes you already have.