Geschenkaustausche scheitern auf vorhersehbare Weise. Die zwei häufigsten sind dieselben: Jemand zieht sich selbst, und jemand zieht die Person, für die er letztes Jahr schon ein Geschenk gekauft hat.
Beides ist lösbar, und das zweite wird nur lösbar, wenn Sie es dem Tool vorher sagen.
Was die Zuteilung tut
Der Wichtel-Generator paart jede Person mit genau einer anderen. Die Zuordnung ist zufällig, mit zwei automatisch erzwungenen Bedingungen:

Niemand zieht sich selbst. Das ist eine mathematische Eigenschaft — eine Permutation ohne Fixpunkte heißt Derangement, und es gibt mehr als einen Weg, eines zu bilden, was das Tool tut.
Ihre Ausschlüsse werden respektiert. Vor dem Generieren können Sie Paare markieren, die nicht vorkommen dürfen: Personen, die zusammenwohnen, eine Führungskraft und ihre direkte Berichtsperson, zwei Personen, denen es unangenehm wäre. Der Generator versucht es erneut, bis er eine Zuteilung erzeugt, die alle erfüllt.
Alles andere ist Zufall. Das ist der Punkt.
Die Einrichtung
Listen Sie alle auf, eine pro Zeile. Verwenden Sie vollständige Namen — „Alex Chen“ statt „Alex“, denn das Tool kann zwei Alex nicht unterscheiden, und ein Duplikat ist keine Paarung, die jemand will.
Fügen Sie Ausschlüsse hinzu. Das ist der Schritt, den Leute überspringen, und er entscheidet, ob das Ergebnis brauchbar ist. Häufige: Partner und Ehepartner, Familienmitglieder, die zwei Personen, die sich immer gegenseitig identische Geschenke kaufen, eine Führungskraft, die mit jemandem gepaart wird, den sie bewertet.
Legen Sie ein Budget fest, wenn Sie eines haben. Das Budget wird in den Ergebnissen und in den kopierten Nachrichten angezeigt — es beeinflusst die Zuordnung nicht, was gut zu wissen ist, wenn Sie das erwartet hatten.
Generieren. Wenn das Tool meldet, dass es nicht jeden Ausschluss erfüllen kann, ist das ein echtes Signal und kein Fehler zum erneuten Versuchen. Es bedeutet meist, dass die Vorgaben jemanden eingekesselt haben — prüfen Sie, ob jemand alle anderen ausgeschlossen hat, was jede gültige Zuordnung unmöglich macht.
Die Leute informieren
Zettel kopieren erzeugt eine kurze Nachricht für eine Person, mit Empfänger und Budget. Alle kopieren erzeugt die vollständige Liste.
Das ist der unangenehme Teil der ganzen Sache: Jemand muss die Ergebnisse verteilen, und diese Person kann jede Paarung sehen. Es gibt keinen privaten Link pro Person im Tool.
Das ist in Ordnung, wenn alle einander kennen und der Spaß in der anschließenden Geheimhaltung liegt. Es ist ein Problem, wenn der Punkt ist, dass eine Führungskraft nicht weiß, wer wen gezogen hat; dann nutzen Sie eine private Nachricht an jede Person oder führen Sie die Ziehung durch, ohne offenzulegen, wer sie bedient hat.
Sagen Sie, dass die Zuteilungen endgültig sind. Das ist das Einzige, was Sie vorab sagen müssen, denn in dem Moment, in dem jemand seine Paarung nicht mag, ist der Drang, sie neu auszuführen, überwältigend. Ein erneuter Durchlauf macht aus einem fairen Verfahren die Suche nach einem bevorzugten Ergebnis, und jeder kann es sehen.
Praktiken, die es zum Funktionieren bringen
Machen Sie die Ausschlüsse zuerst. Ein zehnminütiges Gespräch darüber, wer nicht gepaart werden darf, erspart eine Auseinandersetzung im Dezember.
Kündigen Sie die Regeln vor dem Generieren an. Endgültigkeit, Budget, Kaufdeadline und das Datum des Austauschs.
Setzen Sie eine echte Deadline. Leute kaufen Last-Minute-Geschenke schlecht. Zwei Wochen sind die übliche Antwort, und ein genanntes Datum sorgt dafür, dass der Austausch am Tag stattfindet, statt sich zu verschieben.
Halten Sie es danach geheim. Das Ganze funktioniert, weil niemand es weiß. Wenn die Paarung am Tag öffentlich bekannt gegeben wird, ist die Vorfreude weg, und niemand ist deswegen gestresst.
Wann Zufall die falsche Wahl ist
Wenn Beziehungen Gewicht haben. Ein familiärer Geschenkaustausch unter Leuten, die sich nicht alle verstehen, wird durch Zufall nicht besser. Er nimmt Ihnen die Kontrolle über eine Paarung, die wichtig war.
Wenn Sie jemanden Bestimmten belohnen oder danken wollen. Eine Ziehung lässt sich nicht sanft steuern, und wenn Sie sie steuern wollen, wollen Sie eine manuelle Zuteilung.
Bei kleinen Gruppen, die Sie gut von Hand paaren können. Bei vier Personen kann jeder jede mögliche Paarung sehen, auch die, die Sie vermeiden wollen. Das Tool spart dieselben drei Sekunden, die Sie zum Aufschreiben bräuchten.
Wenn Ausschlüsse unmöglich zu erfüllen sind. Eine Gruppe von drei, in der sich zwei gegenseitig ausschließen, hat keine gültige Antwort. Das Tool sagt es Ihnen; die Antwort ist, die Vorgabe zu überdenken, nicht weiter zu versuchen.
Ein Hinweis zum Zufall
Die Zuordnung nutzt die kryptografische Zufallsquelle des Browsers statt Math.random(), das deterministisch ist und prinzipiell rekonstruiert werden kann, um Ergebnisse vorherzusagen. Wo Vorgaben gelten, mischt der Generator und versucht es erneut, bis er eine gültige Anordnung findet — bis zu einer begrenzten Anzahl von Versuchen, danach meldet er einen Fehler, statt etwas zurückzugeben, das Ihre Ausschlüsse verletzt.
Die Fairness-Seite behandelt den Mechanismus.
Dieses Wiederholungsverhalten ist gut zu kennen: Die Zuordnung ist keine einzelne gleichverteilte Ziehung aus allen gültigen Anordnungen, denn das erneute Versuchen bevorzugt Anordnungen, die leicht zu erfüllen sind. Für einen Geschenkaustausch ist das irrelevant — niemand kann zwischen Anordnungen unterscheiden. Bei einer Ziehung mit einem Preis auf dem Spiel wäre es wichtig, wo der faire Ansatz eine einzelne Ziehung aus der gültigen Menge ist.
Einen durchführen
Schreiben Sie die Ausschlüsse auf, generieren Sie, und kopieren Sie die Zettel sofort in einzelne Nachrichten. Sagen Sie dann das Wort „endgültig“ laut, bevor jemand antwortet.
Bereit? Öffnen Sie den Wichtel-Generator und fügen Sie Ihre Liste ein.