Este es un ejemplo de los artículos que semanalmente escribo de forma exclusiva para los mecenas de la Comunidad.


Si quieres recibir contenido exclusivo como éste directamente en tu bandeja de correo, revisa las opciones de mecenazgo de esta página.

*******

Llevo literalmente unos meses sufriendo en silencio una serie de cambios que parece que Chrome ha hecho para, en principio, facilitarle la vida al usuario medio, y que en la práctica me trae por la calle de la amargura a mi y entiendo que a buena parte de los desarrolladores web.

Indagando un poco en el asunto me doy cuenta que el problema viene dado por la filosofía que sigue hasta ahora Google de cacheado de páginas, y en especial, de cómo entiende el bfcache, o dicho de otra manera, el cacheado que se utiliza para recargar una web después de haberle dado a volver atrás/ir hacia delante/actualizar.

  • Tanto Safari, como Edge, Firefox, Opera y seguramente más navegadores implementan el bfcache, con algunas matizaciones, guardando en memoria todas las páginas por las que vamos navegando. Es decir, que el cacheado almacena también el DOM, el JavaScript y el historial de navegación, de manera que si volvemos hacia atrás la página no tiene que volver a cargarse, sino que nos muestra instantáneamente el último estado que teníamos cacheado.
  • Chrome sigue la filosofía opuesta. Hasta el momento no guarda en memoria las páginas, ergo si damos hacia atrás realmente es como si volviéramos a pedir esa página, heredando la caché estática que haya pillado anteriormente, pero teniendo que recargarla.

Por supuesto no todo es malo. En teoría (y digo en teoría porque mi experiencia con la caché de Chrome es justo la contraria) esto hace que la web que visitamos siempre nos muestre el contenido actualizado. Algo que, dependiendo de la página en la que estemos, pasa de ser intrascendente a ser profundamente necesario. A cambio, eso sí, se calcula que hace de la navegación un 19% más lenta.

Cuento todo esto porque curiosamente Chrome no permite de una manera sencilla decirle al navegador qué quieres cachear y qué no. Existen peticiones que se realizan a nivel de registro, sí, pero nada por la interfaz más allá de borrar datos de navegación.


Sea como fuere, parece que en Chromium ya están liados con ello. Y para muestra este vídeo sobre las diferencias entre un Chrome que no utiliza bfcache (izquierda) y uno que sí lo tiene habilitado (derecha).

Tienes más información (técnica) en la página de Chrome (EN).

________

Este es un ejemplo de los artículos que semanalmente escribo de forma exclusiva para los mecenas de la Comunidad.

Si quieres recibir contenido exclusivo como éste directamente en tu bandeja de correo, revisa las opciones de mecenazgo de esta página.

Articulo exclusivo PabloYglesias