Glad someone is paying attention ;-) Well spotted.
Doing a permutation of the people ought to make it fairer. Which is important if your name is near the front of the alphabet. Will update the post. Thanks!
rota = do
return . sort $ zipWith (++) (cycle $ shuffle' ps (length ps) h) (shuffle' js (length js) g)
Another code block