Selector de nombres aleatorios — Ruleta, equipos y sorteos justos
Pega una lista de nombres y gira una colorida ruleta para elegir a un ganador, o cambia al modo Seleccionar N para sacar varios a la vez, o al modo Equipos para formar grupos al azar. Puedes eliminar a los ganadores y volver a girar la ruleta para elegir los siguientes lugares. Como el sorteo se ejecuta por completo en tu dispositivo, no hay un límite de filas en el servidor: listas de más de 10,000 nombres funcionan sin problemas. La selección utiliza una mezcla Fisher–Yates con el generador criptográfico de tu dispositivo y muestreo de rechazo, lo que garantiza que cada nombre tenga exactamente la misma probabilidad de salir, y no solo una aproximada.
Casos de uso
Cómo elegir un nombre al azar con la ruleta
Escribe o pega un nombre por línea: estudiantes, compañeros de equipo o participantes de una rifa. La lista se guarda automáticamente en este navegador.
Haz clic en Girar. La ruleta acelera y frena suavemente a lo largo de 4–6 segundos, deteniéndose en un sector elegido mediante aleatoriedad criptográfica.
El nombre que queda bajo el indicador aparece en una tarjeta de ganador y se registra en el historial con fecha y hora.
Elimina al ganador y vuelve a girar para el segundo puesto; cambia a Seleccionar N para extraer varios nombres distintos a la vez; o pasa a Equipos para repartir cada nombre en 2+ grupos aleatorios de tamaño casi igual y copiar la lista completa.
Preguntas frecuentes
- ¿Mi lista de nombres se sube a algún sitio?
- No. La lista se guarda únicamente en el almacenamiento local de tu navegador: nada se envía a un servidor y, al limpiarla, se elimina por completo.
- ¿La ruleta es verdaderamente justa?
- Sí. El ángulo final proviene de crypto.getRandomValues —el mismo generador que se usa en criptografía— con muestreo de rechazo para evitar el sesgo por módulo. Cada sector tiene exactamente la misma probabilidad.
- ¿Cuántos nombres puedo añadir?
- No hay un tope establecido. El sorteo consiste en una sola pasada sobre un arreglo dentro de tu propio navegador en vez de una petición a un servidor, por lo que listas de más de 10,000 nombres se pegan, giran y mezclan sin problema; el límite práctico es la memoria de tu dispositivo y no una cuota de servicio. Con más de algunos miles de nombres, los sectores de la ruleta se vuelven muy estrechos para leerlos, por lo que el modo Seleccionar N o el modo Equipos resultan más convenientes para ese volumen.
- ¿Cómo divido una lista en equipos al azar?
- Cambia al modo Equipos, define la cantidad de grupos y haz clic en Dividir. Se realiza una mezcla Fisher–Yates que se reparte por turnos entre los equipos, lo que garantiza que cada nombre quede en un solo equipo y que el tamaño de los grupos nunca difiera por más de un integrante. Sortear de forma repetida en el modo individual no puede garantizar esto, ya que un mismo nombre podría repetirse.
- ¿La misma persona puede ganar dos veces?
- Solo si la dejas en la ruleta. Usa «Eliminar y volver a girar» después de cada tirada para garantizar ganadores únicos en cada ronda.
- ¿Cuántos nombres caben en la ruleta?
- No hay un límite estricto. Las etiquetas se leen con claridad hasta unos 30–40 nombres; a partir de ahí, los sectores se hacen muy delgados: el modo Seleccionar N gestiona mejor las listas grandes.
- ¿Qué hace diferente el modo Seleccionar N?
- Omite la ruleta y extrae N nombres distintos a la vez mediante una copia de tu lista mezclada criptográficamente: es instantáneo y garantiza que no haya duplicados en una misma extracción.
- ¿Mi lista seguirá aquí mañana?
- Sí, en el mismo dispositivo y navegador: se conserva en el almacenamiento local entre visitas. Por diseño, no se sincroniza con otros dispositivos.
Qué hace que un sorteo sea realmente justo (y las tres formas en que suele no serlo)
La mayoría de los selectores de nombres parecen aleatorios sin serlo. Los tres tipos de fallo que se detallan a continuación son invisibles desde fuera —la ruleta sigue girando y sale un nombre—, por lo que cualquier sorteo importante debería aclarar qué método utiliza.
| Método | Cómo elige | Sesgo | Veredicto |
|---|---|---|---|
| Math.random() % n | Escala un valor de punto flotante y luego toma el residuo | Sesgo de módulo: los índices más bajos salen con algo más de frecuencia y el generador no es criptográfico | Aceptable para lanzar una moneda, pero no para otorgar un premio |
| Mezcla ingenua (intercambiar cada elemento con cualquier otro) | Recorre la lista intercambiando parejas al azar | Demostrablemente no uniforme: algunas combinaciones ocurren más a menudo que otras | Parece justo, pero no lo es |
| Mezcla de Fisher–Yates / Durstenfeld | Recorre la lista hacia atrás, intercambiando cada elemento con uno anterior o consigo mismo | Ninguno: cada permutación tiene exactamente la misma probabilidad | El algoritmo correcto desde 1964 |
| crypto.getRandomValues con muestreo de rechazo | Toma bytes del grupo de entropía del sistema operativo y descarta los valores que sesgarían el rango | Ninguno, e impredecible incluso conociendo los sorteos anteriores | El método que utiliza este selector |
- El muestreo de rechazo es la parte que la mayoría de las herramientas omite: si proyectas 256 valores de un byte aleatorio sobre una lista de 10 nombres, los primeros 6 nombres ganarían con un poco más de frecuencia. Descartar los valores que caen fuera de rango es lo que elimina esa distorsión.
- La capacidad aquí está delimitada por tu navegador y no por la cuota de un servidor: listas de más de 10,000 nombres se pegan y sortean sin problemas, ya que todo el proceso consiste en una sola pasada sobre un arreglo.
- Eliminar a un ganador y volver a girar la ruleta permite elegir auténticos segundos o terceros puestos. En cambio, el modo Seleccionar N extrae varios nombres distintos en una sola mezcla, siendo el método adecuado para dividir una clase en grupos, ya que los sorteos individuales repetidos pueden devolver el mismo nombre a menos que se retire en cada ocasión.
Privacidad por diseño. Los nombres se sortean por completo en tu navegador y la lista solo se almacena en la memoria local de este navegador: nada se envía a un servidor.