- El juego de adivinar números presentado como un acertijo de entrevistas de Microsoft pregunta sobre búsqueda binaria y valor esperado, pero bajo la condición de que el número se elige al azar, la conclusión de que “perjudica al participante” es incorrecta
- Las reglas consisten en acotar con pistas un número entre 1 y 100 hasta adivinarlo; mientras más aumente la cantidad de intentos necesarios para acertar, la recompensa, que empieza en $5, disminuye, y luego el participante termina pagando dinero
- La observación de que Ballmer puede elegir deliberadamente un número difícil es correcta; incluso con una estrategia de búsqueda binaria, ciertos 37 números recién se encuentran en el séptimo intento, por lo que el participante paga $1
- Si el número es aleatorio, tanto el código en Perl como el cálculo probabilístico dan un valor esperado de $0.20 para el juego, lo que le da al participante un valor esperado positivo
- Si la regla hubiera sido que no existe el tramo de recompensa de $0 y que el participante empieza a pagar desde el sexto intento, el valor esperado habría sido -$0.49, coincidiendo con la conclusión de Ballmer
Reglas del acertijo de adivinar números
- Steve Ballmer presentó en un video breve un acertijo que, según dijo, planteaba a candidatos en entrevistas de Microsoft
- Una persona piensa en un número entre 1 y 100, y el postulante acota el rango recibiendo la pista “alto” o “bajo” cada vez que hace un intento
- La recompensa cambia según la cantidad de intentos necesarios para acertar
- 1.er intento: $5
- 2.º intento: $4
- 3.er intento: $3
- 4.º intento: $2
- 5.º intento: $1
- 6.º intento: $0
- 7.º intento: el participante paga $1
- 8.º intento: el participante paga $2
- 9.º intento: el participante paga $3
- La pregunta central es: “¿Deberías aceptar este juego?”
- La conclusión de Ballmer fue “No”, y dio dos razones
- Él puede elegir el número más difícil de adivinar
- Incluso si elige el número al azar, el valor esperado es negativo, por lo que el participante terminaría pagándole dinero a Ballmer
La parte en la que Ballmer tenía razón: puede elegir el número de forma adversarial
- La primera razón, que Ballmer puede elegir un número difícil, es correcta
- Bajo la condición de que el número se elige al azar, la estrategia de búsqueda binaria es óptima
- Incluso usando búsqueda binaria, si Ballmer elige ciertos números, el participante termina pagando $1
- Esos números son 2, 5, 8, 11, 14, 17, 20, 22, 24, 27, 30, 33, 36, 39, 42, 45, 47, 49, 52, 55, 58, 61, 64, 67, 70, 72, 74, 77, 80, 83, 85, 87, 90, 93, 96, 98 y 100
- Con los demás números, recibe $0 o una recompensa positiva
- Los números que dan $0 son 1, 4, 7, 10, 13, 16, 19, 23, 26, 29, 32, 35, 38, 41, 44, 48, 51, 54, 57, 60, 63, 66, 69, 73, 76, 79, 82, 86, 89, 92, 95 y 99
- Con el resto de los números, el participante recibe parte del dinero de Ballmer
Ejemplo con el número 59
- Ballmer eligió 59 en el video
- Con una estrategia de búsqueda binaria, se puede encontrar en 5 intentos con la secuencia 50, 75, 62, 56, 59
- En ese caso, la entrevistadora Emily Chang recibe $1
- Los intentos reales de Emily Chang fueron 50, 75, 60, 55, 57, 58, 59, bastante cerca de la solución de 5 pasos con búsqueda binaria
Si la elección es aleatoria, el valor esperado es positivo
- Si se supone que Ballmer elige el número al azar, la conclusión de que el valor esperado es negativo es incorrecta
- El código en Perl calcula, para cada número del 1 al 100, en cuántos intentos se encuentra con búsqueda binaria, suma las recompensas y obtiene el promedio
- El resultado del cálculo es que el valor esperado del juego es $0.20
- El mismo resultado también puede confirmarse desde una perspectiva probabilística
- En el 1.er intento se elige 50, la probabilidad de éxito es 1/100 y la recompensa es $5
- En el 2.º intento se elige 25 o 75, la probabilidad de éxito es 2/100 y la recompensa es $4
- En el 3.er intento se elige 12, 37, 62 u 88, la probabilidad de éxito es 4/100 y la recompensa es $3
- En el 4.º intento se elige 6, 18, 31, 43, 56, 68, 81 o 94, la probabilidad de éxito es 8/100 y la recompensa es $2
- Después continúa de la misma manera
- La fórmula del valor esperado es
5 * 1/100 + 4 * 2/100 + 3 * 4/100 + 2 * 8/100 + 1 * 16/100 + 0 * 32/100 + -1 * 37/100, y el resultado es 0.2 - El último término,
-1 * 37/100, representa los posibles números restantes después de llegar al final de la búsqueda binaria
Dónde pudo haberse originado el error
- Una posibilidad es que Ballmer no haya tenido en mente el tramo de recompensa de $0
- Si las reglas hubieran sido “$5, $4, $3, $2, $1, y después el participante paga $1, $2, $3”, el valor esperado sería -$0.49
- En esta variante, coincide con la conclusión de Ballmer de que “el valor esperado es negativo”
1 comentarios
Comentarios de Hacker News
El artículo sugiere que el entrevistado supone que el número se elige al azar, pero en realidad Ballmer también podría elegirlo de forma adversarial.
Sin embargo, si el entrevistado supone una elección adversarial por parte de Ballmer, puede cambiar la probabilidad eligiendo de otra manera su primera estimación. El autor original también parece asumir que se empieza en 50, pero por la naturaleza de la búsqueda binaria, si se elige un valor inicial alejado de 50 con un desplazamiento aleatorio cada vez, se pueden evitar ataques adversariales simples dirigidos a la heurística y aun así conservar la mayoría de las ventajas de la búsqueda binaria.
Me gustaría ver un análisis del algoritmo óptimo para elegir desplazamientos aleatorios frente a este tipo de elección adversarial simple.
Me imagino a Ballmer diciendo: “No, la primera estimación tiene que ser 50. Todo el mundo lo sabe”.
Es decir, solo hace falta que haya como máximo 64 números a cada lado de la primera estimación. Como dices, si ese desplazamiento se elige al azar, la mayoría de los ejemplos adversariales que aprovechan las grietas de la búsqueda binaria quedarían neutralizados, y quizá incluso se podría eliminar la ventaja misma de la elección adversarial. Aunque en ese caso tal vez haría falta una distribución ajustada al desplazamiento.
Yo también quisiera ver ese análisis.
El punto clave es que, incluso si Ballmer elige al azar y el entrevistado juega de forma óptima en función de eso, el valor esperado del juego sigue siendo negativo; con eso basta para estar seguro de que es un juego desfavorable para el entrevistado.
El artículo no responde la pregunta más difícil de “entonces, ¿cuál es el valor esperado real?”. Pero si el entrevistado elige al azar su primera estimación entre 40 y 60 y luego hace búsqueda binaria desde ahí, no parece que Ballmer pueda obtener una ventaja clara frente a elegir el número inicial al azar.
En un equilibrio de Nash que encontró la simulación, el lado de Ballmer mezcla elecciones cerca de los extremos del rango. No siempre 1 o 100, pero sí alrededor de esos valores. El jugador Ballmer terminó ganando con un valor esperado de unos 0,85 a 1,00 dólares por ronda.
Como resultado, la estrategia de quien intenta adivinar también empieza la búsqueda binaria desde los extremos del rango, esperando acertar de un lado u otro. Es parecido a los penales en fútbol, donde el pateador y el arquero eligen direcciones. El arquero quiere elegir el mismo lado, y el pateador quiere el contrario. Pero aquí hay 100 opciones, así que se siente como si el arco fuera demasiado ancho.
Ahora creo que, si no se atan las elecciones restantes al patrón de búsqueda binaria, el equilibrio cambiaría por completo y mejorarían los resultados del jugador. Aunque eso introduce decisiones estratégicas en cada rango y hace que el cálculo sea mucho más pesado. Además, pasé 2 horas evitando trabajar por hacer esto, así que no es ideal. Aun así, me da curiosidad saber qué pasa si se elimina la restricción de búsqueda binaria.
Hace poco tuve una entrevista para un puesto senior en el complejo dominio de pagos, un área en la que he trabajado por más de 10 años.
Como conozco a fondo los pagos no solo en EE. UU., sino también en el Reino Unido y la mayoría de las jurisdicciones de la UE, la entrevista salió impecable. Al ser un rol senior, la influencia, la comunicación suave y la gestión de conflictos eran más importantes que la expertise temática, y también me fue bien en eso. Pusieron a propósito a un manager senior desagradable que me interrumpía constantemente, y el feedback posterior fue que mi manejo del conflicto había sido una masterclass.
La ronda final fue con una persona de negocio que se consideraba a sí misma, en la práctica, una experta del dominio, y siguió lanzando preguntas de trivia sobre pagos. Parecía que su plan era recorrer la mayor cantidad posible de datos sueltos hasta encontrar un motivo para rechazarme.
La última pregunta fue si tenía experiencia real haciendo pagos en tiempo real, y sí la tenía en varios países. FedNow, en EE. UU., se introdujo muy recientemente, así que mi experiencia se limitaba a haber leído la especificación y evaluado algunos proveedores para decidir si construir o comprar. Con eso como base, dio una recomendación negativa diciendo que no tenía experiencia en pagos en tiempo real.
Sinceramente, no quiero trabajar en un entorno así. Era un banco grande de EE. UU., y su mayor problema no era la innovación de producto ni el foco en el cliente, sino las fallas operativas. Más allá de mi experiencia en pagos, esa es un área que he rescatado en varias grandes empresas, y también lo dejé muy claro. Aun así, con suerte uno no tiene que sufrir para descubrir que un lugar así es desagradable.
No solo parece indicar que la empresa tiene una cultura tóxica, sino también que acepta esa cultura. Lugares así atraen a personas con inclinación al conflicto y, cuando hay suficientes de esas personas, ellas terminan creando la cultura.
No se dice con frecuencia, pero el conflicto es un fracaso de liderazgo. Muchas veces basta con que una persona de muy alto nivel chasquee los dedos y diga: “Necesito que ustedes dos hagan que esto salga adelante”, para que el conflicto se resuelva. Pero el liderazgo está demasiado alejado del terreno como para alinear a los equipos, o defiende de forma estructural el conflicto interno bajo el nombre de competencia. En cualquiera de los dos casos, esos lugares pueden ser un infierno para trabajar.
La idea era llegar, eventualmente, a un punto en el que el candidato no supiera la respuesta de inmediato. No lo hacía con intención hostil ni grosera; quería ver si podía decir “no sé”. No saber algo es parte cotidiana del trabajo técnico, pero si alguien no se siente cómodo diciéndolo, puede ser un gran problema.
En general, los candidatos más capaces eran los que se sentían más cómodos respondiendo “no sé”. Ponerse a la defensiva siempre me pareció una señal de alerta.
A los ejecutivos tóxicos les gustan más los consultores y asesores externos que cobran de más que los empleados internos que ganan mucho menos.
Es realmente frustrante estar completamente preparado y más que calificado, pero sentir que el proceso no es una evaluación real de tus habilidades y experiencia, sino un concurso de trivia. Como dijeron otros, este comportamiento es una señal clara de una cultura tóxica.
Lo más absurdo es que debería ser exactamente al revés. Si quieres hacer crecer un equipo o reemplazar a alguien, deberías intentar encontrar a alguien mejor que cualquiera de los que ya tienes.
Si se ponen a buscar pretextos en detalles insignificantes o a escarbar en minucias irrelevantes para encontrar una razón para rechazarte, es una enorme señal de alerta. Significa que no les interesa la innovación ni resolver problemas reales. Lo mismo aplica a problemas como las interminables fallas operativas que ya hemos resuelto en otras empresas.
En una situación así, lo mejor es disculparse por haberles hecho perder el tiempo e irse. Pero entiendo que, si ese puesto existe en tu zona, den ganas de aguantar la basura. Aun así, a veces esquivar esa bala termina siendo una bendición disfrazada. Incluso si, como me pasaba entonces, estás desempleado y se te está acabando el dinero.
Es como seguir preguntando por los ancestros hasta que la respuesta sea “granjero”.
“¿Debería aceptar este juego?”
Por supuesto que sí. Me gustan los juegos, y el objetivo de un juego es divertirse. Si son los primeros 20 dólares, es un costo aceptable por pasar 10 minutos jugando algo entretenido.
Después puedes decir: “Una vez perdí 20 dólares haciendo búsqueda binaria con Steve Ballmer”, y esa es una frase útil para una cena, así que para mí vale más de 20 dólares.
Probablemente cosas como esta también expliquen por qué Microsoft perdió influencia durante la época de Ballmer. Se fijaban demasiado en lo técnico y veían muy poco el lado humano.
Si hubieras respondido así en una entrevista, definitivamente no te habría contratado. De hecho, una vez entrevisté a un candidato así. Cuando le preguntabas “¿cómo harías esto?”, respondía: “eso no debería hacerse; creo que habría que hacer otra cosa”. No fue contratado.
Con los años fui dándome cuenta poco a poco de que la búsqueda binaria es una herramienta increíble para resolver problemas, sobre todo en sistemas tan grandes y complejos que son difíciles de depurar.
Hace poco, un colega tuvo un problema con una herramienta de renderizado de Figma de la que no teníamos el código fuente. Al exportar cierto diseño tardaba demasiado, y mi colega pasó días cambiando cosas al azar, sin resultado. Cada intento tomaba horas, y a veces el navegador se moría.
La solución que propuse fue quitar la mitad de los elementos y ver qué efecto tenía en el tiempo de exportación. Luego repetimos el proceso con el grupo que seguía fallando. En unas horas encontramos el elemento que estaba provocando, en la práctica, un bucle infinito.
Cada vez que nos alejábamos un paso del dispositivo final, por ejemplo una estación de trabajo, subíamos dos niveles en la red. Así podíamos ampliar el alcance fácilmente y, aun así, acotar muy rápido el “hasta aquí funciona, aquí está roto”.
El administrador usó búsqueda binaria para identificar rápido al suscriptor responsable, modificando selectivamente el contenido al insertar algún espacio adicional en alguna parte del mensaje.
Quitaba una parte del código, veía si seguía rompiéndose, y luego quitaba más.
¿Hay algún nombre para el error de atribuir el éxito en la vida a la propia inteligencia y, por eso, asumir que uno es más inteligente que todos y que tiene razón en todo?
Sería algo así como el lado opuesto del síndrome del impostor.
La segunda parte, la de “soy superior y lo sé todo”, podría llamarse simplemente mala personalidad de toda la vida.
https://en.wikipedia.org/w/index.php?title=Luciferianism&old...
Es la tentación de pensar que, si uno es inteligente, debería convertirse en guardián del mundo. La tentación de crear un mundo basado en el propio aprendizaje y en la verdad última, creyendo que uno encuentra esas verdades con más facilidad y rapidez que la gente común. Así se concede una licencia moral y el fin pasa a justificar los medios. Es creer que el mal que se hace ahora se compensará después con el doble de bien.
También están el error fundamental de atribución y el efecto Dunning-Kruger. En el plano conductual, se mezclan la superioridad ilusoria con la licencia moral, y también un efecto de desinhibición por el cual las personas con grandes éxitos asumen mayores riesgos. Esos riesgos incluyen impactos negativos sobre otras personas.
Parece que todos estos efectos se combinan en cierta medida. No necesariamente se trata de inteligencia, sino al menos del poder que la persona percibe tener. Por ejemplo, alguien que cree haber nacido mejor para X siente más poder, y tiene menos inhibiciones para expresar superioridad o intentar dominar a otros.
Todos hemos visto a personas aferradas a glorias pasadas que no entienden que ya no están en su apogeo y tratan de ejercer un poder que ya no tienen. Para mí, eso sí es el verdadero opuesto del síndrome del impostor: un estado en el que la percepción de uno mismo y de la dinámica social no se actualiza con los cambios de época.
Trastorno narcisista de la personalidad
Antisocialidad
Antes tenía un colega con una pregunta de entrevista favorita. Era una pregunta relacionada con estructuras de datos de grafos, y los candidatos solían quedar descartados después de responderla.
Curiosamente, con el tiempo todos los candidatos que respondían esa pregunta quedaban descartados. Así que nos reunimos para ver qué pregunta estaba haciendo, y al resolverla juntos nos dimos cuenta de que su propia solución estaba mal.
Resultó que había estado descartando gente con esa única pregunta durante toda su carrera.
Fue una experiencia aleccionadora para todos nosotros y nos dejó la lección de volver a revisar todo antes de hacer una pregunta. La mayoría de los candidatos que entrevistan son perfectamente contratables. A veces el equivocado puedes ser tú.
¿Si cometen un error quedan fuera de inmediato? ¿Había tantos postulantes perfectos como para filtrar a casi todos?
Si yo fuera el entrevistado, mi primera pregunta sería: “¿Van a jugar limpio, y cómo puedo verificarlo?”.
“En segundo lugar, cuando hay una cantidad significativa de dinero en juego, valido las entradas. No significa que desconfíe de usted personalmente, sino que desconfiaría de la situación en sí. ¿Cómo podríamos verificarlo, o prefiere que asumamos que ya está verificado y sigamos adelante?”.
Son buenas preguntas, pero cómo se formulan también importa. La ingeniería de software no es ingeniería pura; la comunicación es muy importante.
Como la mayoría de las preguntas de entrevista, esperaría que esta busque ver cómo desarrollas tu razonamiento y muestras el proceso de resolución.
Si el entrevistador te hace esta pregunta y tú encuentras el error, es posible que eso más bien ayude a que te contraten.
Aquí también hay otro punto interesante. Cuando quedó claro que Chang no estaba abordando esta pregunta explícitamente con búsqueda binaria y valor esperado, Ballmer se esforzó bastante por apartarse de la discusión de esta pregunta exacta y redirigirla con diplomacia.
No sorprende. Ella es periodista profesional. Lo sorprendente es que a Ballmer le gustara tanto esta pregunta, como a muchos entrevistadores técnicos, que no pudiera evitar sacarla aunque no tuviera mucha relación con la pregunta de Chang.
Tengo mucha curiosidad por la solución del equilibrio de Nash
Como decía algún comentario, del lado que adivina probablemente sea algo así como devolver un número aleatorio cerca de la búsqueda binaria. Pero me pregunto si el lado que elige usa una distribución inicial uniforme o una no uniforme. Seguro que alguien en HN lo sabe o lo puede explicar.
Obviamente hay una gran brecha entre el juego de 5 números y el de 100 números. A medida que crece la cantidad de opciones, la estrategia mixta óptima podría estabilizarse o, por lo que sé, volverse cada vez más extraña. Si alguien explora bien los juegos de 6, 7 números, etc., me encantaría que me avisara.
En las demás estrategias, el candidato tiene una estrategia de adivinar el “número trampa”, y Ballmer tiene una estrategia de “no elegir el número trampa”
El candidato no puede obligar a Ballmer a hacer trampa