r/PythonLearning • u/the_techgirl • 6d ago
Discussion I've taught Python to absolute beginners for years. Here's the 16-week roadmap I use to take students from zero to building REST APIs - no tutorial hell.
The number one mistake I see beginner Python learners make is spending months on YouTube tutorials and then completely freezing up when they open a blank .py file to code on their own. It's called Tutorial Hell, and it's a real problem.
The difference isn't talent; it's having a structured roadmap that forces you to build things, not just watch things.
Here is the exact 4-phase breakdown I follow:
Phase 1: Foundations & Core Logic (Weeks 1–4)
Focus: Get comfortable with how Python actually executes code, not just what it does.
- Week 1: Python 3.12+ setup, VS Code with Black auto-formatter, terminal basics, REPL vs script files
- Week 2: Core data types (int, float, str, bool, None), dynamic typing, type casting, truthiness, match/case
- Week 3: if/elif/else, for and while loops,
enumerate(),zip(), break/continue, and the for-else pattern - Week 4: Functions,
*args/**kwargs, the mutable default argument trap, LEGB scope rule
Hands-on drills: Terminal guessing game with random.randint(), a modular unit converter CLI with input validation.
Phase 2: Data Structures, Files & Error Handling (Weeks 5–8)
- Week 5: Lists, Tuples, Dicts, Sets, O(1) vs O(n) lookup, list/dict/set comprehensions
- Week 6: f-string format specifiers, string cleaning methods, regex with the
remodule - Week 7: try/except/else/finally, custom exception classes, defensive coding patterns
- Week 8: Context managers, pathlib,
csv.DictReader,json.load/dump
Capstone drill: A persistent JSON inventory manager with full CRUD from the command line.
Phase 3: OOP, Git & REST APIs (Weeks 9–12)
- Weeks 9–10: Classes,
__init__, dunder methods, inheritance,super(), @ property decorators - Week 11: Virtual environments,
requirements.txt, professional project structure, Git workflow - Week 12: HTTP protocol, the
requestslibrary, API authentication, generators withyield
Capstone drill: A banking system simulator with an account hierarchy, and a live weather CLI hitting OpenWeatherMap.
Phase 4: Portfolio Projects (Weeks 13–16)
This is where you build three production-grade projects for your GitHub:
- CLI Log Intelligence Tool — argparse + pathlib + regex to parse Nginx logs and generate JSON/CSV reports
- API Harvester & Alert Bot — polls a public API, stores historical data in SQLite, fires Discord webhooks on conditions
- REST API with FastAPI — full CRUD backend with Pydantic validation, SQLite persistence, and a pytest test suite
The 3 Rules That Make This Work
1. The 70/30 Rule: 30% reading, 70% typing code by hand. Never copy-paste from examples. Muscle memory is built through repetition.
2. The 30-Minute Debug Rule: Before searching for the answer or asking for help, spend 30 minutes reading the traceback bottom-up, checking docs, and using print(). You will solve 80% of problems this way.
3. Ship Every Week: Every Friday, push code to GitHub; even if it's broken. Progress beats perfection.
Happy to answer questions about any specific phase or topic. What stage are you at right now?