Front-End Observability Explained

This ad is not shown to multipass and full ticket holders
JSNation US
JSNation US 2025
November 17 - 20, 2025
New York, US & Online
See JS stars in the US biggest planetarium
Learn More
In partnership with Focus Reactive
Upcoming event
JSNation US 2025
JSNation US 2025
November 17 - 20, 2025. New York, US & Online
Learn more
Bookmark
Rate this content

¿Alguna vez has tenido esa sensación de hundimiento cuando tu aplicación favorita de repente deja de funcionar? No estás solo. Los equipos de frontend se centran en el rendimiento del lado del cliente para mejorar la experiencia del usuario, donde los clientes pasan tiempo y se genera ingresos. Herramientas como RUM y Synthetic Monitoring ayudan, pero están desactualizadas y no son suficientes. Di hola a Frontend Observability, un enfoque holístico y de extremo a extremo para investigar errores y latencias.

This talk has been presented at JSNation US 2024, check out the latest edition of this JavaScript Conference.

Yash Verma
Yash Verma
24 min
21 Nov, 2024

Comments

Sign in or register to post your comment.
Video Summary and Transcription
¡Hola a todos! Mi nombre es Yash Varma, y soy ingeniero de software e investigador en computación. Soy un entusiasta de open telemetry, trabajando en la creación de un marco de observabilidad neutral para proveedores. La charla de hoy se titula Observability Matters, esta vez para frontend. Cubriremos la evolución de ZEP, la comprensión de la observabilidad, el estado actual de las herramientas de monitoreo de frontend, la esencia central de la observabilidad de frontend y la dirección de la observabilidad de frontend. La observabilidad se trata de entender lo que está sucediendo dentro del sistema basado en su comportamiento interno o salida. Los desarrolladores de frontend a menudo carecen de observabilidad en comparación con los desarrolladores de back end. Synthetic monitoring y real user monitoring son dos herramientas comunes utilizadas por los desarrolladores de frontend. La observabilidad de frontend nos permite entender el rendimiento de la aplicación para diferentes usuarios y situaciones, conectando los puntos y obteniendo información sobre los core web vitals y las sesiones de usuario. Es hora de adoptar la observabilidad como una cultura y romper los silos entre frontend y back-end para comprender mejor toda la experiencia del usuario.

1. Introduction to Observability

Short description:

¡Hola a todos! Mi nombre es Yash Varma, y soy ingeniero de software e investigador en informática. Soy un entusiasta de la telemetría abierta, trabajando en la creación de un marco de observabilidad neutral para proveedores. Comencemos con la charla de hoy.

Así que, hola a todos. Mi nombre es Yash Varma. Soy ingeniero de software e investigador en informática. Normalmente hablo sobre todo lo relacionado con la observabilidad, desde el rendimiento del backend hasta las bases de datos, y esta vez, frontend. Me llamo a mí mismo un entusiasta de la telemetría abierta, porque si no estás familiarizado con lo que es la telemetría abierta, en resumen, es un proyecto bajo CNCF que tiene como objetivo crear un marco de observabilidad neutral para proveedores para logs, métricas, trazas y muchas señales que añadiremos en el futuro. Si estás interesado, ve y échale un vistazo. Más sobre esto más adelante en la charla. Cuando no estoy involucrado en tecnología, generalmente disfruto cocinando y haciendo senderismo. Este es mi lindo perro. Su nombre es Ty, y sí, soy amante de los perros. Así que, entremos en la charla.

2. Observability Matters for Frontend

Short description:

La charla de hoy se titula Observability Matters, esta vez para frontend. Cubriremos la evolución de ZEP, la comprensión de la observabilidad, el estado actual de las herramientas de monitoreo de front-end, la esencia central de la observabilidad de front-end y la dirección de la observabilidad de front-end.

Entonces, la charla de hoy se titula Observability Matters, esta vez para frontend. ¿Emocionados? Así que, esta será nuestra agenda para hoy. Será bastante sencillo. Primero, comenzaremos con la evolución de ZEP en las últimas décadas. Luego pasaremos a entender el qué y el porqué de la observabilidad. Luego veremos el estado actual de las herramientas de monitoreo de front-end y sus desafíos. Luego la esencia central. ¿Qué es exactamente la observabilidad de front-end y por qué es importante para nosotros? Por último, veremos la dirección de la observabilidad de front-end. Así que vamos a sumergirnos. Sumergirnos.

