SuperGeek.cl
Síguenos:

¿Por qué la barra de progreso de Windows falla tanto sus cálculos?

Podía decir dos días o 39 años y en verdad no demoraba más de 10 minutos.

Quienes usamos Windows pasamos una gran cantidad de tiempo viendo la barra de progreso del sistema operativo. Ya sea copiando o borrando archivos, descargando o instalando algo, mover (borrar, descargar o instalar) nuestros ficheros digitales de un lugar a otro es algo de lo que no podemos escapar y cada vez que lo hacemos vemos una familiar ventana: la barra de progreso.

Aquel es un elemento que ha estado presente -sin muchos cambios- prácticamente desde las primeras versiones de Windows y, en pocas palabras, es la representación gráfica de cuánto tiempo queda para que la tarea que le pedimos ejecutar a nuestro computador se complete, aunque, más veces de las necesarias, el tiempo que nos dice no es el correcto.

Respecto a esto, un extrabajador de Windows llamado Dave Plummer tiene la respuesta. Él fue el encargado del desarrollo de la barra de progreso desde Windows '95 hasta su salida de la empresa en 2003, además de ser también el creador del Administrador de tareas el soporte .zip para Windows, entre otras cosas.

Luego de ver un post en la red social X (antiguamente conocida como Twitter) al respecto de por qué el cálculo era tan errático, decidió responder al respecto en su canal de YouTube, Dave’s Garage.

En el video, que podrán encontrar al final de esta nota, no solo explica por qué la barra no es capaz de dar tiempos estimativos correctos, sino que también Dave pidió que "lo culpen" directamente por el hecho de que la barra de progreso sea tan inexacta y reveló por qué eso sucede. Incluso, contó que su última misión antes de dejar la empresa del sistema operativo de la ventana fue, precisamente, tratar de mejorar dicha predicción. 

Dicho de manera simple, el "mal cálculo" se produce porque la interfaz (conocida como shell) de Windows estima el tiempo que le va a llevar realizar la acción que le acabas de pedir tomando en cuenta solo lo que acaba de suceder o lo que está pasando.

Pongamos un ejemplo: si queremos mover un grupo de pocos archivos pequeños, es probable que la shell haga una estimación realista sobre cuánto tiempo tomará este proceso, ya que se basará en cuánto le tomó mover el primer archivo y, con ese número en cuenta, calculará para el resto.

Si bien la interfaz está "al tanto" del número total de bits que debe mover o copiar, es solo uno de los factores que influyen en el resultado a la hora de predecir cuánto tiempo tomará el proceso.

La mayoría de las veces no es algo tan simple, ya que la shell no puede saber exactamente con cuántos elementos de hardware y software contará para poder realizar el cambio. Cuánto ancho de banda estará libre en los minutos que le va a tomar realizar la operación, si hay cambios en las condiciones de la red -básicamente, si se cae internet-, si la CPU está funcionando al 100 por ciento de su capacidad (aplicaciones abiertas que pueden estar demorando al sistema), si necesita reescribir la caché o si el disco de destino está lleno o se ha ralentizando con el uso y el tiempo, por nombrar algunas de las cosas que constantemente cambian durante el proceso y pueden complejizar el cálculo.

En términos concretos, para nosotros como usuarios, es absolutamente irrelevante saber el tamaño de los archivos y la velocidad de escritura/lectura de nuestros discos, ya que no podemos realizar el cálculo de la misma manera que lo hace la interfaz y, obviamente, vamos a estar equivocados porque, para efectos prácticos, la shell tampoco lo sabe.

Y por ello es que Plummer compara la operación de cálculo de la barra de progreso con un viaje en transporte público: Windows comienza a calcular el viaje de un punto A hacia un punto B desde el preciso instante en que, por ejemplo, caminas desde tu casa al Metro y, una vez que estás dentro del vagón, la estimación de tiempo que te había hecho cambia de minutos, a días, a horas y, finalmente, segundos. Esto es porque ya que ha dejado atrás procesos (caminata, tráfico) de lado para poder dar, al fin, un cálculo más limpio.

A fin de cuentas, Windows solo puede hacer estimaciones de tiempo en base a lo que sabe en el momento que le pides mover archivos y es por eso que tu barra puede, a veces, decir que va a demorar 39 años en mover un archivo de 180 MB, aunque ya es casi una rareza en estos tiempos