&gt; Some of us (most of us, I would contend) who have been successfully programming highly concurrent software without them for 20+ years are totally OK with that.<p>I work on parallel software every day and I would not be OK with having threads and channels as my only tools. I would agree that they&#x27;re usually the best thing to reach for initially, but it&#x27;s essential to be able to have low-level control over the scheduling if you want to get good parallel performance out of the hardware. I have workloads that today result in 3x speedups on 4 cores but would become slower than the sequential algorithm on 1 core if I were to rip out the highly-tuned parallel scheduler and replace it with threads and channels.<p>To be fair, though, I&#x27;m working on CPU-bound software and if my workload were I&#x2F;O bound I&#x27;d likely have a different outlook on this.