A living learning lab for building Python intuition, one small system at a time.
Current checkpoint: Python foundations + mental-bridge applications
Overall: ββββββββββββββββββββ 63%
Plain-text view
Python foundations [ββββββββββ] 100%
Pythonic thinking [ββββββββββ] 100%
Object-oriented code [ββββββββββ] 90%
Module library [ββββββββββ] 0%
Intermediate Python [ββββββββββ] 0%
Small applications [ββββββββββ] 100%
Backend engineering [ββββββββββ] 17%
ML fundamentals [ββββββββββ] 0%
LLM / RAG / agents [ββββββββββ] 0%
Production AI [ββββββββββ] 0%
Edit
journey.json, push, and the dashboard, map, and book below rebuild automatically. See How to update.
flowchart LR
t0["π§± Python foundations<br/>100%"]
t1["π Pythonic thinking<br/>100%"]
t2["π§© Object-oriented code<br/>90%"]
t3["π Module library<br/>0%"]
t4["π οΈ Intermediate Python<br/>0%"]
t5["π Small applications<br/>100%"]
t6["ποΈ Backend engineering<br/>17%"]
t7["π ML fundamentals<br/>0%"]
t8["π€ LLM / RAG / agents<br/>0%"]
t9["π‘οΈ Production AI<br/>0%"]
t0 --> t1 --> t2 --> t3 --> t4 --> t5 --> t6 --> t7 --> t8 --> t9
classDef done fill:#bbf7d0,stroke:#166534,color:#052e16;
classDef current fill:#fde68a,stroke:#92400e,color:#451a03,stroke-width:3px;
classDef future fill:#e0f2fe,stroke:#075985,color:#082f49;
class t0,t1,t5 done;
class t2,t6 current;
class t3,t4,t7,t8,t9 future;
π’ complete Β· π‘ in progress Β· π΅ upcoming
Every chapter lists what was covered, and where that idea shows up later in AI or backend engineering.
Chapter 1: Data, Logic & Functions Β Β·Β 7/7 topics
Lessons 1 to 7: the raw material every program is made of.
| Topic | Source | Subtopics covered | Future reference (AI / backend) | |
|---|---|---|---|---|
| β | Strings | 1Strings.py |
slicing, f-strings, methods | Prompt templates and text cleaning for LLM inputs |
| β | Numeric data | 2NumericData.py |
int/float, operators, conversion | Token counts, scores, and metrics |
| β | Lists, sets, tuples | 3List_Set_Tuple.py |
mutability, membership, ordering | Batches of documents, permission sets, immutable configs |
| β | Dictionaries | 4Dictonaries.py |
lookup, nesting, iteration | JSON payloads and API records |
| β | Conditionals & booleans | 5Conditional_Boolean.py |
if/elif/else, truthiness | Request routing and guardrail checks |
| β | Loops & iterators | 6Loosps_Iterator.py |
for/while, iter/next | Streaming tokens and retry loops |
| β | Functions | 7Function.py |
args/kwargs, return values, scope | Service handlers and agent tool functions |
Chapter 2: Idiomatic Python Β Β·Β 2/2 topics
Writing less code that says more.
| Topic | Source | Subtopics covered | Future reference (AI / backend) | |
|---|---|---|---|---|
| β | Comprehensions | 9Comprehension.py |
list, dict, set | Fast data shaping in ETL and feature prep |
| β | Python mental models | Python_Mental_Models.md |
syntax to systems | Seeing backend and AI patterns in plain Python |
Chapter 3: Classes & Abstraction Β Β·Β 4/5 topics
Bundling data and behavior.
| Topic | Source | Subtopics covered | Future reference (AI / backend) | |
|---|---|---|---|---|
| β | Classes & instances | 10OOP.py |
init, class variables | Models, clients, and service objects |
| β | Class & static methods | 10OOP.py |
@classmethod, @staticmethod | Alternate constructors, e.g. Model.from_config() |
| β | Inheritance | 10OOP.py |
super(), overriding | Base provider classes for LLM vendors |
| β | Special methods & properties | 10OOP.py |
repr, @property | Validated fields, as in Pydantic |
| π‘ | Composition | 10OOP.py |
has-a vs is-a | Agents composed of tools, memory, and a model |
Chapter 4: Module Library Β Β·Β 0/0 topics
Everything in 8Module_Library/, discovered automatically.
| Topic | Source | Subtopics covered | Future reference (AI / backend) |
|---|
Chapter 5: Still to explore Β Β·Β 0/1 topics
Planned stdlib topics.
| Topic | Source | Subtopics covered | Future reference (AI / backend) | |
|---|---|---|---|---|
| β¬ | logging & typing | β | β | Observability and typed API contracts |
Chapter 6: Real-world Plumbing Β Β·Β 0/0 topics
Everything in intermediate/, discovered automatically.
| Topic | Source | Subtopics covered | Future reference (AI / backend) |
|---|
Chapter 7: Still to explore Β Β·Β 0/2 topics
Planned next steps.
| Topic | Source | Subtopics covered | Future reference (AI / backend) | |
|---|---|---|---|---|
| β¬ | Validation | β | β | Structured outputs from models |
| β¬ | Async basics | β | β | Concurrent model and tool calls |
Chapter 8: Mental-Bridge Applications Β Β·Β 10/10 topics
Ten scenarios that connect syntax to systems.
| Topic | Source | Subtopics covered | Future reference (AI / backend) | |
|---|---|---|---|---|
| β | 01 Zip & dictionary mapping | 01_zip_dictionary_mapping.py |
zip, filtering | Authorization and tool access |
| β | 02 Set permissions | 02_set_permissions.py |
set ops | Permission checks |
| β | 03 Filter users | 03_filter_users.py |
predicates | Query-like selection / metadata retrieval |
| β | 04 Transform API data | 04_transform_api_data.py |
map | API response shaping |
| β | 05 Group users by role | 05_group_users_by_role.py |
grouping | Aggregation and reporting |
| β | 06 JSON data processing | 06_json_data_processing.py |
json | External data boundaries |
| β | 07 Function as data | 07_function_as_data.py |
callbacks | Pluggable model/tool strategies |
| β | 08 Decorator logging | 08_decorator_logging.py |
decorators | Tracing and observability |
| β | 09 Generator data | 09_generator_large_data.py |
yield | Streaming and memory efficiency |
| β | 10 Error-handling pipeline | 10_error_handling_pipeline.py |
try/except | Resilient processing |
Chapter 9: Services & Data Β Β·Β 0/3 topics
Turning scripts into services.
| Topic | Source | Subtopics covered | Future reference (AI / backend) | |
|---|---|---|---|---|
| π‘ | Patterns connected | β | handlers, pipelines | FastAPI services |
| β¬ | REST with FastAPI | β | β | Serving models |
| β¬ | Databases | β | β | Vector stores and metadata |
Chapter 10: Learning from Data Β Β·Β 0/2 topics
The next frontier.
| Topic | Source | Subtopics covered | Future reference (AI / backend) | |
|---|---|---|---|---|
| β¬ | NumPy & pandas | β | β | Embeddings and datasets |
| β¬ | Model basics | β | β | Evaluation mindset |
Chapter 11: AI Systems Β Β·Β 0/3 topics
Prompts, retrieval, tools.
| Topic | Source | Subtopics covered | Future reference (AI / backend) | |
|---|---|---|---|---|
| β¬ | LLM APIs & structured output | β | β | β |
| β¬ | RAG | β | β | β |
| β¬ | Agents & tool use | β | β | β |
Chapter 12: Shipping Safely Β Β·Β 0/3 topics
Testing, observability, deployment.
| Topic | Source | Subtopics covered | Future reference (AI / backend) | |
|---|---|---|---|---|
| β¬ | Testing | β | β | β |
| β¬ | Observability | β | β | β |
| β¬ | Deployment | β | β | β |
No projects yet. Add one to journey.json under projects and this table fills itself in.
flowchart TD
A[Lists + dictionaries + sets] --> B[Records, mappings, membership]
B --> C[Filtering, grouping, validation]
C --> D[Functions, callbacks, pipelines]
D --> E[Modules, decorators, generators, errors]
E --> F[Backend services and data flows]
F --> G[Prompts, tools, retrieval, model responses]
G --> H[Observable production AI]
| Python idea | Becomes |
|---|---|
| Dictionary mapping | Authorization |
| Filter | Metadata retrieval |
| Generator | Streaming |
| Decorator | Logging / tracing |
| Exception handler | Resilient processing |
| Function passed as data | Model or tool strategy |
- Python mental models: the ideas behind the progression
- Mental model map: syntax to systems
- Core lessons:
1Strings.pyto10OOP.py, plus8Module_Library/andintermediate/ - Application exercises: scenario-driven practice modules
python Python_Application/01_zip_dictionary_mapping.py- Change a topic's
statusinjourney.jsontodone,wip, ortodo(wipcounts as half). - Add subtopics and the
futurereference as you learn them. - Add a project under
projects:{"name": "Tool router", "link": "https://github.com/you/tool-router", "status": "building", "concepts": ["Inheritance", "10 Error-handling pipeline"]}conceptsmust match topic names; each resolves to its chapter automatically. - Run
python scripts/build_readme.pylocally, or just push: the GitHub Action does it for you.
Learn a concept. Use it in a realistic problem.
Recognize the larger system it belongs to. Build the next layer.