Why is concurrent programming so hard ?
alexgartrell: We all learned to program in a non-concurrent manner and we're trying to reuse knowledge from that.  Instead, we should focus on re-learning programming, namely what it means to have side-effects and global memory and what we should use instead to operate on those things in a safe way.Concurrent programming isn't hard, debugging concurrent programming is hard.  Eliminate side effects, use Software Transactional Memory, and figure out how easy concurrent programming _can_ be.obvious Clojure plug