Asyncio without Asyncio

  • 2023-07-17 , Club A
  • 2023-07-17 , Club A

All times in Europe/Prague

This tutorial aims to demystify asyncio builtin module by implementing it from scratch without any dependencies other than the Python Standard Library. We will go through the problem of blocking IO and how it is possible to solve it without single "async" and "await" statement using native Python concepts. Then, we will demystify async/await syntax and see how it is implemented. We will also build our own scheduler which will have a similar API as asyncio, which will be able to run async functions the same way asyncio does. And finally we will build real asynchronous http proxy using our own asyncio implementation. Why reinvent the wheel? - "I hear and I forget. I see and I remember. I do and I understand.".


Expected audience expertise:

intermediate

Yan Yanchii is a senior software engineer at Kiwi.com - a leading global travel tech company headquartered in the Czech Republic, working on the Search team. Hailing from Ukraine, Yan speaks six languages and has a deep passion for computer science and low-level programming. At just 25 years old, Yan has a wealth of experience and expertise in Python and C, and particularly enjoys exploring CPython and its internals. His love for building things from scratch, rather than using ready-made solutions, has led him to develop a deep understanding of the technical underpinnings of software development. Yan is excited to share his knowledge and enthusiasm for Python and low-level programming with the Python community.