A hands-on Python curriculum for experienced JS developers who want to build LLMs.
This workspace is your personal Python dojo. Each lesson is a Jupyter notebook you can run cell-by-cell, experiment with, break, fix, and learn from. The lessons are designed to take 30-45 minutes each, and every single one ends with something satisfying you actually built.
You already know how to code. You think in JavaScript. This tutorial respects that — it meets you where you are, calls out the "JS brain" traps, and gets you fluent in Python fast, with a clear path toward understanding and building LLMs.
| # | Lesson | You'll Build | Time |
|---|---|---|---|
| 01 | Python Mindset for JS Devs | A JS-to-Python survival cheat helper | 30 min |
| 02 | Control Flow & Loops Like a Pro | A text analytics mini-tool (word frequency + top tokens) | 35 min |
| 03 | Functions, Scope & Data Modeling | A prompt-template generator with validation | 35 min |
| 04 | Classes & Object Fundamentals | A tiny PromptAgent with memory/history | 40 min |
| 05 | Files, JSON & Error Handling | A mini dataset loader + cleaner for LLM training data | 35 min |
| 06 | Practical APIs + Async Basics | Fetch & normalize text into prompt-ready format | 40 min |
| 07 | LLM Foundations via Pure Python | A toy text generator and tokenizer explorer | 45 min |
| 08 | Capstone: Fundamentals in Action | "Mini Prompt Lab" — ingest text, generate prompt artifacts | 45 min |
Every lesson follows the same rhythm:
- Warm-up (5 min) — Quick concept check with JS analogies
- Core Lab (20-25 min) — Guided coding with runnable cells
- Boss Fight (10 min) — Independent challenge with hints
- Payoff Demo (5 min) — Run your finished artifact
python/
├── README.md ← You are here
├── SETUP.md ← How to get running
├── requirements.txt ← Python dependencies
├── lessons/ ← Jupyter notebooks (one per lesson)
│ ├── 01_python_mindset.ipynb
│ ├── 02_control_flow.ipynb
│ ├── ...
│ └── 08_capstone.ipynb
├── challenges/ ← Bonus challenges & stretch goals
│ └── ...
└── src/ ← Reusable utilities built during lessons
└── ...
See SETUP.md for installation instructions. Then open lessons/01_python_mindset.ipynb and start running cells.
Golden rule: Read the markdown, run the code, then change something and see what breaks. Curiosity is the whole point.
"The best way to learn a language is to have something you want to say." — Now let's go say it in Python.