upvote
asyncio has always looked interesting, but whenever I have run into a problem which could use asyncio I have always gone with multiprocesses instead. I am not sure if async would makes my code easier for others to read and debug, and none of my problems seems to be of the kind where process overhead would make a noticeable difference in performance.

Did you find readability to be improved by going async?

reply
For me it is quite bad, but just we are now used to it. In the same way that when you ask Windows users about all the bugs and problems they have with their system, they often say that they don't have any. And ten seconds later, will click "ok" on a random crash popup they didn't even read the content of.
reply
You made a wild claim about ayncio and backed it up with a wild anecdote about windows and its users?
reply
Can you elaborate? Why is Python asyncio bad?
reply
Not the OP but my impression with asyncio was that it's great for the uses case it was built for (hence the "no problems") but if you need to do something a bit different it can become an annoyance (hence the "unexpected bugs").

I see it for a specialized solution for a specific class of problems, which can lead to surprises if your problem evolves. There are always trade-offs to be made (performance, flexibility, hardware cost, etc.), asyncio just has different characteristics than the alternatives. Maybe since a upper bound of concurrent users it is always a great (the best?) solution, someone with more experience along all the design and requirements space could comment.

reply
I am always amused by "it's bad because it's bad at things it wasn't designed to be good at" rationalizations.
reply
There are things that are quite good for other than what they were designed for.

I find it interesting when someone mentions that X is bad for something it was not designed for, as much as I am interested when someone mentions that X is good even if it was not designed for something.

reply
Yeah I dunno, the first time I tried to use asyncio I ran into a bug that nobody knew how to solve. Can't remember what it was but generally if I use something for the first time and immediately hit a bug... Yeah I'm not using that thing if I can help it.

I mean that's true for Python in general, but sadly these days you can't really avoid it.

reply