Ironic as this may sound, my first suggestion for how to write programs that are supposed to be random is to make them deterministic. — Probabilistic Programming Habits