Sessions
One session doc per lesson. Each doc contains the pre-quiz, lab instructions, commit checkpoint,
and post-quiz. A session is not complete until the commit is made and reviewed.
All 47 sessions have full lesson docs. Work through sessions in order;
layer gate quizzes are recommended self-checks. See the
Syllabus for core concepts and milestones.
Layer 0 — Python Basics
| # | Title | Status | Doc |
| 01 | Hello, World & Variables | Available | Full |
| 02 | Operators, Strings & Type Conversion | Available | Full |
| 03 | Conditionals | Available | Full |
| 04 | Loops (Layer gate) | Gate | Full |
Layer 1 — Python Foundations
| # | Title | Status | Doc |
| 05 | Dictionaries | Available | Full |
| 06 | Lists and Iteration | Available | Full |
| 07 | List Comprehensions | Available | Full |
| 08 | Functions and Lambda | Available | Full |
| 09 | Unpacking and *args/**kwargs | Available | Full |
| 10 | Modules and Imports | Available | Full |
| 11 | Errors and Exceptions (Layer gate) | Gate | Full |
Layer 2 — Object-Oriented Basics
| # | Title | Status | Doc |
| 12 | What Classes Are and Why | Available | Full |
| 13 | Class Anatomy — __init__ and Attributes | Available | Full |
| 14 | Instance Methods | Available | Full |
| 15 | Passing Data via the Constructor | Available | Full |
| 16 | Composition — Objects Containing Objects | Available | Full |
| 17 | Conditional Logic in Methods | Available | Full |
| 18 | Building Lists of Objects | Available | Full |
| 19 | Object Identity and Equality (Layer gate) | Gate | Full |
Layer 3 — State & Interactivity
| # | Title | Status | Doc |
| 20 | What Is State in a Program? | Available | Full |
| 21 | Updating State via Methods | Available | Full |
| 22 | Handling User Input | Available | Full |
| 23 | Tracing State Changes | Available | Full |
| 24 | Validating Input | Available | Full |
| 25 | Passing State Between Functions | Available | Full |
| 26 | Computed Properties (Layer gate) | Gate | Full |
Layer 4 — Mock Data
| # | Title | Status | Doc |
| 27 | Why Mock Data Matters | Available | Full |
| 28 | Building a Data Access Layer | Available | Full |
| 29 | Working with JSON Files | Available | Full |
| 30 | Designing Data Contracts (Layer gate) | Gate | Full |
Layer 5 — Testing
| # | Title | Status | Doc |
| 31 | Why We Test and What to Test | Available | Full |
| 32 | Setting Up pytest | Available | Full |
| 33 | Testing Functions and Return Values | Available | Full |
| 34 | Testing Classes and State Changes | Available | Full |
| 35 | Testing the Data Layer with Mocks (Layer gate) | Gate | Full |
Layer 6 — Architecture
| # | Title | Status | Doc |
| 36 | Package and Folder Organization | Available | Full |
| 37 | Reusable Functions and Modules | Available | Full |
| 38 | Building Utility Modules | Available | Full |
| 39 | The Prop Drilling Problem | Available | Full |
| 40 | Architecture Review (Layer gate) | Gate | Full |
Layer 7 — Real World
| # | Title | Status | Doc |
| 41 | File I/O Deep Dive | Available | Full |
| 42 | Calling a Real API with requests | Available | Full |
| 43 | Handling Errors and Edge Cases Gracefully | Available | Full |
| 44 | Capstone Review (Layer gate) | Gate | Full |
Layer 8 — Beyond the Fundamentals
| # | Title | Status | Doc |
| 45 | Decorators | Available | Full |
| 46 | Generators, Iterators & Context Managers | Available | Full |
| 47 | Packaging & Virtual Environments (Layer gate) | Gate | Full |