Philip Withnall de Sin fin
Según el ponente, a pesar de que el software libre se ofrece de forma gratuita, tiene un precio indirecto: el impacto del desarrollo en el medio ambiente. Por ejemplo, la infraestructura de servidores del proyecto, los servidores de integración continua, la Fundación GNOME y las conferencias de desarrolladores requieren electricidad y materiales que producen emisiones de dióxido de carbono. Las aplicaciones también consumen energía en los sistemas de los usuarios, lo que también tiene un impacto indirecto en el medio ambiente.
La introducción de una nueva métrica ayudará a mostrar el serio compromiso del proyecto GNOME con la preservación del medio ambiente. Entre los factores para calcular la métrica se encuentran el tiempo de funcionamiento de la aplicación, la carga en la CPU, el almacenamiento y la red, y la intensidad de las pruebas en el sistema de integración continua. Para estimar la carga, se propone utilizar los mecanismos de contabilidad sysprof, systemd y powertop, cuyos datos se pueden convertir en el equivalente de las emisiones de dióxido de carbono. Por ejemplo, 1 hora de carga intensiva de la CPU se puede estimar en aproximadamente 6 gramos.
Para reducir el costo del carbono, se anima a los desarrolladores a implementar optimizaciones como el almacenamiento en caché, mejorar la eficiencia del código, reducir la carga de la red y utilizar imágenes predefinidas en un sistema de integración continua, contribuyendo así a la lucha contra el calentamiento global. Por ejemplo, el uso de imágenes de Docker listas para usar en un sistema de integración continua reducirá el valor de la métrica 4 veces.
Para cada lanzamiento importante, se propone calcular el “Costo de Carbono” acumulativo, sumando las métricas de todas las aplicaciones, así como los costos del proyecto GNOME, la Fundación GNOME, los hackfests y el sistema de integración continua. Esta métrica permitirá llevar a cabo el desarrollo teniendo en cuenta el impacto sobre el medio ambiente, monitorear la dinámica y realizar las optimizaciones adecuadas.
Fuente: opennet.ru