"You don't need to 'know Python' to start. You need to be willing to type the code and watch what happens. The knowing arrives on the way."
There's No Prerequisite — On Purpose
This quest lists zero prerequisites. Not because DS&A is trivial, but because you'll pick up the Python you need as you need it, one small piece at a time. If you can read a for loop and an if statement, you have enough to start. Every code block is written to teach the idea, not to show off Python tricks — when a snippet uses something new, the comments explain it. You learn the structure and just enough language to feel it move.
If you ever want the full language tour, Python Quest is right next door. But you don't need to finish it first. Come back to it when curiosity (not obligation) sends you.
The Shape of Every Lesson
Each lesson follows the same rhythm, so your brain can relax into it:
- Intuition first — a picture or a real-world analogy, before any syntax. If the intuition doesn't land, the code won't either.
- Runnable code — real Python you can copy, run, and break. Breaking it on purpose is the fastest way to understand it.
- Callouts — the principle to remember, the trap to avoid, the confession of a mistake I actually made.
- An exercise — something to do, not just read. Skipping these is skipping the learning.
- A quiz at the track's end — to catch the ideas that only felt understood.
The Map Ahead
Fifteen tracks, in a deliberate arc. First we learn to measure cost (Complexity). Then the linear structures everything is built from (Arrays, Linked Lists, Stacks & Queues). Then the magic of instant lookup (Hashing). Then the branching structures (Trees, Heaps) and the networked ones (Graphs, Graph Algorithms). Then the great algorithm families (Searching & Sorting, Recursion, Dynamic Programming, Paradigms). And finally an Epilogue that zooms back out to the lens. Each track stands on the ones before it — walk them in order the first time.