random_u64()를 쓰면 선택이 균등하지 않다
When random is not actually random enough

많은 코드베이스에서 무작위 선택을 위해 random_u64() % n을 사용하지만, 이는 균등 분포를 보존하지 못한다. 예를 들어 10개의 입력으로 3개 중 하나를 고르면 첫 번째가 40%로 뽑히는 식이다. 저자는 random_choice()로 확률 분포를 직접 명시하고, 정수 가중치를 사용하는 방식을 제안한다. Antithesis를 사용하는 저자는 최근 코드에서 random_u64() 호출을 모두 제거하고 가중 random_choice()로 대체했다.
다음에 원래 샘플과 같은 코드를 보게 된다면, 스스로에게 물어보라: 원하는 분포를 직접 표현할 수는 없을까?