Über Green IT in Bezug auf die nachhaltige Nutzung von IT-Hardware haben wir bereits berichtet. Von zentraler Bedeutung ist dabei die Verlängerung des Lebenszyklus der Hardware. Wie aber verpasst man Software ein grünes Herz?
Generell geht es auch beim Green Coding darum, Nachhaltigkeitsziele zu erreichen und die CO2-Bilanz zu verbessern. Dabei mag es im ersten Moment abstrakt erscheinen, solche Ziele bei der Softwareentwicklung bereits im Kopf zu haben. Doch konkrete Beispiele sprechen eine andere Sprache.
Effizienz messbar machen
So kann über eine niedrigere Auflösung von Bildschirmbildern bei einer mobilen App mit 500.000 Usern zwei Tage Betriebszeit im Jahr gespart werden und dies ist nur ein Einzelfall von vielen wie er sich innerhalb einer Recherche im Internet finden lässt. Ressourcen-optimierte Software bringt also handfeste Vorteile in Form von Einsparungen mit sich. Schwierig ist bis heute allerdings, die Energieeffizienz von Software zu messen und daraus Handlungsempfehlungen abzuleiten. Das Umweltbundesamt hat sich diesem Thema angenommen und arbeitet an einem entsprechenden Kriterienkatalog für die Allgemeinheit. Auch hier machen bereits veröffentlichte Fallbeispiele deutlich, dass Einsparpotenziale vorhanden sind:
„So unterscheiden sich beispielsweise der Energiebedarf zweier Textverarbeitungsprogramme deutlich voneinander. Das Textverarbeitungsprogramm 1 verbrauchte auf derselben Hardware zur Abarbeitung des gleichen Standardnutzungsszenarios knapp viermal so viel Energie wie das vergleichbare Textverarbeitungsprogramm 2. Das effizientere Textverarbeitungsprogramm 2 beansprucht die Hardware weniger als das Textverarbeitungsprogramm 1. Das wird schon im Leerlauf deutlich, wenn die Software nur geladen ist und noch keine Arbeit verrichtet.“
Einfache Maßnahmen umsetzen
Wenngleich es noch keinen Katalog von gesetzlichen Anforderungen an die Mindesteffizienz von Software gibt, finden sich dennoch unterschiedliche Maßnahmen, die direkt bei der Erstellung von Software umgesetzt werden können. Dazu gehören:
- Software sollte nach modularen Prinzipien entworfen werden. Dadurch wird sichergestellt, dass nicht verwendete Module oder Microservices bei Nichtgebrauch heruntergefahren werden.
- Sogenanntes Tree-Shaking hilft dabei, redundanten Code innerhalb von Anwendungen zu entfernen. Dadurch werden Artefakte schlank gehalten und nicht künstlich aufgeblasen, was Auswirkungen auf die Performance hat.
- Dateiformate haben einen unterschiedlichen Bedarf an Ressourcen. CSV spart gegenüber Excel, png. ist größer als jpg. Gerade bei Bildformaten besteht ein gehöriges Einsparpotenzial. Experten empfehlen, diese wann immer möglich zu komprimieren.
Es bestehen also schon heutzutage Optionen, dank Green Coding der Green IT wirklich ein grünes Herz zu geben. Jetzt müsste es nur noch in der Praxis schlagen.