3. Beyond Assumptions: A Shift in My Perspective

Short description:

Comencemos con una buena historia de cómo me adentré en el front-end y cómo está relacionado con mis observabilidades de front-end. En 2019, estaba explorando la tecnología por primera vez y dependía de publicaciones en blogs y comunidades tecnológicas. Aprendí lo básico de HTML, CSS, JavaScript y React. Sin embargo, durante mi pasantía en una startup de entrega de alimentos, me di cuenta de que el desarrollo de front-end no es fácil. Cada pequeño cambio en la interfaz de usuario podría desencadenar comentarios de los usuarios y tickets de soporte. El front-end es el primer punto de contacto con los usuarios y donde se forma la percepción de calidad. Nuestros errores como desarrolladores de front-end son visibles para todos de inmediato.

Entonces, es hora de historias, ¿verdad? Comencemos con una buena historia de cómo me adentré en el front-end, y cómo está relacionado con mis observabilidades de front-end. Así que, comencemos.

Veo esta historia, y su título es Beyond Assumptions, A Shift in My Perspective. Así que, era 2019. Estaba en mi universidad. Estaba explorando el vasto mundo de la tecnología por primera vez. Y como muchos de los estudiantes, dependía de publicaciones en blogs y comunidades tecnológicas que me rodeaban para saber cómo debería comenzar mi viaje tecnológico. Sin embargo, el consejo era casi el mismo en todas partes. Comienza con HTML, CSS, JavaScript, y luego aprende lo básico de React porque, ya sabes, el front-end es fácil, decían, y el back-end es donde estaba el prestigio.

Así que, ya sabes, aprendí eso. Y acepté eso en mi viaje inicial. Pronto, obtuve una oportunidad de trabajo que iba a desafiar todas mis suposiciones previas. ¿Y la mejor parte? Estaba completamente inconsciente de eso. ¿Qué había para mí en el futuro?

Así que, esta fue una pasantía en una de las startups de entrega de alimentos más grandes del país. Mi rol estaba en el equipo de front-end, y era responsable de gestionar y construir interfaces que millones de usuarios usarían a diario. Pero en mi tiempo libre, siempre intentaba involucrarme con los desarrolladores de back-end. Porque necesitaba aprender de ellos cómo trabajaban. Pensaba que el back-end era el mundo definitivo para mí en el viaje de desarrollo, así que, ¿por qué no ser parte de ello de alguna otra manera? Porque hablaban de escalabilidad, sistemas distribuidos y rendimiento. Lo ves. Cosas que estaban muy fuera de mi alcance en ese momento. Además, esta fue la primera vez que vi cómo estas personas eran capaces de gestionar y vigilar eficientemente todo su sistema.

Así que pronto, la realidad me golpeó fuerte. Justo después de unos meses en mi pasantía, me di cuenta de que el desarrollo de front-end no era tan fácil como esperaba que fuera. Cada pequeño cambio en la interfaz de usuario, cada ajuste en una función de JavaScript podría desencadenar una cascada de comentarios de los usuarios. Un simple diseño o ajuste puede llevar a una avalancha de tickets de soporte enojados. A veces, incluso los usuarios recurrían a las redes sociales para expresar su frustración cuando las cosas no funcionaban bien para ellos. Y todo eso estaba sucediendo en tiempo real, con cientos y miles de clientes haciendo pedidos, ya sabes, como todos los días. Con el tiempo, quedó claro que el front-end es el primer punto de contacto entre el producto y sus usuarios. Es donde las empresas se encuentran con sus usuarios, y es donde se forma la percepción de velocidad, fiabilidad, calidad, y lo más importante, es donde se genera el ingreso. Así que nosotros, como desarrolladores de front-end, tenemos un desafío único porque a diferencia del back-end, a diferencia de los desarrolladores de front-end, nuestros errores son visibles para todos de inmediato.

4. La Complejidad de la Web Moderna y la Observabilidad

Short description:

A veces tenemos que lidiar con errores cometidos sin saberlo por los usuarios, particularmente con las extensiones del navegador. La web ha evolucionado hacia un ecosistema complejo con aplicaciones que se ejecutan en el navegador, dependiendo de frameworks, bibliotecas, APIs y microservicios. Esta complejidad exige una vigilancia y mantenimiento constantes. La observabilidad se trata de entender lo que está sucediendo dentro del sistema basado en su comportamiento interno o salida. Es como escuchar el ruido del ventilador de una vieja PC al jugar un juego que consume mucha memoria, indicando que algo inusual está sucediendo dentro. Para los desarrolladores de front-end, la observabilidad puede ser un desafío.

