Todos sabemos que la tecnología nos ha simplificado la vida, especialmente en las últimas décadas. Pero su capacidad de reunir en un dispositivo digital las funciones de varios análogos nos ha creado un dilema insostenible, nos encontramos en un momento lleno de productos descartables y un exceso de información basura. ¿Existirá alguna manera de solucionarlo?
Claramente las tecnologías anteriores van siendo abandonadas, pero los productos generados para ellas siguen existiendo. El abandono de estas tecnologías anteriores no es completamente necesario, debido a la retrocompatibilidad que pueden llegar a ofrecer productos actuales (como es el caso de las consolas de Nintendo, que permiten la carga de juegos de la generación anterior). Pero hay casos en que la retrocompatibilidad no es opción, por lo que quedan únicamente las unidades circulando en el mercado de segunda mano, que ven cada vez más reducido su número debido a fallas técnicas o perdidas totales (como un incendio), ¿Cuántos programas existen únicamente para hardware que ya no se produce? Muchos. Basta con pensar en las consolas de videojuegos y arquitecturas de computadores antiguas como las de 8 y 16 bits y los procesadores Motorola disponibles en los Macs anteriores a la generación PowerPC. Aquí es donde entran en juego los emuladores, pedazos de código que mantienen con vida las horas de dedicación de los desarrolladores para escribir todas esas aplicaciones que dejan de distribuirse y son condenadas al olvido.
Imagínense si, por ejemplo, la consola PlayStation 4 de Sony permitiese la emulación de la PlayStation 2 o de consolas de empresas que ya no producen hardware, como Atari o Sega. Podríamos acceder fácil e instantáneamente a un catálogo mucho más rico, con precios reducidos donde no se tendría que pagar por el transporte y materiales de fabricación, solo la licencia para su uso. Nintendo supo llevar un intento parecido a la práctica con su tienda de juegos «Virtual Console», dónde distribuye juegos licenciados junto a un emulador específico permitiendo disfrutarlos en consolas actuales sin ver degradada su jugabilidad.
Aunque si nos enfocamos en el tema del software, también tenemos presente el problema de las actualizaciones. Muchas veces se libera una única versión que acumula cientos e incluso miles de parches a lo largo de su vida. Tal es el caso de, por ejemplo, Windows XP. Este sistema operativo llegó hasta el Service Pack 3, que incluía la mayoría de los cambios aplicados al sistema hasta esa fecha, pero después continuó recibiendo modificaciones que, en caso de querer reinstalarlo, se deben aplicar desde un servidor que no se sabe hasta cuando lo mantendrán. Sería espectacular que las compañías, al finalizar el ciclo de un producto, liberasen un instalador que incluya todos los parches aplicados dejando de lado la necesidad de tener que brindar las actualizaciones en múltiples archivos a instalar.
Cambiando de tema nos encontramos con internet. El uso masivo de la red ha llevado a información redundante y muchas veces errónea que no es eliminada por sus creadores, quienes tras publicarla la dejan simplemente olvidada. ¿Quién no ha tenido dificultades buscando un archivo en la red y encontrándose con cientos de páginas que contienen el mismo enlace muerto? No hay ningún mecanismo de limpieza ni cultura en la comunidad de usuarios que haga frente al contenido residual que va acumulándose. Si bien es cierto que hay quiere compartir contenido y armarse una imagen en internet, van compartiendo publicaciones muchas veces a su nombre de contenido que recibe actualizaciones por parte del autor. ¿Cómo sabremos cuál es la versión original y revisada de una publicación? Desperdiciando grandes cantidades de tiempo en periciar los datos ofrecidos en el sitio, llegando en ocasiones a abandonar la tarea en el camino o eligiendo erróneamente la fuente a ocupar.
Para terminar, hay que hacer notar la necesidad de mejorar el rendimiento de los programas. Muchas aplicaciones podrían ver incrementado su rendimiento mediante un eficiente consumo de recursos, lo que redunda no solo en mayor velocidad para la aplicación, sino también en su posibilidad de ejecución en sistemas con menor cantidad de recursos, menor pérdida de tiempo esperado la carga,un funcionamiento más fluido del sistema en general y, finalmente, en un menor consumo de energía.