That's a huge topic but I would say implement a hobby project and learn by doing. Pick something you're interested in and start writing code to exercise the theoretical concepts. A small piece of advice is to make sure you're motivated before diving in. Debugging a race condition, just as an example, can be quite involved and consume a lot of your time and energy to even reproduce.
But what is a good hobby project with a strong focus on concurrency that will not swamp a beginner to this topic?
Ask HN: How to learn concurrency?
11–20 of 22 posts
Re: Ask HN: How to learn concurrency?
#12Maybe that is a good side project.
Re: Ask HN: How to learn concurrency?
#132) The Art of Multiprocessor Programming by Herlihy, Shavit et al. - https://shop.elsevier.com/books/the-art-of-multiprocessor-pr... The classic must-study book.
Both the above are not language specific but do have examples in Java.
Re: Ask HN: How to learn concurrency?
#14(I actually authored a few of those problems - they cover the classic scenarios like producer-consumer, dining philosophers, etc.)
Re: Ask HN: How to learn concurrency?
#15[flagged]
Re: Ask HN: How to learn concurrency?
#16The cool stuff in concurrency is not having to deal with it imoand recognizing when its not essential. Also I hope you mean concurrency not parallelism. The second one is a bit more manageable.
Re: Ask HN: How to learn concurrency?
#17Re: Ask HN: How to learn concurrency?
#18If not, I suggest reading this blog post: https://prettygoodblog.com/p/what-threads-are-part-2
(disclaimer: I wrote this)
Re: Ask HN: How to learn concurrency?
#19Re: Ask HN: How to learn concurrency?
#20That's a huge topic but I would say implement a hobby project and learn by doing. Pick something you're interested in and start writing code to exercise the theoretical concepts. A small piece of advice is to make sure you're motivated before diving in. Debugging a race condition, just as an example, can be quite involved and consume a lot of your time and energy to even reproduce.
But what is a good hobby project with a strong focus on concurrency that will not swamp a beginner to this topic?