4 ms·
The Low Tech Secret Santa
- baud147258 5y agoor the person organising the secret santa could do the draw themselves, check that no one is going to give a gift to themselves and they're good to go. It just requires that someone knows the pairings, but that's an easier solution.
- tshaddox 5y agoI think I’m missing some implicit constraints here. Firstly, I guess they’re assuming that the person organizing the event also wants to participate, or at least doesn’t want to know the pairings. But even then, couldn’t you just shuffle the names once and pair everyone with the next name in the list (wrapping around from that last to the first)? Is that not supposed to be “random” enough? You could also just write a simple program to shuffle the names until you get valid pairings and print or otherwise send the pairings without looking at them. What am I missing?
- Falkon1313 5y agoYou are absolutely correct. It's a very simple and commonly-done thing that doesn't need any complexity at all. As developers and techy people we can go to extraordinary lengths to overcomplicate things. I was half-expecting the post to end by discussing that, shortly after a bit about using a hypervisor control system to manage the cluster of cloud-hosted microservices that orchestrate all of the AbstractSecretSantaServiceFactoryInterface instances. Then like, "Haha, gotchya! All you really have to do is this."
- doublepg23 5y agoAll my friends use Telegram and this bot was very helpful for Secret Santa. https://github.com/Voxter256/Secret-Santa-Bot https://github.com/Voxter256/Secret-Santa-Bot (Currently running in Docker on a Beagle Bone Black!)
- vitus 5y agoIn case anyone's wondering about the value of p converging "somewhere above 1/3" and doesn't want to wait for the next installment, it converges to 1/e. https://en.wikipedia.org/wiki/Derangement#Growth_of_number_of_derangements_as_n_approaches_%E2%88%9E https://en.wikipedia.org/wiki/Derangement#Growth_of_number_o...
- _6sik 5y agoThe part that is - surprisingly computationally complicated - and I can't stress this enough, is ensuring that previous years' matches don't re-match. When you add more people and more years, it turns into a bloody mess to a point of engines throwing hissy fits. Run the numbers, be surprised.
- jcul 5y agoFor the past few years I've used a simple python script + twilio to send a SMS text to family for secret Santa. It works surprisingly well, for dry runs / debugging I print out the random pairings, but for the real one I just output nothing and send the texts. Of course, I could go and check the twilio logs and find out who has who, but that would ruin the fun. I don't go so far as to try ensure that previous years don't match with the same person. You wouldn't have that guarantee if pulling names out of a hat in person.