Cómo funcionan las barras de progreso y por qué son inexactas la mayor parte del tiempo

Cómo funcionan las barras de progreso y por qué son inexactas la mayor parte del tiempo

Desde la primera GUI en Windows, hemos vivido con la realidad de las barras de progreso. Siempre fueron como un amigo procrastinador, diciéndote que casi han terminado con algo cuando, en realidad, probablemente estén lejos del final. Hay una sensación de frustración que te llena cuando lees «99%» en la barra de progreso mientras te dice que le queda un segundo para terminar una tarea, durante los últimos cinco minutos. Entendemos su frustración, por eso voy a explicar exactamente por qué suceden estas cosas.

Primero, veamos cómo funcionan las barras de progreso

Una barra de progreso se hace golpeando un cuadro de diálogo y colocando una barra en él. Esa barra se llena de acuerdo con el porcentaje de progreso realizado en la realización de una tarea, de ahí el nombre de «barra de progreso». Los programadores hacen que las barras de progreso funcionen atribuyendo ciertos hitos durante una tarea a un porcentaje. Entonces, una vez que una barra de progreso llega a la tercera parte de una tarea que contiene 100 partes, sabe que tiene que completarse solo un tres por ciento.

A veces, los programadores también pueden poner un temporizador en sus barras de progreso. Esto determinará (siempre de manera imprecisa) cuánto tiempo llevará una tarea específica hasta que finalice. Usando el ejemplo anterior, digamos que las primeras tres partes de nuestra tarea de 100 partes se realizaron en tres segundos. Eso deja un minuto y 37 segundos (97 segundos en total) restantes. Pero esto funciona solo en un mundo perfecto. Lo explicaré a continuación.

Por qué el bar está atascado

Las barras de progreso son notorias por estar atascadas en ciertos puntos. Es terriblemente frustrante, pero hay una razón detrás de toda esta locura. Cuando una barra de progreso mide el progreso de una tarea, utiliza ciertos criterios. Por ejemplo, supongamos que estamos copiando 1000 archivos. Cada uno de esos archivos probablemente tenga un tamaño diferente. Algunas personas dividirían 1000 entre 100. Suena bien, pero no tiene en cuenta las diferencias en el tamaño del archivo. ¡Algunos archivos pueden tener un par de MB, mientras que otros pueden tener hasta 10 GB!

pbarstuck-timeleft

También puede dividir el tamaño total de todos los archivos por 100. Suena práctico y más preciso, pero sigue siendo un fracaso. El método no tiene en cuenta las fluctuaciones de velocidad que experimenta un disco duro al copiar diferentes tipos de archivos, o al copiar archivos mientras se realizan otras tareas breves. Al final, terminas con una barra que solo te muestra qué tan lejos has llegado, pero no cuánto puedes esperar para que termine la tarea.

Los discos duros tienden a copiar archivos más pequeños (o archivos más grandes, pero físicamente fragmentados) más lentamente de lo que copian fragmentos de datos más grandes. Esto se debe a que el proceso de buscar nuevos segmentos dentro de sus platos físicos es más tedioso cuando se accede a 100 archivos pequeños en comparación con el proceso de buscar dos grandes fragmentos de un archivo más grande. Lo mismo podría decirse de las entradas de registro. Varían en longitud y sofisticación.

Algunas reflexiones finales

Prácticamente todo en su computadora tiene tantas variables adjuntas que es imposible determinar con precisión el progreso de una tarea. Te queda una barra inútil en la pantalla que está ahí para evitar que te dé un ataque. La pelea ha terminado. Su obstinada computadora siempre vencerá cualquier intento de predecir con precisión algo que, en el vacío, de otro modo se habría completado en el momento oportuno. Realmente no puedes hacer nada con tus barras de progreso, ¡pero al menos sabes por qué actúan de manera tan frustrante!

Ah, y aquí hay un pequeño juego interesante relacionado con las barras de progreso: Guerras de progreso.

Si puede pensar en formas más precisas de predecir tareas, ¡asegúrese de dejar un comentario a continuación!

Barra de progreso o carga oscura por BigStockPhoto

Experto Geek - Tu Guía en Tendencias Tecnológicas