Micro Free Course — 100% Free Learning

All lessons in this module are free to learn. Sign in with Google to save your progress.

3

Async, Concurrency & Performance

From python-for-software-engineers, ordered for DE.

Module Progress0% Complete
178 min total
13 Lessons
0 Completed

Module Content

Async/Await — How the Event Loop Works

The mental model of async Python. Single-threaded concurrency; coroutines yield control at I/O boundaries. FIND_VIDEO: search 'python asyncio event loop tutorial' — recommended channel: mCoding / ArjanCodes. Aim for 12 min or under.

14 minVideo
Start

Quiz: When asyncio Helps and When It Doesn't

The patterns that benefit from async, common mistakes, and the libraries (httpx, asyncpg, aiofiles) that make async practical.

8 minTutorial
Start

Threading vs Multiprocessing vs Asyncio

The three concurrency primitives. The GIL, when each beats the others, and how to pick. FIND_VIDEO: search 'python threading multiprocessing asyncio GIL' — recommended channel: mCoding / Real Python. Aim for 11 min or under.

13 minVideo
Start

Quiz: The GIL and Picking the Right Primitive

What the GIL actually does, the decision matrix, and how Python 3.13's free-threaded mode changes the landscape.

7 minTutorial
Start

Build 2 — Async API Client Library

A reusable async HTTP client library with retries, timeouts, rate limiting, and a typed interface. Tests included.

34 minAssignment
Start

Generators, Iterators & itertools

Lazy evaluation. Process huge datasets with O(1) memory; compose pipelines elegantly. FIND_VIDEO: search 'python generators iterators itertools tutorial' — recommended channel: mCoding / Raymond Hettinger. Aim for 10 min or under.

21 minVideo
Start

Quiz: Memory-Efficient Pipelines and Lazy Evaluation

Generators vs lists, the itertools toolkit, and the patterns for streaming pipelines that don't OOM.

8 minTutorial
Start

Context Managers & Decorators

Two of Python's most powerful abstractions. Build cleanup-safe code and reusable cross-cutting logic. FIND_VIDEO: search 'python decorators context managers tutorial' — recommended channel: ArjanCodes / Real Python. Aim for 10 min or under.

15 minVideo
Start

Quiz: Building Reusable, Composable Abstractions

The decorator pattern with @functools.wraps, contextlib for context managers, and the patterns for production code.

8 minTutorial
Start

Profiling & Optimization

Find what's slow before you optimize. cProfile, py-spy, memray — the right tool for the right symptom. FIND_VIDEO: search 'python profiling cProfile py-spy memray' — recommended channel: mCoding / Anthony Shaw. Aim for 10 min or under.

17 minVideo
Start

Quiz: Profile First, Optimize After

The profiling toolkit, common Python performance traps, and the 80/20 of speedups.

8 minTutorial
Start

Build 3 — High-Performance Data Processor

Combine asyncio (I/O) and multiprocessing (CPU) to build a fast data processor. Profile, measure, optimize.

34 minAssignment
Start

Build 4 — Memory-Efficient Data Cache & Profiler

Thread-safe LRU cache with __slots__, plus a memory/time profiling decorator. Measure, bound, and prove it.

33 minAssignment
Start
Async, Concurrency & Performance | Python for Data Engineers | Topfolio