Y la parte divertida, a veces a menudo tenemos que lidiar con los errores que son cometidos sin saberlo por los usuarios. ¿Alguna idea? Son nuestros, ya sabes, como amigos desconocidos, la extensión del navegador, si sabes, sabes.

Así que retrocedamos un momento y consideremos cómo la web ha evolucionado con el tiempo. En los primeros días, la web era bastante simple en muchos aspectos. Una página web simple involucraba contenido estructurado en HTML2, algo de estilo básico y un poco de JavaScript para la interacción. Era fácil de entender y las cosas parecían manejables. Pero esa no es la web que conocemos hoy.

La web de hoy es un mundo diferente en sí mismo. Uno que ha crecido hasta convertirse en un ecosistema complejo. Ya no solo tenemos páginas estáticas y agregamos JavaScript ocasionalmente. La web moderna se trata de construir una aplicación completa que se ejecuta en el navegador para millones de usuarios en una barra lateral completa. Junto con el código de la aplicación, a menudo tenemos que trabajar con varios frameworks y bibliotecas como React, Vue, Angular que nos ayudan a gestionar el estado y las interfaces de usuario dinámicas. A menudo dependemos de APIs, microservicios, una función serverless para proporcionar los datos de nuestro backend. ¿Y cuál es el resultado? Una interfaz de usuario más interactiva, pero tan complicada bajo el capó.

Esta evolución ha creado, creo, una paradoja porque la web se ha convertido en un lugar más hermoso un lugar más capaz y más atractivo que nunca. Pero esta belleza viene con una mayor complejidad. La web minimalista, fácil de gestionar, se ha ido y ha sido reemplazada por una arquitectura de front-end compleja que exige una vigilancia y mantenimiento constantes.

Así que esto nos lleva al corazón de la discusión de hoy, la observabilidad. Pero, ¿qué significa exactamente? Así que ya sabes, veamos cómo la teoría de control lo define. La observabilidad es algo así como la observabilidad se trata de poder entender lo que está sucediendo dentro del sistema basado en su comportamiento interno o basado en su salida. Bien, esto es lo que dice la teoría de control. Pero si no estás familiarizado, ¿qué es la teoría de control? O si es la primera vez que escribes la palabra observabilidad, no te preocupes, es completamente normal. Aquí hay una manera simple en que se lo expliqué a mis hermanos menores. Imagina que decides jugar un juego intensivo de memoria o GPU en una vieja PC o quizás intentar hacer algo más como edición de video o incluso ver un video en 8k en eso. Así que tan pronto como presionas iniciar, notarás que tu PC para un ventilador de repente gira a una velocidad muy rápida, produciendo un ruido fuerte. A veces el sistema incluso podría fallar y apagarse de manera inesperada. Así que cuando el ventilador acelera y escuchas el ruido, sabes que algo inusual está sucediendo dentro de tu PC. Este escenario ilustra perfectamente la observabilidad a algún nivel porque ya sabes, cómo puedes entender el estado interno de tu sistema como un alto uso de GPU o ya sabes, observando su salida, como el ruido del ventilador o el sobrecalentamiento, y a veces fallos del sistema. Así que podemos decir que es la capacidad de decir, dado este comportamiento, qué está sucediendo dentro. Pero aquí es donde las cosas se complican para los desarrolladores de front-end.

5. Observability Challenges for Frontend Developers

Short description:

Los desarrolladores de front-end a menudo carecen de observabilidad en comparación con los desarrolladores de back-end. Unimos múltiples herramientas para obtener visibilidad, pero cada herramienta solo proporciona una imagen parcial. Cuando un usuario informa un error, puede ser un proceso tedioso diagnosticarlo y solucionarlo. Los desarrolladores de back-end tienen un proceso optimizado con acceso a registros y métricas detalladas, mientras que los desarrolladores de front-end a menudo sienten que están ensamblando un coche mientras conducen por la autopista. Necesitamos mejor visibilidad en nuestros sistemas.

Al igual que el back-end, su observabilidad a menudo es una parte integrada del flujo de trabajo. Nosotros, los desarrolladores de front-end, no estamos acostumbrados a usar la palabra observabilidad en primer lugar. Para nosotros, parece algo así, y a menudo intentamos unir múltiples fuentes como soluciones para intentar lograr una apariencia de visibilidad de lo que está sucediendo en nuestro sistema. A menudo usamos herramientas como monitoreo de errores, alertas, repeticiones de sesiones, métricas, monitoreo sintético, monitoreo serial, registros y todo lo que puedas imaginar.

