Que sont les variantes Chrome ?

Un m�canisme permettant � Chrome de tester de nouvelles fonctionnalit�s du navigateur

Vous avez peut-�tre d�j� entendu parler des variantes Chrome, des Chrome Field Trials, ou m�me du nom�de�code interne, Chrome Finch.

Tous ces noms d�signent la m�me chose: un m�canisme permettant de tester de nouvelles fonctionnalit�s ou des modifications du navigateur�Chrome, ou de ChromeOS, le syst�me d'exploitation Chrome ex�cut� sur les Chromebooks.

� quoi servent les variantes Chrome ?

Les variantes Chrome permettent � Chrome d'activer une nouvelle fonctionnalit�, de d�sactiver une fonctionnalit� ou de tester une modification pour un sous-ensemble d'utilisateurs.

Toutes les fonctionnalit�s de Chrome ne sont pas introduites � l'aide du m�canisme des variantes Chrome. Toutefois, l'�quipe Chrome peut les utiliser chaque fois qu'une modification est n�cessaire ou qu'elle risque d'affecter les performances de mani�re inattendue. Une "modification" peut signifier une am�lioration des performances du code de Chrome, une mise � jour de l'apparence ou du fonctionnement du navigateur, voire, parfois, une modification d'une API JavaScript.

Les variantes Chrome peuvent �galement servir � valider une hypoth�se sur une modification ou une mise � jour. Par exemple, pour un pourcentage d'utilisateurs d'un groupe de variantes Chrome, nous avons essay� d'ajuster les param�tres du protocole�r�seau QUIC pour rendre Chrome plus rapide dans les conditions r�elles du r�seau.

Les variantes Chrome peuvent �galement s'afficher dans les phases d'�valuation de Chrome. Par d�faut, une fonctionnalit� d'�valuation est activ�e sur toutes les pages qui fournissent un jeton d'essai valide, mais dans certains cas, les variantes Chrome sont utilis�es pour contr�ler l'activation d'une fonctionnalit�. Cela signifie qu'une fonctionnalit� d'essai�Origin�Trial peut ne pas �tre disponible pour certains utilisateurs, m�me lorsqu'ils consultent une page qui fournit un jeton d'essai valide. Des informations sur la proportion d'utilisateurs pouvant b�n�ficier d'une phase d'�valuation sont fournies avec la documentation et les mises � jour de chaque phase d'�valuation.

Comment fonctionnent les variantes Chrome ?

Toutes les 30 minutes sur ordinateur ou sur mobile, ou chaque fois que vous d�marrez Chrome, le navigateur envoie une requ�te au backend Chrome pour obtenir le fichier�de�configuration des variantes Chrome, appel� graine des variantes. En d'autres termes, il existe un serveur d�di� pour fournir les sources des variantes Chrome. Chrome envoie une requ�te HTTPS au serveur, qui r�pond par une graine delta-compressed.

Informations sur le navigateur et le syst�me d'exploitation qui sont dirig�s vers le backend des variantes Chrome ; la graine des variantes Chrome est transmise au navigateur, qui comporte une graine de randomisation.

Lorsque Chrome sur votre appareil contacte le backend des variantes Chrome pour obtenir le fichier source, celui-ci fournit �galement des informations sur la version de Chrome et le syst�me d'exploitation sur lequel il est ex�cut�. Le fichier renvoy� par le backend des variantes Chrome permet d'activer ou de d�sactiver des fonctionnalit�s, ou de sp�cifier des variantes d'une fonctionnalit�.

Chrome utilise les donn�es du fichier source et une graine de randomisation stock�e localement pour attribuer le navigateur de mani�re al�atoire � un groupe de variantes. En d'autres termes, la graine de randomisation, combin�e au fichier source du backend des variantes Chrome, peut �tre utilis�e pour activer ou d�sactiver des fonctionnalit�s dans le navigateur pour un sous-ensemble d'utilisateurs. Le navigateur install� sur votre appareil garde une trace du groupe de variantes auquel il appartient.

