Principios básicos del ‘green software’. Estos principios forman un entendimiento compartido dentro de la comunidad, sobre lo que significa el desarrollo sostenible de software.
Hay seis características que deben tenerse en cuenta para desarrollar este tipo de ‘software’:
- Eficiencia en emisiones de carbono: emitir la menor cantidad posible de dióxido de carbono (CO₂)
- Eficiencia en el consumo de energía: usar la menor cantidad posible de energía.
- Conciencia sobre el carbono: hacer más cuando la electricidad sea más limpia y hacer menos cuando la electricidad sea más sucia.
- Eficiencia del ‘hardware’: utilizar la menor cantidad posible de carbono incorporado.
- Medición: lo que no se puede medir, no se puede mejorar.
- Compromisos climáticos: comprender el mecanismo exacto de la reducción de carbono.
Pero, ¿cómo se traducen estos principios en la práctica?
En lo que a electricidad se refiere hoy en día, el ‘software’ ya no demanda sólo la electricidad de nuestros equipos (móviles, tablets, portátiles, televisores, etc.). También requiere consumo en otros componentes, como la existencia de redes de telecomunicaciones para transportar la información desde los ordenadores que proveen servicios —lo que conocemos como “la nube”— hasta sus destinatarios.
La combinación de estos elementos, sumado a potenciales millones de usuarios, hacen que cualquier fracción de vatios/hora ahorrada en un servicio, o en el ‘software’ usado para conectar con ellos, redunde en ahorros y menores emisiones al multiplicar por el número de veces que ese servicio se invoca.
Por otra parte, cuando se crea ‘software’ que solo puede funcionar en el ‘hardware’ más moderno, como hasta ahora, también se está siendo menos ecológico. Se está estimulando el descarte de dispositivos más antiguos en favor de otros nuevos, generando así residuos electrónicos cuando no siempre es necesario. Se pueden aprovechar los dispositivos si el ‘software’ es más eficiente o si está diseñado para no tener demasiados requisitos.
Sin embargo, desarrollar ‘green software’ no es algo “universalizable”. Existe una tremenda variedad de desarrollos ‘software’ con diferentes objetivos, que pueden ser llevados a cabo siguiendo multitud de metodologías y finalmente implementados con muy diferentes tecnologías.
Por tanto, no hay una receta mágica y única para pasar de ‘software’ no verde a ‘software’ verde. De acuerdo con otros especialistas, existen distintos ‘frameworks’ de desarrollo: no siempre los más populares son los más eficientes en consumo de recursos.
Beneficios
Pero lo importante no solo es definir nuevas metodologías de desarrollo más verdes, sino luego aplicarlas en el desarrollo de sistemas de la compañía y actualizar los sistemas más antiguos y menos eficientes. Es importante que estas prácticas se adopten a nivel empresarial, ya que es fundamental que las mismas se incorporen dentro del proceso de desarrollo como parte de sus procesos de negocio.
Resulta evidente que dicha transformación implica una importante inversión para las organizaciones, pero puede realizarse de forma gradual. No hay que cambiar por completo el modelo de una vez cuando la empresa ya existe.
Hay que plantearse los cambios de manera estructural. Desde los procesos de negocio, de forma incremental, controlada y valorando, en cada paso que se da, que los beneficios de consumo justifican los cambios a abordar. Y, por supuesto, buscar los cambios más adecuados a la empresa y al tipo de ‘software’ que aplica.
Se puede empezar con pequeños cambios hasta poder llegar a los cambios más globales. Lo importante es comenzar y conseguir introducir el consumo energético en el desarrollo de las soluciones ‘software’, apostando por el ‘green software’.
Otro punto esencial antes de plantear este tipo de cambios es la necesidad de iniciar un cambio cultural entre los desarrolladores en el que la mejora de los indicadores de sostenibilidad del ‘software’ que desarrollan sea uno de los KPIs que mida el resultado de su trabajo, algo que hasta el momento nunca se ha considerado en la industria.
Los beneficios para la empresa no son pocos. Podrían agruparse en tres categorías:
Menores costos
Al emplear sistemas más eficientes energéticamente —es decir, que utilizan menos energía—, disminuyen los gastos. La implicación directa de una empresa que implemente prácticas de ‘green coding’ será la reducción de los costes operativos a largo plazo debido a la eficiencia energética, ya sea en su propio Data Center o en la Nube. A nivel de costos también es relevante medir el impacto en la huella de carbono de la empresa y los costes de compensación de emisiones.
Arquitectura más sencilla
Al tener menos interdependencias, el ‘software’ verde suele ser más simplista y directo, por lo que en algunos casos funciona más rápido y responde antes con los mínimos recursos de computación. Que un programa reaccione rápido y no tarde segundos en devolver una respuesta es algo que cualquier persona apreciaría positivamente. Y que el coste asociado a la provisión del servicio sea mínimo también, es algo que interesa a toda empresa. Si bien otros expertos matizan que muchas de las prácticas de ‘green coding’ van en la línea de buscar la forma de ejecutar una tarea con menos recursos pero no necesariamente más rápido.
Mejora de la reputación de marca
Muchos consumidores e inversores apoyan a empresas que son respetuosas con el medioambiente. Otro gran beneficio indirecto será la mejora de la imagen de marca al reflejar el compromiso con la sostenibilidad medioambiental. Esta imagen de empresa comprometida, permitirá la atracción y retención de talento comprometido con la responsabilidad social y ambiental, que redundará a su vez en una mayor calidad del ‘green software’ desarrollado. Principios básicos del ‘green software’.