On Thu, 2019-09-05 at 11:29 -0400, Stephen John Smoogen wrote:
Suggestions on how to implement this would be to have people
shuffled by a program and then run through for 6 or so weeks until
the
next shuffle is needed.
I have written a program that would do this:
https://gitlab.com/bowlofeggs/rpick
If you want to give it a try, create ~/.config/rpick.yml with contents
like this:
---
oncall:
model: lottery
choices:
- name: smooge
- name: bowlofeggs
- name: nirik
weight: 2
- name: relrod
<etc>
I gave nirik a weight of 2 because he really really liked being pinged,
so this will make him get chosen 2x as often as everyone else! You can
ask it to pick one for you:
$ rpick oncall
Whoever gets picked gets their tickets set to 0 and everyone else gets
a ticket (increasing their chances of being chosen next).
There are a bunch of other models you can pick from too other than the
lottery ticket model, as documented in the readme.