2025-09-20 –, Space 2
Asyncio has become one of Python’s most popular libraries for writing fast, scalable applications. But sometimes, using async can actually make programs slower.
This talk explores common asyncio mistakes, how misunderstanding I/O-bound vs. CPU-bound tasks hurts performance, and practical patterns for writing efficient async code.
Asyncio has become one of Python’s most popular libraries for building fast, scalable applications. But when used incorrectly, it can actually make programs slower.
In this talk, we’ll explore common mistakes developers make with asyncio, especially when they misunderstand the difference between I/O-bound and CPU-bound operations. You’ll learn how misusing async can degrade performance, and how to avoid these issues through real-world examples.
We’ll begin with a quick recap of how asyncio works under the hood, then dive into examples that demonstrate both good and bad use cases. You’ll see the kinds of problems asyncio solves well and where it falls short.
By the end of this session, you’ll be able to:
- Understand how asyncio works and when to use it
- Clearly distinguish between I/O-bound and CPU-bound tasks
- Apply asyncio properly for high-concurrency workloads
- Identify and avoid async “anti-patterns” in real projects
- Choose the right concurrency model for your workload - asyncio, threading, or multiprocessing
None
Aastha is a Software Engineer at Bloomberg in London, where she works on scalable search systems for the company’s AI-powered research platform, Document Search (or DS <GO>). She has been using Python for over six years and loves applying it to real-world problems. Outside of work, you’ll find her playing badminton, running, or exploring hiking trails.