3 ms·
Ask HN: Best resource to learn parallel/concurrent programming?
- Zambyte 3y agoIf you are familiar with a language that either supports the Actor Model[0] natively, or has a library[1] that offers support for the model, I recommend trying to write concurrent applications using that. I struggled with concurrency quite a bit until I stumbled upon the Akka framework for Scala. I was already familiar with Scala, so that made it easy to learn in terms of what I already knew. The Actor Model itself is a very simple concurrency model, and I think understanding that makes it easier to understand other concurrency paradigms. [0] https://en.wikipedia.org/wiki/Actor_model https://en.wikipedia.org/wiki/Actor_model [1] https://en.wikipedia.org/wiki/Actor_model#Actor_libraries_and_frameworks https://en.wikipedia.org/wiki/Actor_model#Actor_libraries_an... Also check out the references / further reading / external links on that wiki page for actual resources.
- mikewarot 3y agoTo truly grok what you're getting into, I'd recommend watching Kevlin Henney's talk about concurrency[1]. The key quote "when you introduce concurrency into a non-concurrent environment what you do is you change the laws of physics of your program, you change the nature of time" [1] https://www.youtube.com/watch?v=Hi6ICEVVRiw https://www.youtube.com/watch?v=Hi6ICEVVRiw