You can tell someone a brief answer to memorize, but to teach them anything takes a little more explaining.
For example, Question #1 is often "how do I do this in some particular way", but 2 and 3, "why" and "when" should I do it that particular way -- they take more explaining than #1 -- and through that explanation, you start to get good at your craft.
Actually I also liked the way each iteration built on the previous concept. Having the full code at each step adds a lot to the length, but for beginners, this is really useful.
Actually, I started reading about async/await from asyncio package. But for a newbie the above article is much simpler to grasp concurrency and parallelism concepts. And the sample code makes it a lot easier.