
Concurrency is Not Parallelism — And Most Developers Conflate Them
There's a quote I keep returning to whenever this topic comes up. Rob Pike, one of Go's creators, said it at Heroku's Waza conference back in 2012: "Concurrency is about dealing with lots of things at once. Parallelism is about doing lots of things at once." This one sentence, fourteen years ago. And I still see developers confusing the two every time. I'm not saying that as a criticism — I've mixed them up before too. These two ideas are very close to each other, and in a lot of languages they even use the same tools. On top of that, documentation across the industry has been using the terms interchangeably for years. When languages like Go, JavaScript, Python, Java, and Rust all handle things a little differently and each uses slightly different wording, it’s pretty easy to see why people mix them up. So here's my attempt at a proper technical explanation. Start Here: The Actual Definitions Concurrency is a structural thing. A program is said to be concurrent if it is written in such
Continue reading on Dev.to Webdev
Opens in a new tab



