The 12 Commandments of Synchronization
6 points by rrampage
6 points by rrampage
13: thou shalt forget all of the above and use Hoare's Communicating Sequential Processes (e.g. Go or Rust) or the Actor Model (e.g. Erlang) instead, as they are far easier to reason about and avoid deadlocks and data races.
Was about to say STM :) but there are "commandments" for these safer systems too, it's just that they're fewer and easier to follow.
Hm, would be fun to compare a list of stm (or actor or csp) commandments.