Back then, we didn’t know about , Nash equilibrium , or pseudo-random number generators (PRNGs) . We just knew that Alex had a tell: he almost always opened with rock. I countered with paper. He called it "betrayal." I called it "strategy." Part 2: Growing Apart, Then Reconnecting Through Code Life happened. College, jobs, moves. Alex went into AI research; I fell into backend development. We exchanged memes, not emotions. Years passed.
For SCUIID testing, you’ll need distributed logs. But the spirit is the same: Conclusion: The Final Rock – Paper – Scissors We ended our V100 experiment by playing one real round — not simulated. Face to face over Zoom. I chose scissors. Alex chose rock. He won, just like 20 years ago. rps with my childhood friend v100 scuiid work
“Still can’t beat me,” he said.
(long-form article suitable for a tech nostalgia blog or Medium). Back then, we didn’t know about , Nash
print(Counter(results)) # should be near 33% each He called it "betrayal
import random, time from collections import Counter def rps_result(p1, p2): # 0 = tie, 1 = p1 wins, 2 = p2 wins if p1 == p2: return 0 if (p1, p2) in [(0,2), (1,0), (2,1)]: return 1 return 2 moves = [0,1,2] results = [] for _ in range(1_000_000): a, b = random.choice(moves), random.choice(moves) results.append(rps_result(a,b))
– Stands for Scalable Collision-Resistant Unique Identifier . It’s a distributed ID generation protocol used in high-throughput databases. Alex’s work required generating billions of unique IDs without overlap. He wanted to test randomness distribution… using RPS as a metaphor.