Overview
ll
What you get
- 79 written parts, yours for good
- 9h 13m of reading, measured not estimated
- Written for the introductory level
- Every future revision included
Curriculum
12 sections · 79 parts · 9h 13m9h 4m free to read · 9 min with the course
01Environment, Tooling, and Version Control7 parts · 50 min
- Lesson 1: Toolchain9 min
- Lesson 2: Configuration and SecretsFree4 min
- Lesson 3: Editor and Quality ToolingFree8 min
- Lesson 4: Debugging FundamentalsFree7 min
- Lesson 5: Version ControlFree10 min
- Lesson 6: ContainersFree6 min
- SummaryFree6 min
02Problem Decomposition, Data Structures, and Typed Records6 parts · 47 min
- Lesson 1: Logic BootcampFree10 min
- Lesson 2: Data Structures by Access PatternFree10 min
- Lesson 3: Readable LogicFree7 min
- Lesson 4: RecordsFree8 min
- Lesson 5: Type Hints as DesignFree9 min
- SummaryFree3 min
03Functions, Composition, and Prompts as Code5 parts · 38 min
- Lesson 1: Function DesignFree12 min
- Lesson 2: Functions as ValuesFree6 min
- Lesson 3: DecoratorsFree7 min
- Lesson 4: Prompts as CodeFree10 min
- SummaryFree3 min
04Data Pipelines and Streaming Processing6 parts · 41 min
- Lesson 1: Files and FormatsFree11 min
- Lesson 2: Lazy ProcessingFree8 min
- Lesson 3: DurabilityFree7 min
- Lesson 4: Multimodal InputsFree5 min
- Lesson 5: Tabular ToolsFree7 min
- SummaryFree3 min
05Error Handling and Reliability Engineering7 parts · 41 min
- Lesson 1: Failure TaxonomyFree6 min
- Lesson 2: Exception MechanicsFree8 min
- Lesson 3: Retry LogicFree8 min
- Lesson 4: TimeoutsFree5 min
- Lesson 5: DegradationFree6 min
- Lesson 6: Correctness Under RetryFree5 min
- SummaryFree3 min
06Structured Outputs, Tool Calling, and Agent Security6 parts · 50 min
- Lesson 1: Validated OutputsFree8 min
- Lesson 2: Parsing Hostile OutputFree10 min
- Lesson 3: Tool ExecutionFree11 min
- Lesson 4: MCPFree6 min
- Lesson 5: SecurityFree11 min
- SummaryFree4 min
07Object-Oriented Design, Provider Abstraction, and Persistence8 parts · 54 min
- Lesson 1: ClassesFree7 min
- Lesson 2: ContractsFree8 min
- Lesson 3: Provider AbstractionFree7 min
- Lesson 4: Relational PersistenceFree13 min
- Lesson 5: The Repository PatternFree6 min
- Lesson 6: Ephemeral StateFree4 min
- Lesson 7: MigrationsFree5 min
- SummaryFree4 min
08Asynchronous Python, Concurrency, and Streaming7 parts · 51 min
- Lesson 1: Async FundamentalsFree11 min
- Lesson 2: Concurrency ControlFree11 min
- Lesson 3: Consuming a StreamFree7 min
- Lesson 4: Streaming Structured DataFree5 min
- Lesson 5: Re-streaming Through Your Own APIFree7 min
- Lesson 6: Operating StreamsFree6 min
- SummaryFree4 min
09Retrieval and Context Engineering7 parts · 48 min
- Lesson 1: ChunkingFree10 min
- Lesson 2: EmbeddingsFree8 min
- Lesson 3: SearchFree8 min
- Lesson 4: Vector StoresFree5 min
- Lesson 5: Context AssemblyFree6 min
- Lesson 6: DiagnosisFree7 min
- SummaryFree4 min
10Token Economics and Cost Engineering5 parts · 42 min
- Lesson 1: CountingFree9 min
- Lesson 2: Context Window BudgetingFree11 min
- Lesson 3: Cost AccountingFree8 min
- Lesson 4: Cost ControlFree10 min
- SummaryFree4 min
11Testing, Evaluation, and Observability6 parts · 50 min
- Lesson 1: TestingFree14 min
- Lesson 2: EvaluationFree14 min
- Lesson 3: Logging and TracingFree7 min
- Lesson 4: PerformanceFree11 min
- Lesson 5: CI LayeringFree4 min
- SummaryFree0 min
12Application Architecture and Production Readiness9 parts · 41 min
- Lesson 1: ArchitectureFree7 min
- Lesson 2: Configuration and SecretsFree4 min
- Lesson 3: FastAPI in ProductionFree7 min
- Lesson 4: Background WorkFree4 min
- Lesson 5: Type and Quality GatesFree3 min
- Lesson 6: Security ReviewFree4 min
- Lesson 7: DeploymentFree5 min
- Lesson 8: Documentation and PackagingFree4 min
- SummaryFree3 min
Part 1 · freeLesson 2: Configuration and Secrets · 4 min
Your code needs an API key. It must not contain one. This lesson covers where configuration should live instead, and how to make a missing or malformed value announce itself immediately rather than fifteen minutes into a job.
.env files and environment variables
An environment variable is a named value that the operating system hands to your process when it starts. Putting configuration there rather than in code means the same code artifact runs in development, staging, and production with different behaviour and no edits.
python
import os
api_key = os.environ["RECIPE_API_KEY"]Instructor
Naresh Edagotti
Course instructor
Reviews
No reviews yet. The first comes from a reader who finishes the course.
to review this course once you have finished it.