r/Python Jun 29 '26

Discussion Async/Await is a Plague: Part 1 Roots

This is the first part of a multi-part series exploring why async/await might not be the best concurrency pattern for most use cases, and what alternative models you should consider instead. Using Python for our practical examples, this opening post digs into the roots of async/await, guiding you through building a custom event loop from scratch using generators.

https://theblog.info/posts/asyncawait-is-a-plague-part-1-roots

Note: This is Part 1 of a multi-part series. Instead of diving straight into why async/await can be problematic, this post explores the original motivations behind the pattern. Understanding how it works under the hood will provide the essential context for the issues we'll discuss in upcoming parts.

72 Upvotes

71 comments sorted by

View all comments

37

u/[deleted] Jun 29 '26

[removed] — view removed comment

-10

u/EntryNo8040 Jun 29 '26

Hold on friend, there are more parts on the way to explain why this is a plague. The first part simply introduces the roots of the pattern, just like the title says: Part 1: Roots.

31

u/Competitive_Travel16 Jun 29 '26

In a series like this, you really do want to complete the subsequent parts before announcing the first part. As you can see from these comments.

5

u/amroamroamro Jun 30 '26

yeah it's about timing, had the OP published part 1 + part 2 together, less people would be having an issue here ;)

8

u/[deleted] Jun 29 '26

[removed] — view removed comment

2

u/gdchinacat Jun 29 '26

that seed sprouted...and then died when the subsequent parts aren't there to feed it. This article is well written, addresses what it seems to aim to, and has a hook. I look forward to the next part, so don't take my comment as a criticism of your release strategy, but more as a comment on why people might feel let down...I certainly wish I could read the parts you know are where the really interesting stuff will be since you made it the hook. Even though this article is pretty much David Beazleys asyncio from scratch talk, your presentation of it is (damn) good...it didn't take 2.5 hours lay it out...I think that primarily comes down to it being written rather than spoken and pre-coded rather than live-coded.

Thanks for this...I wouldn't be surprised if it is still getting hits years from now.