D�ploiement des fonctionnalit�s et versions de Chrome

L'une des utilisations les plus importantes des variantes Chrome consiste � apporter progressivement des modifications ou de nouvelles fonctionnalit�s � un certain pourcentage de clients Chrome. C'est essentiel pour une application complexe telle que Chrome qui compte des milliards d'utilisateurs, avec des milliers d'appareils sur plusieurs plates-formes et qui utilisent des dizaines de langues diff�rentes pour des millions d'applications et de sites Web.

Chrome re�oit de pr�cieux commentaires de son utilisation et de ses tests dans Chrome�Canary, en d�veloppement et en version�b�ta. Nous pouvons utiliser les variantes Chrome pour activer ou d�sactiver des fonctionnalit�s dans n'importe laquelle de ces versions disponibles. Cependant, ces canaux sont principalement utilis�s par les d�veloppeurs et d'autres sp�cialistes. Les utilisateurs de la version�stable de Chrome interagissent diff�remment avec Chrome, et sont beaucoup plus nombreux. Nous devons donc toujours valider la version�stable. Cela nous permet de r�soudre les probl�mes rencontr�s lors d'une utilisation normale du navigateur. Les ing�nieurs Chrome ne sont pas toujours en mesure de pr�dire � grande �chelle la r�action des utilisateurs r�els aux changements et aux nouvelles fonctionnalit�s.

Les variantes Chrome sont un m�canisme essentiel pour vous aider. Elles permettent de v�rifier l'utilisation et les m�triques de la version�stable de Chrome avec une fonctionnalit� activ�e ou d�sactiv�e. En mesurant l'impact des modifications apport�es � la version�stable de Chrome, nous pouvons proposer les meilleures fonctionnalit�s possibles et cr�er un meilleur navigateur, m�me lorsque les compromis sont complexes.

Quand les ing�nieurs Chrome utilisent-ils les variantes Chrome ?

Chrome a besoin des variantes Chrome pour trois raisons principales.

Activer une nouvelle fonctionnalit�

L'utilisation des variantes Chrome pour contr�ler l'activation d'une nouvelle fonctionnalit� est particuli�rement utile en cas de risque plus risqu� ou d'affecter les performances.

Les variantes Chrome nous permettent de proposer une nouvelle fonctionnalit� � un sous-ensemble d'utilisateurs. Les ing�nieurs Chrome peuvent ensuite rechercher les diff�rences de performances ou examiner d'autres types de commentaires du groupe de variantes.

D�sactiver une fonctionnalit�

Les variantes Chrome peuvent servir de m�canisme de s�curit� pour d�sactiver une fonctionnalit�, bien que cela se produise rarement.

Par exemple, une nouvelle fonctionnalit� de mise en r�seau peut �tre sujette � une attaque�par�d�ni�de�service. Les variantes Chrome permettent de d�sactiver rapidement une fonctionnalit� de ce type, car la configuration des variantes Chrome est t�l�charg�e toutes les 30 minutes et les param�tres sont activ�s � chaque red�marrage de Chrome. En revanche, mettre � jour Chrome et attendre que la nouvelle version soit propag�e � des milliards d'utilisateurs serait beaucoup plus lente.

Essayer de modifier un �l�ment�g�ographique

Enfin, les variantes Chrome peuvent �tre utilis�es pour valider les modifications et les mises � jour. Par exemple, nous pourrions ajuster la difficult� du jeu Chrome�Dino hors connexion pour rendre l'interaction plus amusante.

Les variantes Chrome permettent �galement d'�tudier les effets � long terme de nouvelles fonctionnalit�s. Pour ce faire, le m�canisme des variantes Chrome limite les fonctionnalit�s � une petite proportion d'utilisateurs (1% ou moins). Un groupe�de�contr�le peut �tre utile pour v�rifier les modifications et les effets secondaires qui ne deviennent visibles qu'au fil du temps.