Así que ya sabes, esto está bien. Pero donde cada herramienta da una parte de una imagen pero nunca la historia completa, tienes que ver. Por ejemplo, cuando un usuario informa un error, es realmente un proceso directo. El equipo de atención al cliente a menudo escalará el problema diciendo algo como, esta función no está funcionando para este grupo de usuarios. Pero recuerda, reconocer el problema no siempre es fácil. Así que pedimos una captura de pantalla o registro de consola y más detalles tratando de recrear el problema en nuestro propio entorno. A veces es un proceso tedioso lleno de idas y venidas que puede frustrar rápidamente incluso al desarrollador más apasionado, si tienen que hacerlo regularmente.

Así que si lo comparas con el mundo del back-end, es como comparar un rompecabezas fragmentado con una imagen completa. Algunos ingenieros tienen acceso a los registros detallados, datos recopilados, trazas distribuidas, métricas, registros, alertas de eventos, lo que sea, y todos ellos se unen en un solo flujo. Pueden rastrear cierto comportamiento del usuario cada vez que se activa una alerta, identificando dónde la solicitud se ralentizó o incluso falló. Eventualmente tienen un conjunto completo de herramientas para verlo todo, lo que facilita diagnosticar y solucionarlos. Pero para los desarrolladores de front-end, parece que, mirando a los de back-end, parece mirar un paraíso desde una cerca. El lado del back-end parece tener, ya sabes, como todo, un proceso optimizado, métricas claras, la capacidad de profundizar en los más mínimos detalles. Pero para nosotros, es como ensamblar un coche mientras conduces por la autopista. Y aquí es donde creo que nosotros, los desarrolladores de front-end, nos hemos quedado atrás en obtener una visibilidad de extremo a extremo en nuestro sistema en cierto sentido. Pero el césped parece más verde del otro lado, diría yo.

6. Tools for Frontend Developers

Short description:

El synthetic monitoring y el real user monitoring son dos herramientas comunes utilizadas por los desarrolladores de front-end. El synthetic monitoring permite experimentos de control, pero no puede replicar el comportamiento impredecible de los usuarios reales. El real user monitoring rastrea las interacciones reales de los usuarios en un sitio y proporciona datos valiosos sobre el tiempo de carga de la página, el rendimiento de la red y el tipo de dispositivo. Sin embargo, RUM tiene sus desafíos, como proporcionar una visión general sin un contexto más profundo y posibles conflictos con los scripts del sitio. Las herramientas de RUM también tienen dificultades con largas horas de sesión, lo que dificulta entender la experiencia del usuario en detalle. El verdadero desafío radica en contar historias y explicar por qué ocurren ciertos problemas para usuarios específicos.

Pasando al siguiente punto, ¿qué herramientas usaríamos como desarrolladores de front-end? Hablemos de las dos cosas más comunes. La primera es el synthetic monitoring. Es como un experimento de control. Puedes configurar pruebas que simulan la interacción del usuario, haciendo clic en botones, cargando páginas y así sucesivamente. Pero aquí está el verdadero truco. Esto es, por definición, sintético y generalmente funciona alrededor de los conocidos conocidos. No puede replicar la realidad desordenada del comportamiento regional del usuario. Los bots no pueden imitar la imprevisibilidad de los usuarios de cómo usan sus propios navegadores, tienen malas conexiones de red o interactúan con su aplicación de cientos de maneras diferentes.

Creo que cuando se trata de entender la palabra producción, nosotros los desarrolladores de front-end entendemos producción como el dispositivo del usuario. Hay millones, así que lidiamos con millones de producciones, creo. Así que adelante. Esto nos lleva a la siguiente herramienta, el real user monitoring. Rastrea la interacción real del usuario en tu sitio, dándote una ventana a lo que los usuarios reales están experimentando. Recoge datos sobre el tiempo de carga de la página, el rendimiento de la red, el tipo de dispositivo y más. Te ayuda a entender, por ejemplo, si los usuarios en una región específica están experimentando tiempos de carga de página lentos o si un dispositivo particular está causando el error.

