Everything that tried to break my chess server
Part 2 of the chessm8 story: the races I caught by attacking my own system, a board that lied to players, and launch-night bots hunting for credentials.
Part 2 of the chessm8 story: the races I caught by attacking my own system, a board that lied to players, and launch-night bots hunting for credentials.
Part 1 of the chessm8 story: why one Elixir process per game, server-owned clocks, exactly-once ratings, snapshot resurrection, and one deliberate machine.