Carlos Rodríguez
Mi propuesta
Mi repositorio GitHub del proyecto: Click Aquí
Mi repositorio GitHub del commit del feature: Click Aquí
Mi repositorio GitHub de los cambios: Click Aquí
. .
Anexos:
César Mejias
Buen trabajo 👍
Las pantallas de carga existen porque la información no aparece al instante en una web, una app móvil o un videojuego. Cuando el front pide datos al backend mediante una solicitud HTTP, algo tiene que ocupar ese vacío visual, y aquí entra la batalla entre loading spinners y loading skeletons, dos estrategias muy distintas para mantener al usuario enganchado mientras llega la información.
¿Por qué los usuarios abandonan una página que carga lento?
Los usuarios no solo odian esperar, odian no tener el control. Si no entienden qué está pasando en pantalla, se van.
Un estudio de Google de 2017 [2:00] dejó cifras que duelen sobre el bounce rate, es decir, el porcentaje de gente que se devuelve a buscar otra opción cuando una página tarda en cargar:
Y como hoy la mayoría navega desde el celular, esos números solo empeoran. Tu contenido puede ser brillante, pero si la app no carga rápido, tus usuarios se van con la competencia antes de leerte.
¿Qué es el bounce rate? Es el porcentaje de usuarios que entran a tu página y se devuelven sin interactuar. Si tu sitio carga lento, ese número se dispara.
¿Qué hace que una pantalla de carga sea buena?
Una buena loading screen cumple tres reglas básicas que se desprenden de la idea de darle control al usuario:
La clave está en comunicar qué se está cargando, no solo que algo se está cargando.
¿Loading spinners o loading skeletons: cuál funciona mejor?
Aquí es donde se define la pelea. Cada estrategia resuelve el problema de forma muy distinta.
¿Por qué los loading spinners suelen fallar?
Un loading spinner es esa ruedita que gira infinitamente. Es fácil de implementar y se entiende rápido que algo está pasando, pero ahí termina su utilidad.
El spinner no te dice qué está cargando ni cuánto falta. Puede ser un video, un libro, una imagen, una API, lo que sea. Y cuando da vueltas demasiado tiempo, no sabes si avanza, si se cayó el internet o si la app falló. Rompe la sensación de control.
Una evolución son las loading animations con barra de porcentaje, típicas de videojuegos o actualizaciones de Windows. Funcionan ahí porque el sistema sí sabe cuánto lleva descargado. Pero en web, ese porcentaje suele ser hardcodeado, es decir, programado a mano con tiempos inventados como cinco segundos divididos en tramos. No hay forma real de saber cuánto falta para que el backend responda, así que ese 60% es, casi siempre, una mentira piadosa.
¿Qué significa hardcodear un porcentaje de carga? Significa fijar manualmente los tiempos en el código en lugar de medir el progreso real. Es común en web porque no hay forma exacta de saber cuánto falta para que responda una API.
¿Cómo funciona un loading skeleton y por qué lo usan YouTube y Platzi?
Un loading skeleton muestra la estructura HTML de la página con bloques grises en los lugares donde irán el título, el botón de suscribirte, los videos recomendados y demás elementos.
YouTube lo aplica de manual: mientras carga el canal del video, los recomendados o el botón de suscripción, te muestra rectángulos grises con una animación sutil que indica actividad [11:00]. Apenas una sección termina de cargar, aparece su contenido real, sin esperar a que el resto termine. Platzi, Facebook y Twitter usan exactamente la misma estrategia.
Esto cumple las buenas prácticas:
¿Cómo simular conexiones lentas para probar tu pantalla de carga?
Las DevTools del navegador tienen una opción de throttling en la pestaña Network [13:00] que te deja emular conexiones reales:
Al probar Slow 3G en una app sin pantalla de carga, te quedas con un HTML en blanco mientras llegan las fuentes, las categorías y luego las imágenes. Si es la primera vez que un usuario entra, ese vacío puede costarte la visita entera.
No controlas el internet de tu usuario, pero sí controlas la experiencia que le entregas durante la espera. Implementa un loading skeleton en tu proyecto, cuida que sea reconocible, tolerable y entendible, y cuéntame en los comentarios qué estrategia elegiste y por qué.
Carlos Rodríguez
Mi propuesta
Mi repositorio GitHub del proyecto: Click Aquí
Mi repositorio GitHub del commit del feature: Click Aquí
Mi repositorio GitHub de los cambios: Click Aquí
. .
Anexos:
César Mejias
Buen trabajo 👍
Franko Angel Diaz Flores
Ese momento incomodo en el ke el prosor habla de los tiempos de espera para los usuarios y se lagea el video del curso, y me dan ganas de irme a la competencia, pero luego recuerdo ke se me fue la mitad del sueldo en la suscripción y se me pasa...
Pol Valle
En ajustes del video puedes escoger entre el servidor A,B o C para mejorar la carga
Henry Alexander Velásquez Rosas
Incluso cambiando de servidor, los videos de Platzi muchas veces van lento en comparación con YouTube, donde todo carga rápido.
Jorge Arias Argüelles
loading Spinner VS loading skeletons
Good characteristics of the loading screens:
We have tow principal strategies to handle loading screens:
Christian Velázquez
A quí, les recomiendo que vayan a tomar los cursos básicos de Marketing. Porque, hablan sobre éste tema.
Sobre todo si tú, planeas hacer un E-commerce, te ayudará a comprender cuánto perderías por cada usuario que se va al no tener una carga rápida además, de la accesibilidad ( UX/UI).
Fernando Orozco Velasquez
Eso explica porque es una eternidad cuando la barrita de carga llega al 99.99% 😅
Miguel Enrique Velásquez Millán
¡Qué cool! Hasta esta clase no sabía que las "plantilla de carga" que usa youtube se llamaban Loading Skeletons, je je. · En mi caso, tras terminar el curso anterior (el práctico de consumo de apis) decidí colocarle unas pantallas de carga a mi aplicación de PlatziMovies: Específicamente un Loading Spiner bonito que entré por internet y que además tenía el mismo colorcito morado de la app 💜. Pero tras ver esto, ahora intentaré implementar un loading skeleton ya que pienso que se ve mucho más bonito, je je je, 😊. · Dejaré por aquí un ejemplo de cómo carga ahora mismo mi versión de PlatziMovies con el loading spiner que le coloqué~
Rubén Ernesto Aragón Gil
!Ey!, ¿Cómo que esas barras son mentira?
Qué tonto fui. 😪
Jonathan Guidi
Loading Skeletons == Wireframes
Tomas Arriola
Les comento un caso en donde la velocidad de carga extremadamente rápida incluso es contraproducente.
Los buscadores de vuelo, buscadores de cotizaciones de seguros y otros buscadores similares que desde nuestra perspectiva deberian analizar gran cantidad de datos para arrojarnos una respuesta, si la misma es instantanea nos da la sensación que no analizaron nada y por lo tanto la respuesta es de baja calidad. Por eso despegar, kayak, etc aumentaron el tiempo de respuesta.
Henry Alexander Velásquez Rosas
Se puso potente con el English :v
Cristian Mauricio Cavanzo Arias
Para la barra de carga con un porcentaje, se me ocurre hacer una logica en la que le pases x recursos por ejemplo la carga de 3 js, son 3 recursos y es un 100% que significa que ya esta cargado dividimos ese 100 en 3 vamos haciendo una carga lenta de 0 a en este caso 33% y cuando ya esta cargado rapidamente que lo lleve al 33% y asi por cada uno de los recursos/ peticiones
Dario Paladines
Que peeeedooo con los tiempos de carga de mi app en slow 3G 😱 terribleeee!! jajaj
Ulqernesh Karvenae
Te gano XD
Ricardo Alfonso Chavez Vilcapoma
¿Me estás diciendo que este LOADING es hardcodeado? 🤯😨
Brayan Alexis Fajardo Ortiz
Ejemplo de Loading spinner:
Jefred Bedoya
Las pantallas de carga existen porque la información no llega al instante y los usuarios odian perder el control. Si una página tarda más de 3 segundos en cargar, el Bounce Rate (abandono) aumenta drásticamente.
Principios fundamentales
Estrategias de carga