Un groupe non expos� � l'annonce peut �tre particuli�rement important pour les modifications de l'interface�utilisateur, car les utilisateurs sont susceptibles d'interagir avec une fonctionnalit� lorsqu'elle est nouvelle, mais peuvent se comporter diff�remment � long terme.

Par exemple, nous avons lanc� un s�lecteur�de�photos dans Chrome, mais cette fonctionnalit� a �t� temporairement mise � l'�cart d'un petit pourcentage d'utilisateurs afin de comparer les r�sultats. Nous avons lanc� le nouveau s�lecteur�de�photos Android aupr�s d'une grande partie de nos utilisateurs. Au d�but, nous avons constat� une augmentation significative du nombre d'images partag�es par le groupe sur le Web. Toutefois, au cours des six mois o� nous avons observ� la variation de type "holdback", nous avons constat� une baisse significative de l'augmentation de l'utilisation. En effet, la disponibilit� du nouveau s�lecteur�de�photos encourag� les sites � ajouter l'attribut d'acceptation aux �l�ments d'entr�e de fichier, ce qui a am�lior� l'exp�rience de tous les utilisateurs.

Comment les variantes Chrome sont-elles utilis�es pour la validation ?

Si le param�tre visant � am�liorer les fonctionnalit�s et les performances de Chrome est activ� (chrome://settings/syncSetup?search=improve), Chrome peut surveiller et envoyer automatiquement des m�triques au backend Chrome, � l'aide d'un m�canisme appel� analyse des m�triques utilisateur (UMA, User Metrics Analysis). Vous trouverez des exemples de statistiques d'utilisation anonymes de Chrome sur chromestatus.com/metrics, comme le pourcentage de chargements de pages qui utilisent une propri�t� CSS, ou une fonctionnalit� HTML ou JavaScript.

Les variantes Chrome sont particuli�rement utiles pour comparer les statistiques d'un groupe d'utilisateurs � celles d'un autre. Par exemple, une fonctionnalit� peut �tre activ�e pour certains utilisateurs et pas pour d'autres, et Chrome peut comparer les m�triques de chaque groupe. Ces m�triques peuvent inclure l'utilisation de la m�moire, les temps�de�chargement des pages ou l'utilisation d'une fonctionnalit� du navigateur. Cela permet aux ing�nieurs Chrome de comparer les performances ou d'autres m�triques entre les utilisateurs pour lesquels une fonctionnalit� est activ�e, ceux pour lesquels la fonctionnalit� est d�sactiv�e ou ceux ayant des variantes de fonctionnalit�s diff�rentes.

Essais sur le terrain des variantes Chrome

Chaque ensemble de variantes d'une caract�ristique est appel� "�tude" ou test en conditions r�elles, et chacun d'eux a une dur�e fixe. Lorsqu'une �tude est termin�e pour une fonctionnalit�, tous les utilisateurs inclus dans un groupe de comportements autre que celui par d�faut re�oivent le param�tre Chrome par d�faut de la fonctionnalit�: activ� ou d�sactiv�.

La plupart des fonctionnalit�s pouvant �tre contr�l�es par les variantes Chrome correspondent � un indicateur pouvant �tre d�fini � partir de la page chrome://flags. Si vous ex�cutez Chrome � partir de la ligne�de�commande, vous pouvez �galement utiliser les indicateurs --enable-features et --disable-features pour configurer les variantes Chrome.

L'indicateur --reset-variation-state force la r�initialisation de l'�tat des variantes Chrome pour le client actuel. Cela signifie que le client peut passer � diff�rents groupes de variantes Chrome.

Variantes Chrome pour les entreprises

Pour les entreprises, Chrome propose �galement la r�gle ChromeVariations pour g�rer les variantes Chrome. Bien entendu, nous vous recommandons de laisser les variantes Chrome activ�es, afin que Chrome puisse rapidement fournir les correctifs de s�curit� essentiels.

En savoir plus