Asyc/await pretends to be synchronous and gets all tied in horrible knots when the sunk costs mount
Writing IO without blocking has always been second nature to me
Explicit state machines