Pero también estás sujeto en las aplicaciones que construyes a toda una serie de factores externos incluyendo, por ejemplo, redes. La conclusión es la que miraría aquí, que es decir que este es el percentil 25 en esta distribución, piénsalo como si fuera P75, dale la vuelta en tu estimación, el 25 por ciento de las conexiones de red son peores que esto, y el sistema de análisis bastante bueno de Cloudflare aquí estima que eso te está dando entre siete y nueve megabits por segundo de bajada. Siete a nueve megabits por segundo de bajada es peor que la mayoría de las conexiones de internet satelital. Esto no cuenta RTT, creo que RTT está en P75, situándose alrededor de 100 milisegundos. No sé si has hecho esto últimamente, pero puedes recorrer la mayor parte del mundo con ping con un par de paquetes en 100 milisegundos. Entonces, en esa condición de red, ¿qué estamos haciendo? ¿Qué ha elegido hacer nuestra comunidad? Bueno, estamos enviando muchas cosas por el cable.
Hace diez años, eso era 1.2 megabytes en total, comprimido, potencialmente, si estás comprimiendo, pero la transferencia total para la mayoría de los sitios web en el percentil 50 a móvil, y hoy, es 2.7 megabytes. Así que hemos más que duplicado el tamaño de la carga útil promedio de un sitio web en el percentil 50, y JavaScript también está haciendo números. Así que hoy, perdón, en 2016, eso habría sido 310 kilobytes de esa carga útil de 1.2 megabytes habría sido JavaScript, que sin comprimir es una gran cantidad de JavaScript. Solo quiero ser muy claro. Puedes hacer un montón de cosas en 300K de JavaScript, y estábamos enviando eso en el percentil 50. ¿Verdad? En P75. Y hoy, estamos enviando tres cuartos de megabyte de JavaScript a usuarios móviles, y la mitad de los usuarios reciben al menos eso o más.
Entonces, ¿cómo se ve en la cola? Bueno, solía ser 850K, pero realmente hemos perdido todo control. Ahora es más de 2.1 megabytes. Sin comprimir, esperaríamos 2.1 megabytes. Si es gzip, serían de 5 a 7 megabytes. Es más que eso. ¿Qué estás haciendo con 7 megabytes de JavaScript? ¿Lo sabemos? ¿Entendemos lo que estamos haciendo con 7 megabytes de JavaScript? ¿Tenemos un entendimiento de lo que realmente hay allí? Creo que no. Y creo que para entender lo que esto significa para nosotros, tenemos que entender cómo llegamos aquí. Creo que todos en esta sala están aquí porque todos estamos dedicados a exactamente lo mismo. Queremos mejores experiencias de usuario. ¿Verdad? ¿Sí? ¿Sí? Bien. No estoy hablando con la audiencia equivocada. Genial. Eso es bueno. Y para lograr eso, decidimos que íbamos a hacer un intercambio. Íbamos a aceptar mucha complejidad, porque los navegadores no eran muy buenos, y la tendencia era en 2008, 9, 10, 11, que las CPU se estaban volviendo mucho más rápidas y las redes eran mucho más predecibles y rápidas, y que íbamos a tener más margen de maniobra en el lado de JavaScript, aunque los motores de los navegadores no necesariamente estaban al día. Así que pusimos JavaScript en el camino crítico, porque era lo que podía darnos lo que no podíamos obtener de otra manera, que era decir, mejores navegadores.
Comments