¿Qué son las variaciones de Chrome?

Un mecanismo para que Chrome pruebe nuevas funciones del navegador

Es posible que hayas oído hablar de las variaciones de Chrome o de las pruebas de campo de Chrome, o incluso del nombre interno interno, Chrome Finch.

Todos estos son nombres para lo mismo: un mecanismo para probar nuevas funciones o cambios en el navegador Chrome, o en el Sistema operativo Chrome que se ejecuta en las Chromebooks.

¿Para qué se utilizan las variaciones de Chrome?

Las variaciones de Chrome permiten que Chrome active una función nueva, desactive una función o pruebe un cambio en una función para un subconjunto de usuarios.

No todo lo que se incluye en Chrome se introduce a través del mecanismo de variaciones de Chrome. Sin embargo, el equipo de Chrome puede usar las variaciones de Chrome siempre que necesitemos ser muy cuidadosos a la hora de hacer un cambio o cuando exista el riesgo de que un cambio afecte el rendimiento de maneras inesperadas. Un "cambio" puede implicar una mejora en el rendimiento del código de Chrome, una actualización del aspecto o el funcionamiento del navegador o, en ocasiones, incluso una modificación de una API de JavaScript.

Las variaciones de Chrome también se pueden utilizar para validar una hipótesis sobre un cambio o una actualización. Por ejemplo, para un porcentaje de usuarios de un grupo de variaciones de Chrome, intentamos ajustar los parámetros del protocolo de red QUIC a fin de que Chrome sea más rápido para las condiciones de red reales de los usuarios.

Otra área en la que puedes encontrar variaciones de Chrome es si trabajas con las pruebas de origen de Chrome. De forma predeterminada, se habilita una función de prueba de origen en todas las páginas que proporcionan un token de prueba válido, pero en algunos casos, se usan las variaciones de Chrome para controlar la activación de una función. Esto significa que es posible que una función de prueba de origen no esté disponible para ciertos usuarios, incluso cuando visitan una página que proporciona un token de prueba válido. Se proporciona información sobre la proporción de usuarios aptos para la activación de una función de prueba de origen, junto con la documentación y las actualizaciones de cada prueba de origen.

¿Cómo funcionan las variaciones de Chrome?

Cada 30 minutos en computadoras o dispositivos móviles, o cada vez que inicias Chrome, el navegador envía una solicitud al backend de Chrome para obtener el archivo de configuración de las variaciones de Chrome, que se conoce como el valor inicial de las variaciones. En otras palabras, existe un servidor dedicado que proporciona los valores iniciales de las variaciones de Chrome. Chrome envía una solicitud HTTPS al servidor, y este responde con un valor delta-comprimido.

Información sobre el navegador y el sistema operativo que se dirigen al backend de las variaciones de Chrome; estas se originan en el navegador, que tiene un valor inicial de aleatorización.

Cuando Chrome en tu dispositivo se comunica con el backend de variaciones de Chrome para obtener el archivo de origen, también proporciona información sobre la versión de Chrome y el sistema operativo en el que se ejecuta. El archivo que muestra el backend de variaciones de Chrome se usa para activar funciones, desactivarlas o especificar variaciones en una función.

Chrome usa los datos del archivo de origen y un valor inicial de aleatorización almacenado localmente para asignar de forma aleatoria el navegador a un grupo de variaciones. En otras palabras, el valor inicial de aleatorización, combinado con el archivo de origen del backend de variaciones de Chrome, se puede usar para activar o desactivar funciones en el navegador para un subconjunto de usuarios. El navegador, en tu dispositivo, realiza un seguimiento del grupo de variaciones al que pertenece.

Lanzamiento de funciones y canales de Chrome

Uno de los usos más importantes de las variaciones de Chrome es el lanzamiento gradual de cambios o funciones nuevas para un porcentaje de usuarios. Esto es fundamental para una aplicación compleja como Chrome, que tiene miles de millones de usuarios, con miles de tipos de dispositivos en varias plataformas y que usan decenas de lenguajes diferentes para millones de apps y sitios web diferentes.

Chrome recibe comentarios valiosos del uso y las pruebas en Chrome Canary, para desarrolladores y en fase beta. Podemos usar las variaciones de Chrome para activar o desactivar funciones en cualquiera de estos canales de versiones. Sin embargo, esos canales los usan principalmente los desarrolladores y otros especialistas. Los usuarios de la versión estable de Chrome interactúan con Chrome de manera diferente y en cantidades mucho mayores, por lo que siempre debemos realizar la validación en el canal estable. Esto nos permite aclarar cualquier problema que se encuentre durante el uso normal del navegador. Los ingenieros de Chrome no siempre pueden predecir a gran escala cómo responderán los usuarios reales a los cambios y las funciones nuevas.

Las variaciones de Chrome son un mecanismo crucial para ayudar con esto, ya que permiten verificar el uso y las métricas de la versión estable de Chrome con una función activada o desactivada. Si midemos el impacto de los cambios en la versión estable de Chrome, podemos lanzar las mejores funciones posibles y crear un navegador mejor, incluso cuando las compensaciones son complejas.

