Etiquetas

jueves, 8 de marzo de 2012

Aplicaciones: háganlas más verdes

 Una parte del mundo, incluida la Argentina, desterró las lámparas de tungsteno por considerar a la invención de Edison un artefacto que contribuía a la contaminación debido a su baja eficacia eléctrica.
¿Acaso el mismo paradigma no debiera aplicarse nuevamente a las aplicaciones de software? Después de todo, ciclos de CPU desperdiciado por aplicaciones que despilfarran recursos contribuyen a aumentar el consumo eléctrico. En este artículo, algunos ejemplos que muestran que en el desarrollo de software por ahora, el camino elegido es el inverso.
El progreso está lleno de ejemplos de lo que Umberto Eco llamó "pasos de cangrejo". A veces ciertos desarrollos empujan a la humanidad hacia adelante, pero en ciertas ocasiones algunos avances traen también con ellos algunos pasos hacia atrás.
Hubo un tiempo, cuando las computadoras tenían mucho menos poder de cómputo de lo que tienen hoy en día, que los programadores tenían que ingeniárselas para escribir código que cuidara al máximo los ciclos de CPU, es decir el tiempo que la unidad central de proceso debe destinar a la aplicación, para no comprometer el proceso de otras que corren de manera concurrente.
El progresivo aumento del poder de computación de los procesadores permitió que paulatinamente la preocupación por el "consumo" de CPU fuera cayendo en el olvido.
Este problema no es ajeno a las páginas web. Para un ejemplo basta abrir la página inicial del diario Clarin (www.clarin.com) y verificar la cantidad de recursos incrustados "multimedia" y la cantidad de memoria y cpu utilizada para mostrarlos en la pantalla. Con todo, en PCs actuales la página se ve cargar rápidamente... En muchas ocasiones, el despilfarro de estos recursos web viene dado por el uso de herramientas que no son estándares de la industria, sino software desarrollado por ciertas compañías que por su recurrencia en el uso se han vuelto estándares de facto. Acaso el advenimiento de html5 venga a reestablecer el equilibrio -en palabras Jedi- en el universo web.
La energía consumida por los procesadores -las computadoras- es proporcional a los ciclos de CPU "consumidos", que se pueden verificar como "porcentaje" de CPU utilizada en los gráficos de los monitores del sistema o en utilidades como top en los sistemas *nix. Por lo tanto hacer aplicaciones más eficientes, contribuiría directamente a reducir el consumo eléctrico. A escala de los individuos uno podría pensar... "no cambia nada", pero a la escala de grandes agregados. Es la misma historia que las bombitas incandescentes. Si su salida contribuyó a la reducción del consumo, entonces hacer aplicaciones y estándares eficientes debería hacerlo también.

¿Por qué no volver a la filosofía UNIX? Aplicaciones modulares, que hagan su tarea y sólo su tarea per de la mejor manera posible

Hace pocos días dediqué algo de tiempo a un proyecto de fin de semana.
Como los equipos de audio hogareños se volvieron horribles salvo que uno disponga del dinero suficiente como para equipos de alta gama (el segmento llamado "high-end"), decidí hacer un "media" center de audio. Sólo un nombre complicado para una "caja" con un linux embebido (sin teclado ni monitor) capaz de reproducir los principales formatos de audio: CD, audio comprimido (flac, mp3, ogg, aac, etc) y streaming de radios en internet. Todo, controlable desde un control remoto infrarojo o desde un smartphone.
Una vez más, al menos para mí, Linux y los sistemas open source me permitió "ponerle diversión al audio hogareño", tal como reza el excelente lema de DistroWatch.
En breve, voy a tratar de anotar todo lo que pueda y liberar bajo GPL para que el que quiera pueda instalarse y mejorar esta caja de audio.
El punto fuerte de los sistemas embebidos o como quiera llamarse un artefacto como este es no utilizar interfaz gráfica, simplemente porque la idea es no usar monitor sino algún otro dispositivo de salida como un display lcd.
Dediqué un tiempo a agregar scripts para reproducir las estaciones de flujos de radio (streaming) preferidas. Con la mayoría el trabajo fue fácil. Con la nueva Vorterix costó un poco de trabajo.
Para el streaming de radio ellos eligieron una solución propietaria llamada Octoshape. La buena noticia para el mundo Linux es que el fabricante de dicho soft ofrece soporte para GNU/Linux como para Mac OS http://www.octoshape.com/?page=get_octo/get_octo, además el fabricante da soporte rápidamente a consultas.
Según las palabras de sus productores, Vorterix es más que una radio. Es algo así como una plataforma multimedial. Eso está perfecto, hacer radio más imagen sin convertirse en televisión. Mi única y modesta opinión es que sin dejar de ser multimedia no se olviden de los que quieren escucharla como si fuera una radio, es decir sin tener que cargar en el navegador y desperdiciar recursos que no quieren utilizar en ese momento.
Finalmente, fue posible usar Vorterix desde la consola, esos detalles para un próximo post.

No hay comentarios.:

Publicar un comentario