How Loading Time affects your Bottom Line et ROI of Web Performance.
Au delà de la performance réelle, ce qui compte le plus est la perception de l'utilisateur. Deux sites ayant le même temps de chargement peuvent être ressentis par l'utilisateur comme ayant une rapidité très différente. Ce qui participe fortement à la perception de lenteur par un utilisateur est la durée durant laquelle la page reste blanche. Le Start Render est la métrique nous permettant de constater ce temps. Plus le rendu de votre page se fait rapidement, plus la perception de rapidité sera importante. Faites attention dans votre course à la réduction du Start Render de ne pas provoquer de FOUC (Flash Of Unstyled Content). Les premiers éléments rendus doivent être une partie réelle du rendu final et ne doivent pas changer de position ou disparaitre dans le rendu final.
Le Speed Index est un indicateur prenant en compte le temps mis par le navigateur pour faire le rendu et la progression du rendu durant ce temps. Ainsi, le Speed Index fait la différence entre deux sites ayant le même temps de chargement mais dont un affiche rapidement 90% du rendu final et l'autre affiche longtemps 20% du rendu final. Je vous invite à lire l'explication illustrée du Speed Index pour comprendre son calcul. Plus votre page s'affichera rapidement, plus cet indice sera petit.
Afin de voir la progression du rendu effectué par le navigateur, WebPagetest prend une capture d'écran de la fenêtre du navigateur tous les dixièmes de seconde. Il ne s'agit pas d'un indicateur quantitatif comme le Speed Index mais il peut vraiment être utile pour donner un aperçu fidèle de ce que l'utilisateur observe lors du chargement de la page.
Une vidéo réalisée à partir de ces captures d'écrans est plus expressive.
Votre navigateur est obsolète, téléchargez la vidéo
Mesurer votre application web vous permettra d'améliorer ou de maintenir sa rapidité mais c'est aussi un excellent moyen de décision. Une possibilité d'évaluer l'impact d'une nouvelle fonctionnalité ou l'inclusion d'un nouvel élément afin d'en mesurer leur rentabilité.
Mesurer son application web en production est important mais il est également intéressant de mesurer ses performances durant la phase de développement. Testez vos développements en cours à l'aide d'une instance privée et automatisée de WebPagetest afin de suivre l'évolution de votre performance front-end. Votre infrastructure n'est pas aussi puissante que la production mais l'important est de comparer avec les développements précédents pour avoir des tendances dans l'objectif de savoir si le développement courant améliore ou dégrade les performances. Ces tests vous donneront des éléments de décision sur la rentabilité d'une nouvelle fonctionnalité et si elle doit être réalisée d'une manière différente ou abandonnée.
Malgré les améliorations apportées sur son propre code, il n'est pas rare que le temps de chargement ne s'améliore pas à cause de contenus tiers. Les widgets des réseaux sociaux ou les publicités sont réputés pour impacter fortement les performances web. Afin de mesurer leur impact et de mesurer la performance réelle de vos développements, réalisez des tests en les désactivant. Cela vous permettra ainsi d'évaluer la rentabilité de ces contenus tiers par rapport à leur impact sur les performances. Vous pourrez ainsi décider de ne plus inclure un contenu tiers ou d'utiliser un autre moyen pour ne plus pénaliser la performance de vos pages.
Avant de se pencher sur les solutions techniques pour améliorer les performances d'une application web, il est important d'avoir un objectif : augmenter le nombre de pages vues, améliorer la satisfaction des utilisateurs, augmenter le nombre de ventes, déterminer le ROI d'une nouvelle fonctionnalité, etc. La compréhension des différents indicateurs de performances et l'analyse des mesures effectuées vous permettront de décider des solutions techniques à mettre en place pour améliorer vos performances front-end.