¿Por qué la app de Oral-B para iOS pesa casi 300 MB? ¿Y por qué la app de Colgate es aún más grande?
(twitter.com/emergetools)- De los 290 MB de la app de Oral-B para iOS, 233 MB provienen del asset catalog, y la mayor parte del tamaño de la app la ocupan recursos PDF para varios modelos de cepillos dentales
- El recurso más grande de Oral-B es
Sonos_M9_rose, con 7.8 MB, y muchos PDF contienen solo el mango y los botones del cepillo, no el cepillo completo Comino.bundleincluye archivos como20class_seqlen26_6p5h_20200302-095627_comino_android_production, que parecen ser pesos de modelo- La app Colgate Smile es más grande, con 378 MB, y los principales factores de su tamaño excesivo son el framework de Unity de 125 MB y símbolos binarios que no fueron eliminados
- Colgate incluye de forma duplicada 60 MB de recursos y archivos de localización en el bundle principal y la extensión del widget, por lo que al menos 120 MB aumentan el tamaño de la app sin aportar valor funcional
La mayor parte del tamaño de la app de Oral-B proviene de recursos PDF
- La app de Oral-B genera 233 MB del asset catalog de un total de 290 MB
- Equivale al 80% del tamaño total
- La mayor parte corresponde a recursos PDF que representan distintos modelos de cepillos dentales
- El recurso PDF más grande es
Sonos_M9_rose, con 7.8 MB - Muchos PDF no incluyen la imagen completa del cepillo, sino solo el mango y los botones
- Otro elemento llamativo es
Comino.bundlede 15 MB- Incluye archivos como
20class_seqlen26_6p5h_20200302-095627_comino_android_production - Esos archivos parecen ser algún tipo de pesos de modelo
- Incluye archivos como
El problema mayor de Colgate Smile es un tamaño inflado que se puede reducir
- La app Colgate Smile pesa 378 MB
- Parece que la app usa Unity por la función de “guided brushing”
- El framework de Unity pesa 125 MB
- Si esa función aporta valor, usar Unity en sí puede verse como una decisión razonable
- Un desperdicio mayor es que en la app de producción no se eliminaron los símbolos binarios
- Los símbolos binarios se usan para la simbolicación
- Si se sube el DSYM al sistema de reporte de fallos, no hace falta incluirlos dentro de la app de producción
- Solo con eliminar los símbolos binarios se pueden reducir aproximadamente 60 MB, o 15% del total
- Otro factor de tamaño excesivo es la inclusión duplicada
- Colgate incluye de forma duplicada 60 MB de recursos y archivos de localización en el bundle principal y la extensión del widget
- Los nodos rojos indican los elementos duplicados
- En la app de Colgate, se calcula que al menos 120 MB del tamaño no aportan ningún valor funcional al usuario
- Artículos relacionados:
1 comentarios
Opiniones de Hacker News
No entiendo por qué existen siquiera las apps de Oral-B y Colgate
Personalmente la probé una vez y la borré, pero puede ser útil para quienes quieren comprobar si su cepillado es eficiente. En todo caso, es totalmente opcional, y puedes ignorar que existe la app y usar solo el cepillo
Así se siente más familiar que otras marcas “desconocidas” y aumenta la probabilidad de que compres esa marca. Con las apps pasa lo mismo: cada vez que las usas te ponen el logo y la marca frente a los ojos. En conclusión, ni siquiera necesitan vender los datos
La triste realidad es que, si vas a App Store > Your Account y actualizas, las apps de menos de 100 MB se cuentan con los dedos de una mano. En mi caso, la mayoría de las apps pesan 300 MB, y eso hablando solo de actualizaciones
Al compararlo con Android, ahí las apps son mucho más livianas. Las apps antiguas en Objective-C eran mucho más esbeltas, pero las apps en Swift siguen siendo grandes y pesadas incluso después de la ABI. Parte de la culpa es la flojera de los desarrolladores, y parte también las herramientas deficientes de Apple. No hay tree shaking ni eliminación de código muerto en CocoaPods compilados o paquetes Swift. A Apple no parece importarle mucho, y hasta podría agradarle vender dispositivos nuevos con más almacenamiento o suscripciones a iCloud
Recursos, arquitecturas e idiomas se descargan solo cuando hacen falta, y se incluyen incluso elementos específicos por área, como formatos de compresión de texturas para assets de juegos. Así el dispositivo recibe solo las texturas necesarias, y el desarrollador puede distribuir en varios formatos para que el usuario reciba la mejor opción compatible con su dispositivo. También es posible descargar e instalar módulos de código bajo demanda. Por ejemplo, puedes separar el flujo de registro en un módulo, instalarlo al principio y, después de que el usuario se registre, eliminarlo para reducir el tamaño de instalación. Un desarrollador hacía que un módulo VOIP de unos pocos MB para soporte al cliente no se descargara ni instalara realmente hasta que el usuario abriera la pantalla de soporte, por lo que la mayoría de los usuarios nunca lo instalaba
[0]: https://developer.android.com/guide/playcore/asset-delivery/...
https://xcancel.com/emergetools/status/1828490449881047401
Parece una página intermedia de spam de esas que aparecen cuando intentas ver streaming ilegal. Es una herramienta horrible, al punto de que cuesta creer que alguien sin relación con ese sitio haya publicado esto
Me molesta que recopilar datos de usuarios para brokers de datos se haya vuelto un negocio tan valioso. No puedo alegrarme al ver que las grandes empresas siguen creando apps que extraen datos en vez de buenos productos y que sus métricas suben
Viendo que ya estoy quejándome con un “antes todo era mejor”, supongo que oficialmente ya pasé la mediana edad, pero ¿apps para refrigeradores, lavavajillas y cepillos de dientes? Cuando llegue el día en que el lavavajillas se cargue solo con los platos, ahí quizá acepte el ajuste hedónico de precios
¿Al final solo metieron imágenes de distintos modelos en PDF absurdamente grandes? No era lo que esperaba. Pensé que sería algo como la app de Colgate que aparece más adelante
La app de Oral-B hace unos años era bastante liviana, mostraba un feed con las noticias mundiales más recientes, registraba datos en Apple Health y hacía divertido mantener rachas de cepillado
Pero reescribieron toda la app, perdió casi todas sus funciones, y no la he vuelto a abrir desde el primer inicio después de la actualización. Me gustaría que existiera una iOS App Store que permitiera instalar versiones anteriores, como TestFlight. Por desgracia, incluso TestFlight solo dura hasta 90 días. Quizá ya sea hora de sacar un sniffer BLE, aunque conseguir permisos de HealthKit para una app temporal no autorizada de un solo uso parece imposible
Más vergonzoso que el tamaño en sí es que se necesite una app para cambiar los modos del cepillo de dientes. Creo que eso realmente no debería permitirse, aunque no sé bien cómo habría que hacerlo cumplir.
La pantalla muestra el temporizador del tiempo de cepillado, y ese nivel de seguimiento en el cepillo es suficiente. Puede que haya otros modos a los que no se pueda acceder con botones, pero yo no conozco ninguno.
La segunda tarea es definir con precisión qué se permite y qué se prohíbe, pero como hay demasiadas estupideces que las empresas pueden imaginar para fastidiar a los clientes, creo que se le podría dar a una agencia así una discrecionalidad bastante amplia si evalúa y decide con base en buenos principios centrales. Por ejemplo, un principio como “las funciones que pueden implementarse sin una app complementaria no deben exigir una app complementaria”.
La verdadera pregunta es por qué, para empezar, se necesita una app para un cepillo de dientes.
Todo esto ocurre bajo el paraguas del “consentimiento”, porque probablemente instalaste la app y aceptaste los términos de servicio o la política de privacidad. También se presenta como un servicio que cuenta el momento o la frecuencia con que interactúas con el producto, o que te recuerda usarlo. Aunque cualquier adulto que viva normalmente ya hacía eso, solo que con menos precisión.
Si los datos muestran que en cierta ciudad o condado la gente se cepilla los dientes entre 25% y 50% menos que la población general, tendría bastante sentido aumentar el gasto publicitario en esa zona. Se podría asumir que quienes no se cepillan bien tienen más probabilidades de comprar chicles dentales para compensar el daño.
Versión desplegada: https://unrollnow.com/status/1828490449881047401
¿Por qué una persona cuerda descargaría una app para un cepillo de dientes?