Sin embargo, debemos entender que RUM generalmente no está exento de desafíos. Primero, el RUM nos da una visión muy general, pero a menudo no nos proporciona el contexto más profundo que se necesita para entender la causa raíz del problema. A menudo luchamos entre la carga de RUM, los agregadores de registros, las herramientas de seguimiento de edición y solo para obtener una pieza de, solo para obtener, solo para juntar lo que está pasando. Agregar contexto específico del usuario puede volverse rápidamente un proceso que consume tiempo y también puede aumentar el costo. La segunda razón son los agentes de RUM. Estos a veces pueden causar conflictos con los scripts en tu propio sitio. Irónicamente, estos agentes pueden convertirse en una fuente de problemas por sí mismos, especialmente cuando no se llevan bien con servicios de terceros o scripts de usuario personalizados. En algunos casos, incluso se convierten en una razón para la próxima queja del usuario. Por último, tenemos una herramienta, las herramientas de RUM a menudo luchan cuando las horas de sesión duran demasiado. Como cuando un usuario deja una pestaña abierta durante horas, los datos se vuelven más difíciles de gestionar e interpretar. Lo que lleva a una brecha en la comprensión de lo que el usuario realmente está experimentando. Es excelente para dar una visión general, pero menos efectivo cuando necesitas profundizar más en un viaje específico del usuario. Entonces, la pregunta no es si tenemos una buena herramienta. El verdadero desafío es sobre la narración. Nuestras herramientas de monitoreo actuales hacen un buen trabajo al decirnos qué está pasando, pero a menudo no logran explicar por qué está pasando, por qué un usuario específico experimenta un tiempo de inactividad lento, y por qué algunos de los usuarios no lo hacen.

7. The Power of Front-End Observability

Short description:

La observabilidad del front-end nos permite entender el rendimiento de la aplicación para diferentes usuarios y situaciones, conectando los puntos y obteniendo información sobre los core web vitals y las sesiones de usuario. Permite profundizar en los errores, identificar sus causas y correlacionar las actividades del front-end con los trazos del back-end. La observabilidad del front-end es crucial para mejorar la experiencia del desarrollador y pasar de la depuración reactiva a la optimización proactiva. Es hora de adoptar la observabilidad como una cultura y romper los silos entre el front-end y el back-end para comprender mejor toda la experiencia del usuario.

Entonces, esta brecha en la comprensión significa que necesitamos mucho tiempo en la búsqueda, pasamos mucho tiempo buscando la causa real del problema, en lugar de resolver el problema rápidamente. Diría que aquí es donde realmente brilla la observabilidad del front-end, porque se basa en el principio de que el contexto lo es todo. Y, usando este contexto no solo para monitorear, sino para entender cómo es el rendimiento de tu aplicación para diferentes usuarios y en diferentes situaciones.

Así que, con un buen contexto, podemos decir que podemos conectar fácilmente los puntos para obtener una vista clara de nuestro front-end y justo a tiempo. Por ejemplo, podemos decir que ahora podemos monitorear los web vitals, pero no analizarlos, sino profundizar más en la información. Como este, este es un ejemplo donde podemos ver los core web vitals, también el FCP, NCP, y diferentes cosas. Y también podemos profundizar más en esos datos hasta una sesión de usuario específica. Esto es algo de aprendizaje que podemos profundizar más en sesiones y eventos para identificar cuándo el usuario encuentra un error, qué tipo de error es, y si es una mala respuesta o un problema de carga de contenido o un problema específico del código del front-end. Y señalar qué parte del código lo causó. Este nivel de detalle nos ayuda a entender todo el recorrido del usuario.

Ahora tenemos datos de sesión específicos como la observabilidad del front-end desbloquea muchos de esos conocimientos, incluyendo la correlación exacta con la actividad del front-end y los trazos del back-end. Sin embargo, en este ejemplo, podemos ver que con la observabilidad del front-end, podemos profundizar más en un usuario específico, ver cómo es el recorrido y qué recorrido ha seguido el usuario, las solicitudes GET, las publicaciones IRR, cuántas solicitudes ha habido. Y también podemos ver los errores, si tienen un tiempo de inactividad más lento en algunos casos, como qué está causando este error. Así que también podemos ver esos datos específicos de la sesión. Y también podemos ver datos de correlación de trazos de extremo a extremo desde un front-end a un back-end. Así que la observabilidad del front-end desbloquea muchos de esos conocimientos, incluyendo la capacidad de correlacionar las actividades del front-end con nuestros trazos del back-end. Esto permite a los desarrolladores de back-end ver cómo sus cambios pueden impactar a los usuarios reales en el front-end. Esta característica es increíblemente valiosa para mejorar la experiencia del desarrollador también, no solo para el front-end o el back-end, sino para todo el equipo de ingeniería. Con este enfoque, ahora podemos entender mejor, identificar, depurar y acceder al impacto del problema en nuestras aplicaciones. Ahora tenemos eso. Esto es lo que la observabilidad del front-end pretende lograr. Un mundo donde pasamos de la depuración reactiva a la optimización proactiva.

