The Python Application Builder
Can you take an idea all the way to a shipped app? The top rung: design, build, and ship a real application, and walk out with the portfolio piece employers ask to see.
The deepest live program, foundations to a genuinely advanced level, with a public-ready capstone and a device-local certificate.
You leave able to build, test, and run your own Python application: a real service with validation, a database, tests you trust, and honest error handling, deployed from your own machine, and presented live. This is the summit of the Python ladder; what comes next is self-directed building, which is exactly the point.
Weekday afternoons from 4 PM, starting about two days after the Working Developer cohort finishes, ages 16 to 30. Pick your slot below and we email you the moment the cohort is set.
Pick a cohort to register securely, or ask your school to arrange a private cohort.
Session 1: What an application is
about 110 min- HookDoor three opens: from a tool to a service9 min
- DemoThe five parts, in one tiny file12 min
- PredictThe bet: where does the password live?7 min
- DemoConfig from the environment, for real13 min
- DemoSecrets discipline: fail loudly, never hardcode11 minStretch and water break (10 min)
- DemoThe name for the habit: 12-factor9 min
- Live codeA real config object, built live16 min
- PracticeYour service, its five parts and its config15 min
- Mastery checkSay the anatomy in your own words10 min
- ReflectCard one of door three, and next: HTTP8 min
Session 2: HTTP for real
about 110 min- HookYou have consumed APIs; now you serve one8 min
- DemoA request is data; so is a response12 min
- DemoThe verbs, answered by a real engine15 min
- PredictThe bet: which code for not logged in?7 min
- Demo401 versus 403, on the real engine12 minStretch and water break (10 min)
- DemoThe families: 2xx, 4xx, 5xx, and the ones that matter11 min
- Live codeBuild the request and the response, live15 min
- PracticeYour API surface, five operations12 min
- Mastery checkSay the HTTP contract in your own words10 min
- ReflectCard two, and next: the request cycle8 min
Session 3: The request cycle
about 110 min- HookThe middle we skipped: finding the handler8 min
- DemoA handler is a function; routing is a lookup12 min
- DemoA real Flask app, read line by line13 min
- PredictThe bet: a path the router does not know7 min
- DemoThe 404 default, built for real13 minStretch and water break (10 min)
- DemoRouting on the real engine10 min
- Live codeBuild the router, with a resource route16 min
- PracticeYour router, your routes, your 40415 min
- Mastery checkSay the request cycle in your own words8 min
- ReflectCard three, and next: FastAPI and Pydantic8 min
Session 4: FastAPI and Pydantic
about 110 min- HookThe bouncer at the door8 min
- DemoRead a real FastAPI endpoint14 min
- PredictThe bet: where is the bad request caught?7 min
- DemoThe same idea, running for real13 min
- DemoPath, query, and body, in one breath12 minStretch and water break (10 min)
- DemoThe docs write themselves8 min
- Live codeBuild the door, step by step15 min
- PracticeYour turn: validate a signup15 min
- Mastery checkExplain the door9 min
- ReflectCard 29, and the shape of a service9 min
Session 5: Async and the event loop
about 110 min- HookWaiting is not working8 min
- DemoA slow wait, timed honestly11 min
- PredictThe bet: two waits, back to back or together?7 min
- DemoThe reveal: back to back, then together13 min
- DemoWhen async does NOT help12 minStretch and water break (10 min)
- DemoAsync databases: PyMongo Async, not Motor11 min
- Live codeBuild a gather, feel the overlap15 min
- PracticeYour turn: overlap two waits17 min
- Mastery checkExplain the overlap8 min
- ReflectCard 30, and back to the database8 min
Session 6: MongoDB I: documents
about 110 min- HookData without a fixed shape8 min
- DemoA document, and a first find13 min
- PredictThe bet: who is tagged python?7 min
- DemoThe null surprise13 min
- DemoComparisons stay in their lane11 minStretch and water break (10 min)
- DemoThe real wire: pymongo10 min
- Live codeQuery the collection together15 min
- PracticeYour turn: answer three questions17 min
- Mastery checkExplain the three rules8 min
- ReflectCard 31, and query craft next8 min
Session 7: MongoDB II: query craft
about 110 min- HookFrom finding to changing and summarising8 min
- DemoRe-ground the reading rules on the real engine12 min
- PredictThe bet: what does $set do to the rest?7 min
- DemoThe four update verbs, and delete13 min
- DemoThe aggregation pipeline: summary questions13 minStretch and water break (10 min)
- DemoDocument store or SQL tables: the honest decision13 min
- PracticeYour updates, reasoned by hand16 min
- PracticeYour summary question, as a pipeline10 min
- Mastery checkSay the query-craft rules in your own words10 min
- ReflectCard, and next: assembling the service8 min
Session 8: Assembling the service
about 110 min- HookAssemble the pieces into one service8 min
- DemoThree layers, one good request12 min
- PredictThe bet: a bad body arrives7 min
- DemoTurn exceptions into responses: 400 and 40413 min
- DemoLogging and configuration from the environment10 minStretch and water break (10 min)
- Live codeAssemble the whole service, live16 min
- PracticeYour service, your three layers16 min
- DemoWhy the layers pay off: swap the store10 min
- Mastery checkSay the service rules in your own words10 min
- ReflectCard, and next: packaging and shipping8 min
Session 9: Packaging and shipping
about 110 min- HookMake it runnable by others, then ship it8 min
- DemoRunnable by others: pyproject and uv12 min
- PredictThe bet: why does a container fix it?7 min
- DemoThe container, named honestly13 min
- DemoRollback: a bad deploy is reversible10 minStretch and water break (10 min)
- DemoThe deploy lab, walked once16 min
- PracticeLocal-green, then your ship checklist16 min
- DemoRight after you deploy: the smoke test10 min
- Mastery checkSay the shipping story in your own words10 min
- ReflectCard, and next: performance and the frontier8 min
Session 10: Performance and the frontier
about 110 min- HookGuessing is not measuring8 min
- DemoA clock you can trust14 min
- PredictThe bet: does guessing help?7 min
- DemoThe reveal: measure both, then grow13 min
- DemoSee the shapes race11 minStretch and water break (10 min)
- DemoCache: do not compute it twice12 min
- Live codeOptimize the right thing, measured15 min
- DemoThe honest frontier: free-threading and the JIT12 min
- Mastery checkExplain measure-first10 min
- ReflectCard 35, and the finish line8 min
Session 11: Capstone: your application, live
about 110 min- HookYou can run your own application8 min
- DemoThe shape of your capstone13 min
- PredictName your one operation7 min
- CapstoneBuild it, test it, run it green38 minStretch and celebrate break (10 min)
- PracticeBreak your partner's service, kindly15 min
- ExploreThe showcase: run it, live15 min
- ReflectThe last card: what you can do now14 min