I’ve been using coroutines since I first encountered them in the same book that this author found them in. Unlike him I’ve used them all over the place professionally and in my personal stuff. I prefer them to threads, to FSMs, and to the callback Hell of reactors for most of my work. This article has a good explanation of why.