La digitalización plantea muchas oportunidades para las sociedades, optimización de procesos, ahorro de tiempo y mejoras en la logística, pero también desafíos, como la creación de basura electrónica, la obsolescencia programada o el alto consumo energético.
Por ejemplo, un estudio de la empresa francesa Shneider Electric señala que la Inteligencia Artificial (en general) consume actualmente unos 4.3 Gigavatios (GW) de energía en todo el mundo. Esta cifra equivale a la cantidad de energía consumida por algunos países pequeños, siendo drástica la necesidad de acción. La empresa además estima que, si el crecimiento se mantiene, para el año 2028 el consumo de energía por la IA será de entre 13.5 y 20 GW, lo que supondría un crecimiento de hasta el 36%.
Por otra parte, un estudio publicado por el Uptime Institute sugiere que un gran centro de datos puede consumir hasta 25 millones de litros de agua cada año y el PNUMA (Programa para el Medio Ambiente de las Naciones Unidas) calcula que, en todo el mundo, cerca de 50 millones de toneladas de aparatos electrónicos son desechados anualmente.
En este contexto, nace la programación sostenible, como una respuesta al inexorable avance de lo digital y sus impactos.
La programación sostenible se refiere a la creación de software y aplicaciones que se diseñan y desarrollan teniendo en cuenta su impacto en el medio ambiente y la sociedad en general, por eso es de gran importancia que la programación sostenible pueda ayudar a reducir estos impactos ambientales.
“La ingeniería de sistemas puede apoyar la sostenibilidad ambiental de diferentes maneras, una de ellas es creando software o aplicaciones que permitan utilizar la información de forma correcta o gestionar el cuidado al medio ambiente mediante la acción que este programa pueda realizar”, explica Giovanna Álvarez, docente de la carrera de Ingeniería de Sistemas de la Universidad Franz Tamayo, Unifranz.
Álvarez explica que, por ejemplo, se han desarrollado con esta lógica sistemas de control de reforestación en áreas afectadas o sin vegetación, seguimiento y cuidado de protección de áreas verdes, santuarios, áreas reforestadas, entre otros.
“Por otro lado, también están los sistemas expertos que se pueden aplicar al campo de la agricultura, como por ejemplo los sistemas expertos en cuidado de campos de cultivos según el tipo, sistemas expertos en fertilizantes de cultivos y sistemas expertos en insecticidas para los cultivos”, agrega.
La experta indica que la tecnología es clave para mejorar la forma en la que nuestras actividades diarias afectan al medio ambiente, aportando herramientas inteligentes que nos ayuden a minimizar nuestra huella en el planeta. Como, por ejemplo: transformación digital para reducir la cantidad de papel, coches eléctricos para reducir el dióxido de carbono de los vehículos a combustión, casas y edificios inteligentes para reducir el consumo de energía eléctrica siendo más eficientes, energías renovables para obtener energías limpias y eficientes y control ambiental para garantizar que la legislación y las normativas que protegen el entorno se cumplan.
Por otra parte, más allá de sus aplicaciones, la programación más verde y ecológica implica considerar el impacto ambiental en todas las etapas del ciclo de vida del software, desde el desarrollo hasta la implementación y el uso. Es un paso importante hacia un futuro tecnológico más sostenible.
Este control se puede lograr a través de la aplicación de ciertas medidas como la eficiencia energética, la optimización de recursos, el reciclaje de hardware y la programación sostenible propiamente dicha.
Como primera medida, el código de programación sostenible se escribe pensando en la eficiencia energética. Esto significa que el software está diseñado para utilizar el menor número posible de recursos y energía. Del mismo modo, el uso de algoritmos de compresión puede ayudar a reducir el tamaño de los archivos y disminuir la cantidad de energía necesaria para transferir y almacenar datos.
Asimismo, se busca la optimización del código para que éste pueda ser adaptado y reutilizado de manera eficiente, por ejemplo, se pueden utilizar algoritmos y estructuras de datos eficientes para reducir el número de recursos que consume un programa.
Optimizar los recursos también implica el uso de energías renovables en el desarrollo y en los servidores. Además de optimizar el código, también es importante tener en cuenta el impacto ambiental de los servidores utilizados para alojar y ejecutar las aplicaciones.
Por otra parte, es necesario implementar el reciclaje de hardware. La reutilización de hardware antiguo puede reducir la necesidad de construir hardware nuevo y, por tanto, la huella de carbono de la programación.
Además, el reciclaje de hardware puede ayudar a reducir la cantidad de residuos electrónicos que se acumulan en los vertederos.
Empresas como Meta (Facebook) y Alphabet (Google) implementan estas prácticas en sus centros de datos y con su desarrollo de software.
Por ejemplo, según información de la misma compañía, Google ha sido un líder en la implementación de energía renovable en sus centros de datos. En 2017, la compañía anunció que alcanzó su objetivo de operar al 100% con energía renovable para alimentar sus operaciones globales. Esto significa que todas las actividades, incluyendo sus enormes centros de datos, funcionan con electricidad generada a partir de fuentes renovables, como la solar y la eólica.
Google también ha implementado técnicas de programación para hacer que sus centros de datos sean más eficientes en términos energéticos.
Facebook también ha invertido en energía renovable y eficiencia energética en sus centros de datos. La compañía se ha comprometido a alcanzar la neutralidad de carbono en todas sus operaciones globales, incluyendo sus centros de datos. Han trabajado en estrecha colaboración con los desarrolladores de proyectos de energía renovable para construir parques eólicos y solares que alimentan sus operaciones.
Además, ha desarrollado su sistema de enfriamiento de centros de datos que utiliza aire exterior para enfriar servidores, en lugar de sistemas de aire acondicionado intensivos en energía.