Entonces ahora, ¿por qué estoy aquí hoy hablando de observabilidad? Es porque es hora de que demos el siguiente paso como desarrolladores de front-end. La web ha cambiado y nuestro rol ha cambiado con ella. Ya no podemos confiar siempre en la forma tradicional de monitorear y depurar. Si hay algunos puntos clave de esta charla, definitivamente serían sobre, como, es hora de repensar la observabilidad, no solo como un conjunto de herramientas, sino como una mentalidad. Porque no se trata solo de tener mejores herramientas. Se trata de adoptar la observabilidad como una cultura dentro de una organización. Se trata de romper los silos entre el front-end, el back-end, o todo el equipo de ingeniería para entender nuestro producto, nuestros usuarios, de una manera más efectiva. Así que cuando los desarrolladores de front-end entienden lo que está sucediendo en el back-end y viceversa, podemos entender mejor toda la experiencia del usuario, cómo se comporta el usuario, qué quiere el usuario. Así que, como, la observabilidad se convierte en una responsabilidad compartida que hace que todo nuestro sistema sea más resiliente. Así que ya sabes, eso es todo. Así que gracias por unirte a mi sesión hoy. Espero que lo hayas disfrutado y aprendido algo de eso. Y si realmente estás emocionado por la observabilidad del front-end, pronto, ya sabes, haré más contenido sobre eso. Así que hasta entonces, gracias por unirte a mí. Nos vemos pronto.

Check out more articles and videos

We constantly think of articles and videos that might spark Git people interest / skill us up or help building a stellar career

Una Guía del Comportamiento de Renderizado de React
React Advanced 2022React Advanced 2022
25 min
Una Guía del Comportamiento de Renderizado de React
Top Content
This transcription provides a brief guide to React rendering behavior. It explains the process of rendering, comparing new and old elements, and the importance of pure rendering without side effects. It also covers topics such as batching and double rendering, optimizing rendering and using context and Redux in React. Overall, it offers valuable insights for developers looking to understand and optimize React rendering.
Acelerando tu aplicación React con menos JavaScript
React Summit 2023React Summit 2023
32 min
Acelerando tu aplicación React con menos JavaScript
Top Content
Mishko, the creator of Angular and AngularJS, discusses the challenges of website performance and JavaScript hydration. He explains the differences between client-side and server-side rendering and introduces Quik as a solution for efficient component hydration. Mishko demonstrates examples of state management and intercommunication using Quik. He highlights the performance benefits of using Quik with React and emphasizes the importance of reducing JavaScript size for better performance. Finally, he mentions the use of QUIC in both MPA and SPA applications for improved startup performance.
Concurrencia en React, Explicada
React Summit 2023React Summit 2023
23 min
Concurrencia en React, Explicada
Top Content
React 18's concurrent rendering, specifically the useTransition hook, optimizes app performance by allowing non-urgent updates to be processed without freezing the UI. However, there are drawbacks such as longer processing time for non-urgent updates and increased CPU usage. The useTransition hook works similarly to throttling or bouncing, making it useful for addressing performance issues caused by multiple small components. Libraries like React Query may require the use of alternative APIs to handle urgent and non-urgent updates effectively.
How React Compiler Performs on Real Code
React Advanced 2024React Advanced 2024
31 min
How React Compiler Performs on Real Code
Top Content
I'm Nadia, a developer experienced in performance, re-renders, and React. The React team released the React compiler, which eliminates the need for memoization. The compiler optimizes code by automatically memoizing components, props, and hook dependencies. It shows promise in managing changing references and improving performance. Real app testing and synthetic examples have been used to evaluate its effectiveness. The impact on initial load performance is minimal, but further investigation is needed for interactions performance. The React query library simplifies data fetching and caching. The compiler has limitations and may not catch every re-render, especially with external libraries. Enabling the compiler can improve performance but manual memorization is still necessary for optimal results. There are risks of overreliance and messy code, but the compiler can be used file by file or folder by folder with thorough testing. Practice makes incredible cats. Thank you, Nadia!
Optimización de juegos HTML5: 10 años de aprendizaje
JS GameDev Summit 2022JS GameDev Summit 2022
33 min
Optimización de juegos HTML5: 10 años de aprendizaje
Top Content
PlayCanvas is an open-source game engine used by game developers worldwide. Optimization is crucial for HTML5 games, focusing on load times and frame rate. Texture and mesh optimization can significantly reduce download sizes. GLTF and GLB formats offer smaller file sizes and faster parsing times. Compressing game resources and using efficient file formats can improve load times. Framerate optimization and resolution scaling are important for better performance. Managing draw calls and using batching techniques can optimize performance. Browser DevTools, such as Chrome and Firefox, are useful for debugging and profiling. Detecting device performance and optimizing based on specific devices can improve game performance. Apple is making progress with WebGPU implementation. HTML5 games can be shipped to the App Store using Cordova.
El Futuro de las Herramientas de Rendimiento
JSNation 2022JSNation 2022
21 min
El Futuro de las Herramientas de Rendimiento
Top Content
Today's Talk discusses the future of performance tooling, focusing on user-centric, actionable, and contextual approaches. The introduction highlights Adi Osmani's expertise in performance tools and his passion for DevTools features. The Talk explores the integration of user flows into DevTools and Lighthouse, enabling performance measurement and optimization. It also showcases the import/export feature for user flows and the collaboration potential with Lighthouse. The Talk further delves into the use of flows with other tools like web page test and Cypress, offering cross-browser testing capabilities. The actionable aspect emphasizes the importance of metrics like Interaction to Next Paint and Total Blocking Time, as well as the improvements in Lighthouse and performance debugging tools. Lastly, the Talk emphasizes the iterative nature of performance improvement and the user-centric, actionable, and contextual future of performance tooling.

