Tuesday, April 6, 2021

Mis hábitos de navegación

La aplicación que más usamos cada día es el navegador, así es que tiene sentido emplear tiempo en elegir uno, en configurarlo y en instalar un conjunto de extensiones para facilitar su uso.

Elección de un navegador

En 2021 hay tres autovías con varias carreteras adyacentes:

Blink

Chrome es el "gold standard"; todos los conocemos, y el resto de navegadores que usan Blink se comparan a él. Está casado con Google, pero dentro de lo que cabe es configurable para que no te dé la brasa mucho con iniciar sesión. Quitando eso, es espartano y se quita de en medio. No suele haber sorpresas desagradables a la hora de actualizarlo (con algunas excepciones). Lo de la falta de sorpresas desagradables puede sonar raro pero es una excepción en el mundo de los navegadores, como veremos más adelante.

La versión de Blink de Microsoft Edge ("Edgium") comenzó su andadura como un fork de Chrome sin rollos de Google y una integración con Windows un poco más currada. Pero Microsoft es Microsoft y con el paso del tiempo no han podido evitar añadir más y más cosas hasta llegar al punto en que uno se plantea si realmente merece la pena usar Edgium en lugar de Chrome.

Chrome implementó recientemente una funcionalidad para agrupar pestañas que, si la habéis usado, habréis visto que es intuitiva y bonita; Edge en su lugar tiene otra funcionalidad que llaman "Collections" y que es mucho más compleja y lenta. En versiones recientes también reemplazaron la página del historial con un desplegable que es lento y que, al contrario que la página de historial, no pone el foco en el buscador por defecto. Cuando quiero buscar algo en el historial, pulso Ctrl+H y escribo inmediatamente, cosa que funciona hasta en Firefox, pero Microsoft ha decidido que tengo que coger el ratón para pulsar el icono de la lupa si quiero buscar. Son estos pequeños cambios sin sentido los que acaban cansándome.


Por no hablar del obvio interés que tienen por que uses Bing. Mi interés es de cero, como es natural. Por ejemplo, añadieron una funcionalidad para buscar algo en una barra lateral, pero está "hardcodeada" para usar Bing, y por lo tanto no la puedo usar nunca:


Durante mucho tiempo usé Brave, pero tenían la misma costumbre de Edge de incordiarme cada dos por tres. Brave tenía alguna cosilla inútil activada por defecto, como lo de dar propinas a las web con criptomonedas, pero se podía desactivar. Para mí la gota que colmó el vaso fue cuando decidieron añadir un formulario para comprar criptomonedas con Binance a la página de nueva pestaña. 

Se podía desactivar, claro, pero no quiero estar cada x semanas desactivando cosas nuevas. Al final acabas con un mal gusto en la boca porque sientes que el navegador está en tu contra. Como dije más arriba el navegador es la aplicación que más uso y no quiero pasarme el día usando software que es hostil.

También di varias oportunidades a Vivaldi. El equipo de Vivaldi decidió que era apropiado reescribir toda la interfaz del navegador desde cero usando JavaScript. El resultado es una interfaz exasperantemente lenta y a la que le faltan funcionalidades básicas. Voy a poner un ejemplo: para buscar algo en Google, o para abrir un enlace en una nueva pestaña, arrastro texto o un enlace a la barra de pestañas, así:


Tal cosa funciona en todos los navegadores menos Vivaldi. Cualquier persona con dos dedos de frente y un poco de experiencia sabe que reescribir una interfaz es muy mala idea porque tienes que implementar los innumerables comportamientos que tiene la interfaz anterior. Igual que este ejemplo hay muchos más, pero de memoria no puedo mencionar ninguno porque hace ya muchos meses que no uso Vivaldi.

Con respecto a los navegadores Blink en general, hubo mucho revuelo cuando en Google decidieron que eliminarían la API que las extensiones como uBlock Origin usan para inspeccionar y bloquear peticiones HTTP y la sustituirían por una más básica, similar a la que tiene Safari. En su momento recuerdo que algunos forks de Chrome se posicionaron en contra de este cambio y anunciaron que no lo implementarían. Cuando estos cambios se hicieron públicos pensé que tendría que investigar más al respecto, pero llevo algún tiempo usando Chrome y no he encontrado ninguna página que muestre anuncios que no se puedan bloquear, así es que es posible que el revuelo haya sido un poco exagerado. 

Gecko/Firefox

Por desgracia no hay mucho que decir con respecto a Firefox. Al igual que los forks de Chrome, a cada nueva versión meten nuevas funcionalidades hostiles y, lo que es peor, publicidad. La parte positiva es que hay una versión LTS llamada Firefox ESR que se actualiza cada mucho tiempo y que se puede usar para escapar los cambios continuos que incluyen en la versión normal.

Para mí, Firefox acaba siendo un navegador similar a Brave: incluye un bloqueador de publicidad y rastreo que es completamente superfluo teniendo en cuenta que uBlock Origin es la primera extensión que instalo en cualquier navegador, y con las nuevas versiones meten publicidad y rediseñan partes de la interfaz sin necesidad. A esto hay que sumar la muerte de las extensiones XUL. Tras todos estos años, Firefox no es más que una versión más lenta de cualquier fork baratucho de Chrome.

WebKit/Safari

Safari es el navegador que usaba en Mac. Creo recordar que no tenía soporte de WebExtensions y la única extensión que usaba era un fork sin soporte de uBlock Origin. Aun así es tan, tan rápido que merece la pena probarlo. Habrá a quien no le guste Safari por la falta de funcionalidades, pero para algunos puede ser un punto a favor.

Algo más

