98% no es tanto
(whynothugo.nl)- Una cifra como 98% puede parecer alta para resultados excepcionales, como ganar la lotería o sacar la máxima calificación en un examen, pero puede ser insuficiente en ámbitos que deberían funcionar por defecto, como los sitios web
- En situaciones donde están en juego expectativas básicas, como un restaurante sin intoxicaciones alimentarias, un empleador que paga los sueldos a tiempo o clientes que pagan antes de irse, incluso un 2% de fallas se convierte en un daño recurrente
- Si un sitio web que usa una nueva función del navegador solo funciona para el 98% de la población, el cálculo indica que unas 150 millones de personas quedan excluidas
- “Soporte del 98% sobre la población total” puede diferir de la distribución real de visitantes; en el sitio de un cliente, entre los navegadores que lo visitaron durante el último año, el soporte de nested CSS apenas llegó a alrededor del 70%
- Si una función nueva no puede degradarse de forma elegante, un soporte del 98% no significa “ampliamente soportado”, sino un estado en el que no se cumplen las condiciones mínimas básicas para algunos usuarios
Situaciones en las que 98% no es suficiente
- El significado de 98% cambia mucho según el contexto
- Si al jugar la lotería tuvieras un 98% de probabilidad de ganar, o un 98% de probabilidad de obtener la calificación máxima en un examen, sería un resultado excelente
- Si los clientes de un restaurante solo evitaran una intoxicación alimentaria con un 98% de probabilidad, podría haber personas enfermas cada mes o cada semana
- Si un empleador solo pagara los sueldos con un 98% de probabilidad, o si los clientes solo pagaran con un 98% de probabilidad antes de salir del restaurante, sería difícil de aceptar
- En situaciones donde están en juego expectativas básicas, incluso una tasa de fallas del 2% se vuelve un gran problema
- Si un sitio web solo funciona para el 98% de las personas, no funciona para unas 150 millones
- Si un cambio en un sitio web solo funciona para el 98% de los visitantes, en la práctica equivale a echar al 2% de los usuarios existentes
Diferencia entre la tasa de soporte de navegadores y los visitantes reales
- La tasa de soporte basada en la población general puede diferir de la tasa de soporte entre los visitantes reales de un sitio
- Aunque una función funcione para el 98% de la población total, puede funcionar solo para el 70% de los usuarios reales de un sitio específico
- El caso de nested CSS muestra esta diferencia
- nested CSS es estándar desde 2023, pero en un sitio específico puede no ser correcto asumir que “se puede usar con seguridad”
- Al revisar la distribución de navegadores que visitaron el sitio web de un cliente durante el último año, cerca del 70% de esos navegadores soportaban la nueva función de CSS
- Una función que en general parece “ampliamente soportada” podía excluir al 30% de los visitantes de ese sitio
- Una ingeniería robusta se parece más a manejar con elegancia los casos excepcionales que a funcionar solo para la mayoría
- Si una función nueva no se degrada de forma elegante, un soporte del 98% deja al 2% de los usuarios sin cumplir las condiciones mínimas básicas
1 comentarios
Opiniones de Hacker News
98% muchas veces es suficiente
Si un plan de negocio solo funciona si necesariamente captura más del 98% del mercado, entonces ya es un plan fallido, y es muy probable que eso no ocurra.
Como siempre, es una cuestión de “depende del caso”. Si la base de usuarios en general no es muy técnica, quizá haya que dar soporte a navegadores de más de 10 años que ni siquiera se actualizan; pero si no es así, puede bastar con preocuparse solo por personas que usan computadoras capaces de actualizar el navegador al menos una vez al año.
Al final, el trade-off es complejidad del código y tiempo de desarrollo versus un mercado más grande, y cada empresa debe evaluarlo por su cuenta.
Se dice que “si funciona para el 98%, no funciona para unos 150 millones de personas”, pero si solo puedes cocinar para 70 personas por noche, de entrada no puedes recibir a esos 150 millones de personas sin acceso a un navegador moderno. Y quienes sí pueden usar un navegador moderno pero no lo hacen probablemente tampoco disfrutarían mucho mi comida.
Para que un restaurante sobreviva no necesita satisfacer a 8 mil millones de personas; basta con satisfacer a unas 1,000 que vuelven por aniversarios, cumpleaños y el placer de una comida creativa.
Cuando trabajaba como chef en yates, solo tenía que satisfacer a 10 personas, y usaba un enfoque en el que tripulación e invitados comían la misma comida. Como hacía las compras yo mismo en vez de depender de empresas de abastecimiento, cuando los invitados estaban a bordo durante un mes, el gasto mensual en comida bajaba de unos 30,000 dólares a 10,000 dólares. Alrededor de 2005, los ingredientes en St. Barts eran caros porque llegaban por avión todos los días desde Francia, pero gracias a eso podía servirle a la tripulación platos como chateaubriand y ossobuco.
Así que la comida equilibrada, rica en fibra y saludable que yo quería comer todos los días se convirtió en la comida que todos comían todos los días.
Hay quienes preguntan si los invitados o los dueños no decían qué querían comer cada día. El esposo era CEO de una empresa Fortune 500 y, después de retirarse, seguía siendo presidente del consejo. Era alguien que tomaba decisiones de miles de millones de dólares todos los días, y su esposa también estaba muy ocupada. Contestar cada noche cuál sería el menú era una de las cosas que menos querían hacer, así que me delegaron esa decisión. Yo siempre preparaba lo que quería comer, y siempre acertaba.
Es imposible satisfacer a todo el mundo. Mejor no intentarlo. Así uno se rompe.
Cualquiera que haya desarrollado sitios web o apps móviles sabe que hay una cantidad enorme de combinaciones de navegadores y plataformas, y que dar soporte incluso a la larga cola de configuraciones a veces es casi imposible y casi no rinde en relación costo-beneficio. Cuando antes operaba algunas webapps, también tenía una cantidad considerable de errores por plugins de navegador rotos o, a veces, maliciosos. No puedo probar mi sitio contra todas las combinaciones arbitrarias de plugins de navegador para verificar si funciona.
Al final realmente depende del caso, por eso me molesta que el artículo plantee una pauta general. Si de pronto el 2% de usuarios de Gmail no pudiera iniciar sesión, sería un incidente enorme que afectaría a decenas de millones de personas. Pero, como dice el dicho, “tú no eres Google”, y en muchos sitios pequeños de e-commerce no tiene sentido esforzarse por arreglarle algo a una persona que usa un navegador de más de 10 años. Como dijo otro comentario, de todos modos esos usuarios suelen estar entre los menos propensos a convertir en compra.
De la misma manera, si un sitio web tiene aunque sea un poco de efecto de red social, al ignorar a una parte de la población se produce una caída de usuarios mucho mayor que el porcentaje directamente afectado.
Incluso si la funcionalidad del sitio no tiene elementos sociales, todo negocio está influido por el efecto de red del boca a boca. La gente comparte las experiencias negativas mucho más que las positivas, así que si 1 de cada 50 personas siente que el sitio está roto, una parte considerable del feedback en línea se llenará de comentarios negativos, y eso dañará la reputación en todo el mercado, no solo en ese 2%.
En los negocios hay que esforzarse incluso para obtener una pequeña parte del mercado total accesible. Está bien reducir deliberadamente el mercado total accesible como una decisión estratégica para enfocarse en un mercado específico, pero excluir gente sin una buena razón no tiene sentido. Está bien que un restaurante de BBQ en Texas no tenga opciones vegetarianas porque nadie va esperando eso, pero en un restaurante generalista es tonto no tener ni algunos platos vegetarianos. Y es todavía más tonto excluir gente porque a los desarrolladores web les da flojera usar métodos que han funcionado bien durante los últimos 20 años y prefieren usar tecnologías nuevas y brillantes.
Por ejemplo, Uber, sitios web relacionados con visas e inmigración, o sitios de reserva de aerolíneas de bajo costo.
Claro que normalmente no es tan extremo, pero hay que considerarlo. La mala reputación se propaga más rápido que la buena.
Y si algo ya tenía soporte, basta con no romperlo. Por lo general eso es más fácil que hacerlo funcionar desde cero.
Este año, después de Navidad, estaba quitando el árbol de la sala, y al moverlo se cayeron agujas por todas partes. Barrí, pero en la primera pasada se me escaparon varios lugares, y aun en la segunda quedaron algunas.
En ese momento me cayó el veinte de que eliminar más del 99% de las agujas no es para nada suficiente. Creo que muchas tareas de limpieza son así, porque incluso una suciedad muy pequeña se nota visualmente. De hecho, mientras más te acercas al 100%, más resalta la suciedad que queda.
Estoy de acuerdo con la idea general, pero el problema aquí no es que los desarrolladores no estén familiarizados con la estadística, sino el simple hecho de que la mayor parte de todo esto gira en torno a los ingresos
La semana pasada intenté comprar boletos para un evento y la única vía oficial era Ticketmaster. Obligaban a verificar la cuenta con un número de teléfono, pero el proveedor de mensajería que usan no pudo entregar el código a mi número. Probé también con algunos números que tengo en casa, pero todos fallaron
Al buscar, encontré muchas personas con el mismo problema, así que claramente era un problema conocido, pero en la práctica no había nada que pudiera hacer. Para ellos es un cálculo simple. Otro proveedor de SMS que cubra mi pequeño país de la UE podría ser más caro. Quizá también intentan evitar a estafadores que en el pasado abusaron de mi operador móvil. Sea lo que sea, probablemente el costo de solucionarlo sea mayor que la pérdida por boletos no vendidos
A menos que una entidad gubernamental los obligue, les importa muy poco si puedo ver ese evento o no
Hay un punto en el que la tecnología se convierte en la base de la participación social. En ese momento debe regularse para que esté disponible para todos
Esa actitud nace del privilegio de nunca haber sido parte de ese 2% de usuarios. Es fácil pensar así hasta que un día nosotros pasamos a ser ese 2% y quedamos fuera del sistema
Cuando desarrollaba una app para iOS, me molestaba constantemente que el líder técnico y gestión de producto insistieran en soportar solo la versión principal actual del sistema operativo y la inmediatamente anterior. Los ingenieros pasaban tiempo eliminando soporte para iOS X-2 en lugar de corregir bugs, mejorar rendimiento o desarrollar funciones. Era código que no impedía refactorizar, no tenía bugs especialmente frecuentes y no dañaba la arquitectura. A mis ojos era simplemente hostigar a los usuarios, y no lo entendí entonces ni lo entiendo ahora
Ahora uso un teléfono de hace 8 años y, cómo no, más o menos la mitad de las apps de la App Store ya no funcionan por esa actitud. Así que ahora sí parece claro que estoy dentro de ese 2%
El punto más amplio es que los porcentajes pueden ser engañosos. Por eso se usan tanto de esa forma y hacen que las cosas se vean mejor
Por lo general, una forma más precisa es usar notación de razón de probabilidades, como “1 de cada 50 personas”, en lugar de 98%. Los porcentajes tienen una especie de singularidad en los extremos, y pequeños cambios numéricos pueden implicar grandes diferencias en la realidad. Pasar de una tasa de éxito del 98% al 99% suena como poca cosa, pero significa que las fallas se reducen de 1 de cada 50 personas a 1 de cada 100. El efecto se duplicó
SPF es un caso así. SPF 30 deja pasar 1/30 de la radiación UV, es decir, 3%, y bloquea 29/30, es decir, 97%. SPF 50 deja pasar 1/50, es decir, 2%, y bloquea 49/50, es decir, 98%. En este caso, expresarlo con el denominador muestra el efecto de forma mucho más intuitiva
Comparar SPF 30 y 50 muestra mejor el aumento del efecto que comparar 97% y 98%
También podría expresarse como cantidad que pasa, pero se llama Sun Protection Factor, no Sun Transparency Factor
Pero hay casos en los que una pequeña diferencia en los extremos también es pequeña en la práctica. Sobre todo en el valor esperado. Por ejemplo, considera recibir 100 dólares con 98% de probabilidad frente a recibir 100 dólares con 99.9% de probabilidad
El valor esperado del segundo caso es apenas un poco mayor que el del primero. La diferencia es de 1.90 dólares: 99.9 dólares menos 98 dólares. En cambio, la diferencia en odds es enorme. (0.999/0.001)/(0.98/0.02)≈20.39. Es decir, una probabilidad de 99.9% tiene odds de 999 a 1, y una probabilidad de 98% tiene odds de 49 a 1, así que la primera es más de 20 veces mayor, pero la ganancia esperada es casi la misma
Artículo relacionado: Science is a strong-link problem
https://news.ycombinator.com/item?id=35712694
Algo como la lotería es un problema de enlace fuerte. El valor del sistema equivale al valor del enlace más fuerte. La seguridad alimentaria es un problema de enlace débil. La seguridad de una comida la determina el bocado menos seguro
El autor parece defender un criterio de enlace débil para CSS. Es decir, importa más lo que ve la mayoría, y uno o dos grandes éxitos no compensan los fracasos
Me recordó la canción de Meat Loaf “Two Out of Three Ain’t Bad”. En Japón se lanzó con un título como 66%の誘惑, “66% is Good Enough” https://www.discogs.com/release/8303076
Creo que hay dos grandes tipos de problemas: los que permiten obtener crédito parcial y los que no
El ejemplo del restaurante pertenece a los que no permiten crédito parcial. Que el 98% de la comida sea segura no basta; o es todo o no sirve. Lo mismo ocurre con el pago de sueldos a empleados: o es completo o se vuelve un gran problema. Perderse un solo pago de nómina ya es un problema enorme
Pero el CSS de un sitio web sí puede recibir cierto crédito parcial. Aunque no sea perfecto, en teoría puede aportar algo de valor
Al medir un porcentaje de “finalización”, es realmente importante saber qué tipo de problema estás tratando
Me viene a la mente una estadística según la cual la mayoría de los clientes deja de ir a cierto supermercado si ya no vende algunas de las cosas que quieren
Dejar de ofrecer una marca de crema de chocolate puede parecer algo menor, pero si por eso un cliente tampoco compra en esa tienda otros 12 productos de despensa que necesita, que los productos discontinuados sean solo el 2% del total no significa mucho. La composición de productos de un supermercado es estable no porque nadie cree productos nuevos, sino porque incluso cambios en un porcentaje pequeño molestan a los clientes
Si no puedo hacer un pedido en un sitio web, ya no sigo intentando. Puede que la semana siguiente el navegador ESR se actualice y funcione, pero para entonces ya no voy a hacer clic en ese enlace en los resultados de búsqueda
Parte del problema es que los sitios web del gobierno de Estados Unidos y del Reino Unido usan la “regla del 2%” y oficialmente solo dan soporte al 98%
Hace 3 años se decía que la cuota de Firefox, de 2.2%, se estaba acercando al riesgo de dejar de estar soportada en sitios web gubernamentales, y ahora bajó a 1.9%
https://news.ycombinator.com/item?id=36776603
Según https://analytics.usa.gov/, “hubo 1,660 millones de sesiones en los últimos 30 días”. Si el cálculo es correcto, el 2% son 33 millones de sesiones
No me gusta tratar a las personas como números
98% no es ni mucho ni poco. Simplemente es incorrecto
Si yo soy parte de ese 2%, para mí eso lo es todo. Puede haber una razón válida por la que estoy dentro de ese 2%. Y una actitud de que eso no importa puede estar mal
Creo que un sitio web que funciona solo para el 2% de las personas por las razones correctas es mejor que un sitio web que no funciona para el 2% por las razones equivocadas