Advanced Concepts Level
Intermediate Tier
Dive deep into data structures, algorithms, recursion and decorators. This is where good programmers become great ones.
Topics Covered
Enjoying the lessons?
Upgrade to unlock AI features, progress sync & more
Lesson 2
Closures — Functions That Remember
Lesson 2
Closures — Functions That Remember
Lesson 3
Your First Decorator — The Basic Pattern
Lesson 3
Your First Decorator — The Basic Pattern
Lesson 4
@functools.wraps — Preserving Function Identity
Lesson 4
@functools.wraps — Preserving Function Identity
Lesson 5
Decorator Arguments — Parameterised Decorators
Lesson 5
Decorator Arguments — Parameterised Decorators
Lesson 6
Stacking Decorators — Multiple Decorators on One Function
Lesson 6
Stacking Decorators — Multiple Decorators on One Function
Lesson 7
Class-Based Decorators — Using __call__
Lesson 7
Class-Based Decorators — Using __call__
Lesson 8
Real-World Patterns — @retry, @timer, @cache
Lesson 8
Real-World Patterns — @retry, @timer, @cache
Lesson 9
Decorators in Practice — @validate, @log_calls, @require_auth
Lesson 9
Decorators in Practice — @validate, @log_calls, @require_auth
Lesson 10
Milestone: Decorator Toolkit — The Budget Dashboard's Engine
Lesson 10
Milestone: Decorator Toolkit — The Budget Dashboard's Engine
Lesson 11
The Iterator Protocol — __iter__ and __next__
Lesson 11
The Iterator Protocol — __iter__ and __next__
Lesson 12
Custom Iterators — Making Your Own
Lesson 12
Custom Iterators — Making Your Own
Lesson 13
What Generators Are — The yield Keyword
Lesson 13
What Generators Are — The yield Keyword
Lesson 14
Generator Functions — Replacing Iterator Classes
Lesson 14
Generator Functions — Replacing Iterator Classes
Lesson 15
Generator Expressions — Lazy Comprehensions
Lesson 15
Generator Expressions — Lazy Comprehensions
Lesson 16
yield from — Delegating to Sub-Generators
Lesson 16
yield from — Delegating to Sub-Generators
Lesson 17
Infinite Generators — Generating Without End
Lesson 17
Infinite Generators — Generating Without End
Lesson 18
Generator Pipelines — Chaining Processing Steps
Lesson 18
Generator Pipelines — Chaining Processing Steps
Lesson 19
send() and Two-Way Communication
Lesson 19
send() and Two-Way Communication
Lesson 20
Milestone: Transaction Stream Processor
Lesson 20
Milestone: Transaction Stream Processor
Lesson 21
How 'with' Works — The Context Manager Protocol
Lesson 21
How 'with' Works — The Context Manager Protocol
Lesson 22
Writing Your Own — Class-Based Context Managers
Lesson 22
Writing Your Own — Class-Based Context Managers
Lesson 23
@contextmanager — The Elegant Way
Lesson 23
@contextmanager — The Elegant Way
Lesson 24
Error Handling in Context Managers — Suppress, Transform, Log
Lesson 24
Error Handling in Context Managers — Suppress, Transform, Log
Lesson 25
contextlib Tools — suppress, redirect_stdout, nullcontext
Lesson 25
contextlib Tools — suppress, redirect_stdout, nullcontext
Lesson 26
Nested Context Managers — Multiple 'with' Resources
Lesson 26
Nested Context Managers — Multiple 'with' Resources
Lesson 27
ExitStack — Dynamic Context Management
Lesson 27
ExitStack — Dynamic Context Management
Lesson 28
Database Connection Context Manager
Lesson 28
Database Connection Context Manager
Lesson 29
API Session Context Manager
Lesson 29
API Session Context Manager
Lesson 30
Milestone: Resource Manager Suite
Lesson 30
Milestone: Resource Manager Suite
Lesson 31
What Regular Expressions Are — The Basics
Lesson 31
What Regular Expressions Are — The Basics
Lesson 32
Character Classes and Quantifiers
Lesson 32
Character Classes and Quantifiers
Lesson 33
Groups and Capturing — Extracting Parts of Matches
Lesson 33
Groups and Capturing — Extracting Parts of Matches
Lesson 34
Anchors and Boundaries — ^ $ \b
Lesson 34
Anchors and Boundaries — ^ $ \b
Lesson 35
Special Sequences — \d \w \s and Their Capitals
Lesson 35
Special Sequences — \d \w \s and Their Capitals
Lesson 36
Lookahead and Lookbehind — Zero-Width Assertions
Lesson 36
Lookahead and Lookbehind — Zero-Width Assertions
Lesson 37
re.sub() and re.subn() — Find and Replace with Power
Lesson 37
re.sub() and re.subn() — Find and Replace with Power
Lesson 38
Compiling Patterns — re.compile() for Performance
Lesson 38
Compiling Patterns — re.compile() for Performance
Lesson 39
Parsing Bank Statements — Real-World Regex
Lesson 39
Parsing Bank Statements — Real-World Regex
Lesson 40
Milestone: Bank Statement Parser
Lesson 40
Milestone: Bank Statement Parser
Lesson 41
HTTP Basics — How the Web Works
Lesson 41
HTTP Basics — How the Web Works
Lesson 42
The requests Library — Making HTTP Requests
Lesson 42
The requests Library — Making HTTP Requests
Lesson 43
Query Parameters and Headers
Lesson 43
Query Parameters and Headers
Lesson 44
Handling API Errors — Status Codes and Exceptions
Lesson 44
Handling API Errors — Status Codes and Exceptions
Lesson 45
API Authentication — Keys, Tokens, and Secrets Management
Lesson 45
API Authentication — Keys, Tokens, and Secrets Management
Lesson 46
Parsing JSON Responses — Navigating Nested API Data
Lesson 46
Parsing JSON Responses — Navigating Nested API Data
Lesson 47
Rate Limiting and Retries — Being a Good API Citizen
Lesson 47
Rate Limiting and Retries — Being a Good API Citizen
Lesson 48
Building an API Client Class
Lesson 48
Building an API Client Class
Lesson 49
Exchange Rate API — Live Currency Conversion
Lesson 49
Exchange Rate API — Live Currency Conversion
Lesson 50
Milestone: Live Budget Dashboard Data
Lesson 50
Milestone: Live Budget Dashboard Data
Lesson 51
Functions as Values — The Functional Mindset
Lesson 51
Functions as Values — The Functional Mindset
Lesson 52
map(), filter(), and reduce() — Transforming Collections
Lesson 52
map(), filter(), and reduce() — Transforming Collections
Lesson 53
functools — partial, lru_cache, and More
Lesson 53
functools — partial, lru_cache, and More
Lesson 54
Function Pipelines — Composing Transformations
Lesson 54
Function Pipelines — Composing Transformations
Lesson 55
Closures — Functions That Remember
Lesson 55
Closures — Functions That Remember
Lesson 56
itertools in Functional Pipelines
Lesson 56
itertools in Functional Pipelines
Lesson 57
Immutability and Pure Functions — Reliable by Design
Lesson 57
Immutability and Pure Functions — Reliable by Design
Lesson 58
Functional Analytics Engine
Lesson 58
Functional Analytics Engine
Lesson 59
Comprehensions Mastery — Dict, Set, and Nested
Lesson 59
Comprehensions Mastery — Dict, Set, and Nested
Lesson 60
Milestone: Budget Analytics Pipeline
Lesson 60
Milestone: Budget Analytics Pipeline
Lesson 61
pathlib — The Modern Way to Work with Files
Lesson 61
pathlib — The Modern Way to Work with Files
Lesson 62
Reading and Writing Files — JSON, CSV, and Safe I/O
Lesson 62
Reading and Writing Files — JSON, CSV, and Safe I/O
Lesson 63
Configuration Files — configparser and YAML
Lesson 63
Configuration Files — configparser and YAML
Lesson 64
The logging Module — Professional Application Logging
Lesson 64
The logging Module — Professional Application Logging
Lesson 65
pickle and SQLite — Persisting Complex Data
Lesson 65
pickle and SQLite — Persisting Complex Data
Lesson 66
Watching Files — Detecting Changes on Disk
Lesson 66
Watching Files — Detecting Changes on Disk
Lesson 67
Data Export — Reports, Tables, and Formatted Output
Lesson 67
Data Export — Reports, Tables, and Formatted Output
Lesson 68
tempfile and os — Safe Temporary Files and OS Interaction
Lesson 68
tempfile and os — Safe Temporary Files and OS Interaction
Lesson 69
The File Manager — Coordinating the Persistence Layer
Lesson 69
The File Manager — Coordinating the Persistence Layer
Lesson 70
Mini Project: Transaction Import & Export Wizard
Lesson 70
Mini Project: Transaction Import & Export Wizard
Lesson 71
Threading — Running Tasks in Parallel
Lesson 71
Threading — Running Tasks in Parallel
Lesson 72
Thread Safety — Locks, Queues, and Shared State
Lesson 72
Thread Safety — Locks, Queues, and Shared State
Lesson 73
Async/Await Fundamentals — Cooperative Concurrency
Lesson 73
Async/Await Fundamentals — Cooperative Concurrency
Lesson 74
aiohttp — Async HTTP Requests
Lesson 74
aiohttp — Async HTTP Requests
Lesson 75
Background Tasks — Scheduling, Caching, and Async Patterns
Lesson 75
Background Tasks — Scheduling, Caching, and Async Patterns
Lesson 76
Async Database Access — SQLite and asyncio
Lesson 76
Async Database Access — SQLite and asyncio
Lesson 77
Async Streams and Generators — Processing Data as It Arrives
Lesson 77
Async Streams and Generators — Processing Data as It Arrives
Lesson 78
Mixing Threading and Async — The Complete Concurrency Picture
Lesson 78
Mixing Threading and Async — The Complete Concurrency Picture
Lesson 79
Async Context Managers and Decorators — Production Patterns
Lesson 79
Async Context Managers and Decorators — Production Patterns
Lesson 80
Mini Project: Async Budget Sync Engine
Lesson 80
Mini Project: Async Budget Sync Engine
Lesson 81
unittest — Python's Built-In Testing Framework
Lesson 81
unittest — Python's Built-In Testing Framework
Lesson 82
pytest — The Modern Testing Standard
Lesson 82
pytest — The Modern Testing Standard
Lesson 83
Mocking — Testing in Isolation
Lesson 83
Mocking — Testing in Isolation
Lesson 84
Code Coverage and Test Quality
Lesson 84
Code Coverage and Test Quality
Lesson 85
Type Hints and mypy — Static Type Checking
Lesson 85
Type Hints and mypy — Static Type Checking
Lesson 86
Advanced dataclasses — Validation, Inheritance, and Slots
Lesson 86
Advanced dataclasses — Validation, Inheritance, and Slots
Lesson 87
Error Handling Patterns — Exceptions, Results, and Resilience
Lesson 87
Error Handling Patterns — Exceptions, Results, and Resilience
Lesson 88
Code Quality Tools — Linting, Formatting, and Pre-commit
Lesson 88
Code Quality Tools — Linting, Formatting, and Pre-commit
Lesson 89
Integration Testing — Testing Components Together
Lesson 89
Integration Testing — Testing Components Together
Lesson 90
Mini Project: Complete Test Suite for the Budget Dashboard
Lesson 90
Mini Project: Complete Test Suite for the Budget Dashboard
Lesson 91
argparse — Building Professional Command-Line Interfaces
Lesson 91
argparse — Building Professional Command-Line Interfaces
Lesson 92
rich — Beautiful Terminal Output
Lesson 92
rich — Beautiful Terminal Output
Lesson 93
Click — The Decorator-Based CLI Framework
Lesson 93
Click — The Decorator-Based CLI Framework
Lesson 94
Packaging — pyproject.toml, Entry Points, and pip install
Lesson 94
Packaging — pyproject.toml, Entry Points, and pip install
Lesson 95
Environment Management — venv, pip-tools, and Reproducible Installs
Lesson 95
Environment Management — venv, pip-tools, and Reproducible Installs
Lesson 96
Building the CLI App — Import and Config Commands
Lesson 96
Building the CLI App — Import and Config Commands
Lesson 97
Building the CLI App — Report and Summary Commands
Lesson 97
Building the CLI App — Report and Summary Commands
Lesson 98
Building the CLI App — Alerts, Budgets, and Live Monitoring
Lesson 98
Building the CLI App — Alerts, Budgets, and Live Monitoring
Lesson 99
Building the CLI App — Shell Completion and Polish
Lesson 99
Building the CLI App — Shell Completion and Polish
Lesson 100
Capstone: The Complete Budget Dashboard Application
Lesson 100