in reply to Predictable Randomness

I've had great results with Algorithm::Numerical::Shuffle. My lists have fewer than 100 elements, though, and I'm not sure how big yours are. If you use it each time you'll get a shuffled list each time, so if you must avoid duplicates, you'll need to keep a per-user list (it seems that your code would need that, too...).

HTH, --traveler