Workshops on related topic

Masterclass de Depuración de Rendimiento de React
React Summit 2023React Summit 2023
170 min
Masterclass de Depuración de Rendimiento de React
Top Content
Featured Workshop
Ivan Akulov
Ivan Akulov
Los primeros intentos de Ivan en la depuración de rendimiento fueron caóticos. Vería una interacción lenta, intentaría una optimización aleatoria, vería que no ayudaba, y seguiría intentando otras optimizaciones hasta que encontraba la correcta (o se rendía).
En aquel entonces, Ivan no sabía cómo usar bien las herramientas de rendimiento. Haría una grabación en Chrome DevTools o React Profiler, la examinaría, intentaría hacer clic en cosas aleatorias, y luego la cerraría frustrado unos minutos después. Ahora, Ivan sabe exactamente dónde y qué buscar. Y en esta masterclass, Ivan te enseñará eso también.
Así es como va a funcionar. Tomaremos una aplicación lenta → la depuraremos (usando herramientas como Chrome DevTools, React Profiler, y why-did-you-render) → identificaremos el cuello de botella → y luego repetiremos, varias veces más. No hablaremos de las soluciones (en el 90% de los casos, es simplemente el viejo y regular useMemo() o memo()). Pero hablaremos de todo lo que viene antes - y aprenderemos a analizar cualquier problema de rendimiento de React, paso a paso.
(Nota: Esta masterclass es más adecuada para ingenieros que ya están familiarizados con cómo funcionan useMemo() y memo() - pero quieren mejorar en el uso de las herramientas de rendimiento alrededor de React. Además, estaremos cubriendo el rendimiento de la interacción, no la velocidad de carga, por lo que no escucharás una palabra sobre Lighthouse 🤐)
Next.js 13: Estrategias de Obtención de Datos
React Day Berlin 2022React Day Berlin 2022
53 min
Next.js 13: Estrategias de Obtención de Datos
Top Content
Workshop
Alice De Mauro
Alice De Mauro
- Introducción- Prerrequisitos para la masterclass- Estrategias de obtención: fundamentos- Estrategias de obtención – práctica: API de obtención, caché (estática VS dinámica), revalidar, suspense (obtención de datos en paralelo)- Prueba tu construcción y sírvela en Vercel- Futuro: Componentes de servidor VS Componentes de cliente- Huevo de pascua de la masterclass (no relacionado con el tema, destacando la accesibilidad)- Conclusión
Depuración del Rendimiento de React
React Advanced 2023React Advanced 2023
148 min
Depuración del Rendimiento de React
Workshop
Ivan Akulov
Ivan Akulov
Los primeros intentos de Ivan en la depuración de rendimiento fueron caóticos. Veía una interacción lenta, probaba una optimización aleatoria, veía que no ayudaba, y seguía probando otras optimizaciones hasta que encontraba la correcta (o se rendía).
En aquel entonces, Ivan no sabía cómo usar bien las herramientas de rendimiento. Hacía una grabación en Chrome DevTools o React Profiler, la examinaba, intentaba hacer clic en cosas al azar, y luego la cerraba frustrado unos minutos después. Ahora, Ivan sabe exactamente dónde y qué buscar. Y en esta masterclass, Ivan te enseñará eso también.
Así es como va a funcionar. Tomaremos una aplicación lenta → la depuraremos (usando herramientas como Chrome DevTools, React Profiler, y why-did-you-render) → identificaremos el cuello de botella → y luego repetiremos, varias veces más. No hablaremos de las soluciones (en el 90% de los casos, es simplemente el viejo y regular useMemo() o memo()). Pero hablaremos de todo lo que viene antes - y aprenderemos cómo analizar cualquier problema de rendimiento de React, paso a paso.
(Nota: Esta masterclass es más adecuada para ingenieros que ya están familiarizados con cómo funcionan useMemo() y memo() - pero quieren mejorar en el uso de las herramientas de rendimiento alrededor de React. Además, cubriremos el rendimiento de interacción, no la velocidad de carga, por lo que no escucharás una palabra sobre Lighthouse 🤐)
Construyendo aplicaciones web que iluminan Internet con QwikCity
JSNation 2023JSNation 2023
170 min
Construyendo aplicaciones web que iluminan Internet con QwikCity
WorkshopFree
Miško Hevery
Miško Hevery
Construir aplicaciones web instantáneas a gran escala ha sido elusivo. Los sitios del mundo real necesitan seguimiento, análisis y interfaces y interacciones de usuario complejas. Siempre comenzamos con las mejores intenciones pero terminamos con un sitio menos que ideal.
QwikCity es un nuevo meta-framework que te permite construir aplicaciones a gran escala con un rendimiento de inicio constante. Veremos cómo construir una aplicación QwikCity y qué la hace única. El masterclass te mostrará cómo configurar un proyecto QwikCity. Cómo funciona el enrutamiento con el diseño. La aplicación de demostración obtendrá datos y los presentará al usuario en un formulario editable. Y finalmente, cómo se puede utilizar la autenticación. Todas las partes básicas para cualquier aplicación a gran escala.
En el camino, también veremos qué hace que Qwik sea único y cómo la capacidad de reanudación permite un rendimiento de inicio constante sin importar la complejidad de la aplicación.
Masterclass de alto rendimiento Next.js
React Summit 2022React Summit 2022
50 min
Masterclass de alto rendimiento Next.js
Workshop
Michele Riva
Michele Riva
Next.js es un marco convincente que facilita muchas tareas al proporcionar muchas soluciones listas para usar. Pero tan pronto como nuestra aplicación necesita escalar, es esencial mantener un alto rendimiento sin comprometer el mantenimiento y los costos del servidor. En este masterclass, veremos cómo analizar el rendimiento de Next.js, el uso de recursos, cómo escalarlo y cómo tomar las decisiones correctas al escribir la arquitectura de la aplicación.
Maximizar el rendimiento de la aplicación optimizando las fuentes web
Vue.js London 2023Vue.js London 2023
49 min
Maximizar el rendimiento de la aplicación optimizando las fuentes web
WorkshopFree
Lazar Nikolov
Lazar Nikolov
Acabas de llegar a una página web y tratas de hacer clic en un elemento en particular, pero justo antes de hacerlo, se carga un anuncio encima y terminas haciendo clic en eso en su lugar.
Eso... eso es un cambio de diseño. Todos, tanto los desarrolladores como los usuarios, saben que los cambios de diseño son malos. Y cuanto más tarde ocurran, más interrupciones causarán a los usuarios. En este masterclass vamos a analizar cómo las fuentes web causan cambios de diseño y explorar algunas estrategias para cargar fuentes web sin causar grandes cambios de diseño.
Tabla de contenidos:¿Qué es CLS y cómo se calcula?¿Cómo las fuentes pueden causar CLS?Estrategias de carga de fuentes para minimizar CLSRecapitulación y conclusión