¿Cuándo utilizan las variaciones de Chrome los ingenieros de Chrome?

Existen tres motivos principales por los que Chrome necesita las variaciones de Chrome.

Activar una función nueva

El uso de las variaciones de Chrome para controlar la activación de una función nueva es particularmente útil para cualquier tarea que pueda ser más riesgosa de alguna manera o que podría afectar el rendimiento.

Las variaciones de Chrome nos permiten lanzar una nueva función para un subconjunto de usuarios. Luego, los ingenieros de Chrome pueden comprobar si hay diferencias en el rendimiento o ver otros tipos de comentarios del grupo de variación.

Cómo desactivar una función

Las variaciones de Chrome se pueden usar como mecanismo de seguridad para desactivar una función, aunque no suele ocurrir.

Por ejemplo, una nueva función de red podría estar sujeta a un ataque de denegación del servicio. Las variaciones de Chrome se pueden usar para desactivar rápidamente una función de este tipo, ya que su configuración se descarga cada 30 minutos y los parámetros se activan cada vez que reinicias Chrome. Por el contrario, actualizar Chrome y esperar a que la nueva versión se propague a miles de millones de usuarios sería mucho más lento.

Prueba con los cambios en un elemento

Por último, las variaciones de Chrome se pueden utilizar para validar cambios y actualizaciones. Por ejemplo, podríamos ajustar la dificultad del juego del dinosaurio sin conexión en Chrome para que la interacción se sienta más divertida.

Las variaciones de Chrome también se pueden utilizar para estudiar los efectos a largo plazo de las funciones nuevas. Para ello, se usa el mecanismo de variaciones de Chrome a fin de retener funciones para una pequeña proporción de usuarios, tal vez un 1% o menos. Un grupo de retención puede ser útil para verificar cambios y efectos secundarios que solo se vuelven visibles con el tiempo.

Un grupo de aislamiento puede ser particularmente importante para los cambios en la interfaz de usuario, en los que es probable que los usuarios interactúen con una función cuando sea nueva, pero se comporten de forma diferente a largo plazo.

Por ejemplo, lanzamos una funcionalidad de selector de fotos en Chrome, pero se retuvo temporalmente a un pequeño porcentaje de usuarios para comparar resultados. Enviamos el nuevo selector de fotos de Android a una gran proporción de usuarios y, al principio, observamos un aumento significativo en la cantidad de imágenes que el grupo comparte en la Web. Sin embargo, en los seis meses en los que tuvimos la variación de aislamiento, la efectividad en el uso disminuyó de manera significativa. Esto se debe a que la disponibilidad del nuevo selector de fotos recomendó a los sitios agregar el atributo Accept a los elementos de entrada de archivos, lo que generó una mejor experiencia para todos los usuarios.

¿Cómo se utilizan las variaciones de Chrome para la validación?

Si se habilita el parámetro de configuración para ayudar a mejorar las funciones y el rendimiento de Chrome (chrome://settings/syncSetup?search=improve), Chrome podrá supervisar y enviar automáticamente métricas al backend de Chrome mediante un mecanismo conocido como Análisis de métricas del usuario (UMA). Puedes ver ejemplos de las estadísticas de uso anónimas de Chrome en chromestatus.com/metrics, como el porcentaje de cargas de página que utilizan una propiedad de CSS o una función de HTML o JavaScript.

Las variaciones de Chrome son particularmente útiles para comparar las estadísticas de un grupo de usuarios con otro. Por ejemplo, una función se puede activar para algunos usuarios y no para otros, y Chrome puede comparar las métricas de cada grupo. Estas métricas pueden incluir el uso de memoria, los tiempos de carga de la página o el uso de una función del navegador. Esto permite a los ingenieros de Chrome comparar el rendimiento y otras métricas entre los usuarios que tienen una función activada, los usuarios que tienen la función desactivada o los usuarios con diferentes variaciones de la función.

Pruebas de campo de las variaciones de Chrome

Cada conjunto de variaciones de una función se denomina estudio o prueba de campo y cada uno tiene una duración fija. Una vez que finaliza un estudio de una función, todos los usuarios que se incluyeron en un grupo de comportamiento no predeterminado recibirán la configuración predeterminada de Chrome para la función: habilitada o inhabilitada.

La mayoría de las funciones que se pueden controlar con las variaciones de Chrome corresponden a una marca que se puede configurar desde la página chrome://flags. Como alternativa, si ejecutas Chrome desde la línea de comandos, puedes usar las marcas --enable-features y --disable-features para configurar las variaciones de Chrome.

Variaciones de Chrome para empresas

Para los clientes empresariales, Chrome también proporciona la política ChromeVariations para administrar las variaciones de Chrome. Por supuesto, recomendamos dejar habilitadas las variaciones de Chrome para que Chrome pueda proporcionar rápidamente correcciones de seguridad críticas.

Más información