Skip to content

Python Concepts

A structured path from Python fundamentals to production APIs, with concise explanations, focused examples, and a final quick-reference guide.

Choose a path

  • Learn Python systematically


    Start with syntax and the object model, then progress through functions, object-oriented design, iterators, testing, concurrency, and algorithms.

    Start learning

  • Build APIs with FastAPI


    Learn routing, Pydantic validation, dependency injection, asynchronous I/O, application structure, security, and testing.

    Start FastAPI

  • Prepare for senior interviews


    Review advanced internals, production trade-offs, system-design prompts, and scored quizzes.

    Open interview guide

  • Look something up


    Use the compact syntax, collection, exception, typing, testing, and complexity tables.

    Open quick reference

Learning sequence

  1. Language foundations — values, types, control flow, collections, mutability, and copying.
  2. Functions and modules — call signatures, scope, imports, packages, and reusable code.
  3. Object-oriented Python — classes, inheritance, composition, protocols, and data classes.
  4. Pythonic iteration — comprehensions, iterators, generators, decorators, and context managers.
  5. Reliability — exceptions, files, testing, debugging, and type hints.
  6. Advanced execution — concurrency, parallelism, and performance choices.
  7. Problem solving — complexity and common algorithm patterns.
  8. Senior internals — descriptors, MRO, metaprogramming, pattern matching, and dispatch.
  9. Typed API design — protocols, generics, variance, serialization, and compatibility.
  10. Production concurrency — structured tasks, cancellation, backpressure, and request context.
  11. Production engineering — configuration, observability, caching, testing, profiling, and migrations.
  12. FastAPI — typed HTTP APIs and production-oriented structure.

How to use this site

Read each topic in order when learning. Each page explains the mental model first, provides only the code needed to demonstrate it, and ends with a checklist. When coding, use the quick reference and site search instead of rereading every chapter.