Microsoft tiró la toalla con el viejo Edge de EdgeHTML y Chakra. Probé Edge en su momento y me pareció un navegador rápido y sólido, pero para mí la interfaz Metro (o como la queramos llamar) lo mató. Las interfaces Metro de Windows son feas, poco intuitivas, y sobre todo lentas. El retraso que tenía Edge a la hora de abrir una nueva pestaña era completamente inaceptable. Microsoft podría haber ganado mucho mercado con Edge si este hubiera usado una interfaz Win32 y hubiera tenido soporte para WebExtensions.

Para garantizar una competencia sana en la web, debería haber más motores de renderizado y de JavaScript. A Google les interesa mantener el control de la web mediante Chrome, cosa que consiguen hinchando los estándares web hasta el punto que nadie más (ni siquiera Microsoft) puede gastar dinero para mantener un motor web. Mozilla debió haber usado su cuota de mercado para plantar cara a Google en este sentido, pero con el tiempo ha quedado claro que es una organización inútil y disfuncional. Ya es tarde y está claro que Firefox morirá. Apple sí ha plantado cara a Google negándose a, por ejemplo, implementar la API de notificaciones, pero cuando Firefox no exista no sé qué hará Google con tal poder. Seguramente el tema acabe en los tribunales.

Configuración

La configuración de un navegador no tiene mucha miga. En mi caso:

  • Desactivo todas las funcionalidades de inicio de sesión, etc. También desactivo los servicios de ayuda a la navegación, telemetría, etc. siempre que sea posible.
  • Desactivo las cookies de terceros. No sirven para nada bueno.
  • Deniego los permisos para usar APIs hostiles como notificaciones, geolocalización, micrófono y cámara, etc.
  • Desactivo las funcionalidades de bloqueo de publicidad, rastreamiento, etc. porque prefiero gestionarlas desde uBlock Origin.

Extensiones

Estas son algunas de las extensiones que uso en todos los navegadores.

Cookie AutoDelete

Esta extensión elimina cookies, localstorage, service workers, etc. de las webs en cuanto cierras la pestaña. En teoría suena muy bien, pero en mi experiencia por restricciones de la API de extensiones no consigue eliminar todas las trazas de todas las webs. Aun así prefiero dejarla puesta. Por ejemplo, gracias a esta extensión no recibo sugerencias en YouTube basadas en los vídeos que he visto anteriormente, cosa que no me gusta.

Enhancer for YouTube

Unas cuantas funcionalidades automáticas para YouTube: desactiva la reproducción automática del siguiente vídeo, abre los vídeos a ancho completo por defecto, permite aumentar el volumen de los vídeos a más del 100%...

Imagus

Esta extensión muestra todas las imágenes que encuentras en la web en grande. Es capaz de convertir las URLs de miniaturas en URLs a tamaño completo, muestra las imágenes que hay en enlaces con sólo pasar el cursor por encima, etc. También tiene atajos para girar y espejar imágenes y abrirlas en una pestaña nueva.

Hace muchos años se usaba otra extensión similar llamada HoverZoom, pero le metieron malware o algo así y murió violentamente.

LocalCDN

Contiene copias de muchísimos de los scripts que hay en CDNs como la de Google para que carguen más rápido y sin hacer peticiones HTTP a servidores de terceros.

Redirector

Permite crear reglas de redirecciones de URLs. Tengo creada una lista de reglas para que, por ejemplo, al pinchar en un enlace de la versión móvil de Wikipedia se me redirija a la versión completa. Aquí está la lista de redirecciones que uso yo:

https://gist.githubusercontent.com/wodim/091c90244c34f075766f3a8c8363faca/raw/Redirector.json

Reverse Image Search

Muy útil para encontrar la versión original de una imagen, o la misma imagen a mayor resolución. Viene con varios servicios de búsqueda de imágenes configurables. En mi caso uso Google, TinEye, Bing y Yandex.

Tabby Cat/Empty New Tab Page

Todos los navegadores han acabado incorporando una lista de las webs que más visitas en la página de nueva pestaña. Me parece una trampa mortal porque acabas pinchando casi sin querer y perdiendo mucho el tiempo. Puedes mejorar mucho la página de nueva pestaña poniendo un gato de colores.

uBlock Origin

No hay mucho que decir al respecto de esta extensión. Si sólo pudiera usar una extensión tendría que elegir esta. Por defecto viene con varias listas activas, pero suelo activar varias más de las que vienen incluidas.  Además, añado la de "I don't care about cookies":

https://www.i-dont-care-about-cookies.eu/abp/

Y también tengo mi propia lista para adecentar varias de las webs que más uso:

https://gist.githubusercontent.com/wodim/22e0bb6fc9615e3f78b21fe90fc08a26/raw/adblock-list.txt

Violentmonkey

Esta extensión permite ejecutar userscripts en páginas. Los userscripts son scripts de JavaScript que llevan una cabecera que dice en qué páginas se deben ejecutar y con qué permisos. Violentmonkey los incluye en las páginas necesarias y una vez allí pueden hacer y deshacer a su antojo.

Escribo userscripts de vez en cuando para facilitar mi navegación. Como ejemplo de lo que un userscript puede hacer, aquí os dejo este que elimina el mensaje que YouTube saca cada vez que abres un vídeo pidiéndote iniciar sesión.


https://stackoverflow.com/a/63803884

Web Archives

Te permite abrir cualquier enlace con WaybackMachine, archive.is y otros proveedores.

Móvil

En el móvil no me gusta complicarme mucho. En iPhone uso Safari con AdGuard como bloqueador de publicidad. En Android ni Chrome ni ninguno de los forks de Chrome permiten instalar extensiones, así es que uso Brave y su bloqueador de publicidad por defecto. No es perfecto, pero no navego mucho en el móvil, así es que me da igual. La versión de Firefox para Android es patética.