I've been trying to read more on how to design concurrent programs however the more I learn the more I feel lost on how it all fits together. Actor model, Software Transnational Memory, CSP, Async/Await, Coroutines, Message passing, etc..<p>Despite doing some research, it's hard for me to judge the quality of the resources I find. What books/tech talks/papers would be a good starting point to understand the basics of modern concurrent programming?