Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Web a Toda Velocidad

Web a Toda Velocidad

Alfredo Bonilla

November 02, 2019
Tweet

More Decks by Alfredo Bonilla

Other Decks in Programming

Transcript

  1. ¡Hola! Soy Alfredo Bonilla Desarrollador Web en Gorilla Logic. Colaborador

    en GDG Pura Vida y Angular Costa Rica. Quejas y sugerencias: @brolag
  2. ¿Por qué la velocidad importa? 1 segundo de atraso en

    la carga inicial de un sitio móvil puede impactar las tasas de conversión en 20%
  3. ¿Por qué la velocidad importa? • Pinterest aumentó el tráfico

    del motor de búsqueda y la cantidad de registros en un 15 % cuando redujo el tiempo de espera percibido en un 40 %. • La BBC determinó que perdía un 10 % adicional de usuarios por cada segundo adicional que el sitio tardaba en cargarse.
  4. Performance Budgets Un presupuesto de rendimiento es un conjunto de

    límites impuestos a las métricas que afectan el rendimiento del sitio.
  5. Métricas • Tamaño máximo de imágenes • Número máximo de

    fuentes web • Tamaño máximo de scripts, incluidos los frameworks • Total de recursos externos, como scripts de terceros.
  6. First Contentful Paint FCP mide cuánto tiempo tarda el navegador

    en procesar la primera parte del contenido DOM después de que un usuario navega a su página.
  7. Time To Interactive • La página muestra contenido útil, que

    se mide con FCP. • Los controladores de eventos están registrados para la mayoría de los elementos de página visibles. • La página responde a las interacciones del usuario en 5 segundos.
  8. Optimización de Imágenes • Use Imagemin para comprimir imágenes •

    Reemplace los GIF animados con video para cargas de página más rápidas • Use lazysizes para cargar imágenes de manera diferida • Sirva imágenes responsivas • Sirva imágenes con las dimensiones correctas • Utilice imágenes de WebP • Use un CDN
  9. Reemplazar GIF por Video • Se reproducen de forma automática.

    • Se repiten continuamente (por lo general, pero es posible evitarlo). • Están en silencio.
  10. Optimización de JavaScript • Aplique el patrón PRPL • Precargue

    los elementos críticos para mejorar la velocidad de carga • Reduzca las cargas útiles de JavaScript con división de código • Elimine el código no utilizado • Minimice y comprima las cargas útiles de la red • Sirva código moderno a navegadores modernos
  11. Patrón PRPL • Push (or preload) the most important resources.

    • Render the initial route as soon as possible. • Pre-cache remaining assets. • Lazy load other routes and non-critical assets.
  12. Optimización de CSS • Diferir el código CSS no crítico

    • Minificar el código CSS • Extraer el código CSS crítico
  13. Fuentes • Web.dev ◦ https://web.dev/fast/ • ¿Por qué es importante

    el rendimiento? ◦ https://developers.google.com/web/fundamentals/performance/why-p erformance-matters • Speed Essentials: Key Techniques for Fast Websites (Chrome Dev Summit 2018) ◦ https://youtu.be/reztLS3vomE