Graduation Day

Look how far you've come

Nineteen Python modules ago, name = "Mochi" with no let in front of it was news. Now look at what you can read โ€” and write:

  • Python itself โ€” types, collections, classes, dataclasses, type hints, exceptions, files, JSON (Modules 14โ€“17)
  • Three frameworks โ€” Flask's hand-wired HTTP, Django's batteries-included ORM and admin, and FastAPI, the typed framework running the real backend (Modules 18โ€“27)
  • The contract loop โ€” Pydantic models that validate themselves and generate /docs, routers, dependency injection, a real database with Alembic migrations, JWT auth, payments, and pytest (Modules 23โ€“27)
  • The AI stack โ€” what an LLM actually does, typed output with Pydantic AI, agents as LangGraph state machines, RAG from scratch, and today, RAG wired into the real assistant with an eval to keep it honest (Modules 28โ€“31)

The AI assistant โ€” the "hardest" feature in the whole backend โ€” introduced almost zero new ideas today. A node is a function. An edge is an if. RAG is chunk-embed-retrieve-stuff. You'd already met every piece. That's what knowing a stack feels like: new features stop being new and start being combinations.