Das Thema Green Coding beinhaltet eine Vielzahl von Maßnahmen, die helfen können, Software emissionsärmer und nachhaltiger zu entwickeln. Mit den richtigen Ansätzen können Unternehmen, die Programmierung ihrer Software „grün“ gestalten.

Die Menschheit lebt mit der Gewissheit, dass wir auf unserem Planeten die CO2-Produktion drastisch reduzieren müssen, wenn wir diesen erhalten wollen. Dekarbonisierung lautet das heißdiskutierte Stichwort. Ein neuer Ansatz für mehr Nachhaltigkeit in der IT ist das Green Coding.

Nach grüner Energie aus regenerativen Quellen und Green IT, die sich vor allem um stromsparende Hardware bemüht, sorgt Green Coding dafür Software nachhaltig zu entwickeln und auch zu betreiben. Bei der Anwendungsentwicklung betrifft dies jede einzelne Programmzeile, weil jede Zeile Code bei stark genutzter Software einen riesigen Skalierungseffekt haben kann.

Gewaltige Dimensionen

Experten schätzen, dass eine Google-Suche circa 0,2 Gramm CO2 freisetzt. Wollten wir die Emissionen für alle Suchanfragen, die wir alleine innerhalb eines Jahres anstoßen, durch das Pflanzen von Bäumen kompensieren, müsste man etwa 41 Millionen Bäume pflanzen – wenn wir davon ausgehen, dass ein Baum im Jahr etwa 10 Kilogramm CO2 neutralisiert und es schätzungsweise 5,6 Milliarden Suchanfragen täglich gibt.

Aber selbst das ist ein Klacks angesichts der 2,2 Milliarden Bäume, die wir für die 22 Millionen Tonnen CO2 pflanzen müssten, die das Bitcoin-Mining jährlich in die Atmosphäre bläst. Um eine Relation zu geben: Im Schwarzwald wachsen auf über 6000 Quadratkilometer gerade einmal vier Millionen Bäume.

Höchste Zeit zu handeln

Wir stehen also in Sachen Klimakrise, Energiewende und Wirtschaftlichkeit im Zuge immer knapper werdender Ressourcen vor großen Herausforderungen. Anfang 2023 ist zudem die EU-Taxonomie-Verordnung in Kraft getreten, die Kriterien festlegt, ob eine Wirtschaftstätigkeit ökologisch nachhaltig ist. Diese ist durch eine neue CSR-Richtlinie (Corporate Sustainability Reporting Directive) ergänzt worden, die das Pflichtenheft für viele Unternehmen rechtsverbindlich zum 1.Januar 2025 erweitert.

Dennoch scheint das Thema Green Coding und ein Gegensteuern noch nicht richtig angekommen zu sein. Der Grund: Es ist alles andere als trivial die Emissionen einer Software zu messen und damit richtig zu beziffern. Software-Anbieter kalkulieren üblicherweise lediglich die Emissionen von Scope 1- und Scope 2-Faktoren ein. Scope 1-Emissionen entstehen aus der direkten Verbrennung von fossilen Stoffen bei der Produktion einer Ware.

Scope 2-Emissionen wirken indirekt. Sie entstehen bei der Fertigung, etwa durch den Einkauf von Strom. Unter Scope 3-Emissionen bündeln Unternehmen alle Emissionen, die in der Lieferkette entstehen, etwa bei Dienstleistungen für die Kunden oder bei der Entsorgung von Endprodukten. Solche Scope 3-Emissionen gibt es allerdings in großem Zuschnitt auch bei Software, wie eine interne Untersuchung von Microsoft eindrucksvoll zeigte. 75 Prozent aller Emissionen des Unternehmens entfallen dabei auf Scope 3-Emissionen, also auf die Herstellung und den Vertrieb sowie die Nutzung von Windows, Office oder Cloud-Produkten auf Abermillionen PCs im Büro, Smartphones und Tablets.

Einfluss der IT steigt mit zunehmendem Digitalisierungsgrad

Der IT-Sektor ist momentan verantwortlich für vier Prozent des globalen Ausstoßes von Treibhausgasen, Tendenz steigend. Im Jahr 2040 könnten digitale Emissionen rund 14 Prozent des weltweiten CO2-Ausstoßes verursachen. Mit dem Grad der Digitalisierung steigt der Ausbau der IT-Infrastruktur. Und der Betrieb immer größerer Serverfarmen benötigt immer mehr Strom.

Wir sollten aber die Software nicht vergessen. Genau deswegen greift der Ansatz der Green IT, also der effiziente und sparsame Betrieb von Hardware und Rechenzentren, oftmals aus der Cloud, hier wesentlich zu kurz. Denn 55 Prozent der verursachten Emissionen verursacht eben die implementierte Software. Aus diesem Grund leistet Green Coding einen wertvollen Beitrag, um Klimaziele und Nachhaltigkeit zu erreichen.

Wo Unternehmen ansetzen sollten

Es gibt drei Bereiche in der Anwendungsentwicklung, die Unternehmen in den Fokus nehmen sollten, um das Optimierungspotenzial von Green Coding voll auszuschöpfen:

  • Der erste Bereich betrifft die zum Einsatz kommende Plattform. Hier geht es insbesondere darum, Überdimensionierungen zu vermeiden, falsche Konfigurationen zu eliminieren und versteckte Infrastruktur nicht außer Acht zu lassen.
  • Der zweite Bereich umfasst die Logik. Das bedeutet, dass beispielsweise ein nutzenorientierter visueller Inhalt schneller das zur Verfügung stellt, was gewünscht ist. Das steigert die Zufriedenheit der Kunden und spart zudem Zeit und Energie. Dazu zählt aber auch, bewusst einfachere Dateiformate, effiziente APIs und optimierte Bildpakete einzusetzen und „toten“ Code konsequent aus der Anwendung zu entfernen und damit einen Zero-Waste-Code zu etablieren.
  • Der dritte Bereich betriff die Methodik, die regeln sollte, dass die Ergebnisse, die sich Rahmen von Green Coding-Projekten ergeben, auch organisationsübergreifend wiederverwertbar sind. Agile und schlanke Methoden bewähren sich hier, denn sie erleichtern die Anpassung von Software und erhöhen deren Effizienz.

Im Plattformbereich lohnt es sich beispielsweise darauf zu achten, welche Programmiersprache eingesetzt wird. Hier gibt es in Sachen Energieeffizienz und Geschwindigkeit signifikante Unterschiede. Bei der Programmiersprache C handelt es sich zum Beispiel um eine sehr systemnahe Sprache in der beispielsweise das Linux-Betriebssystem geschrieben. Derartige Programmiersprachen weisen mit die niedrigsten Energieverbrauchswerte auf und sind dazu noch sehr schnell.

Aber auch die Energieoptimierung der verwendeten Datenbanken spielt hier eine Rolle. So führt eine Erhöhung des Arbeitsspeichers, je nach Abfrage-Typ, zu einer Stromersparnis von bis zu 53 Prozent. Und auch die größere Blockgröße durch den Einsatz von SSDs, idealerweise kombiniert mit FlashDB, birgt großes Einsparpotenzial.

Green Logik liefert Optimierungspotenzial

Der Bereich der Anwendungslogik birgt ebenfalls erhebliches Optimierungspotenzial. Beispielsweise beim Rendering. Legen Anwendungsentwickler ihr Augenmerk darauf, wie sie ihre programmierten Datensätze visualisieren und umwandeln, lässt sich Energie einsparen, ebenso durch Programmcode, der so entwickelt ist, dass die CPU-Auslastung auf das erforderliche Minimum reduziert wird.

Ein weiteres Anwendungsbeispiel ist die Trainingsoptimierung bei KI-Szenarien. So fanden Forscher von Google und der Universität Berkeley heraus, dass sich durch den Einsatz von GPT-3, einem autoregressiven Sprachmodell, in diesem Bereich 99,9 Prozent der CO2-Emissionen in Vergleich zu einem Standard-Training einsparen lassen.

Vorgehensmodell sollte keinesfalls außer Acht bleiben

Mittels agiler Software-Entwicklung können wir im Sinne des Green Coding den Nutzen von IT-Systemen maximieren, insofern ist die Wahl der richtigen Methodik, der dritte wesentliche Bereich, den Unternehmen hierbei fokussieren müssen. Um Nachhaltigkeit zu erreichen, sollten Prozesse, Teams und Werte mit Bedacht aufeinander abgestimmt sein.

Die Idee des agilen Manifests welches besagt, dass Unternehmen sich bessere Wege in der Anwendungsentwicklung erschließen und anderen dabei helfen, sich diese Wege zu erschließen, ist hierbei ein hilfreicher Ansatz. Konkret bedeutet das, dass Unternehmen und Softwarenentwickler im Rahmen ihres Vorgehensmodells bereits im Product Backlog priorisieren, mit welchen Anforderungen die Software in puncto Energieverbrauch, Nachhaltigkeit und UX-Design zu optimieren ist.

Mit einer solchen agilen Vorgehensweise wird sichergestellt, dass erzielte Ergebnisse einem ausführlichen Sustainability-Check unterzogen und falls nötig angepasst werden. Auch die Retrospektive in einem solchen Modell ist immens wichtig.
Nach jedem Arbeitszyklus, Sprint genannt, ist es dann möglich, neben dem Ergebnis des Sprints auch zu besprechen, wie sich ein Team bei der Umsetzung von Green Coding weiter verbessern kann. Und auf diese Weise lässt sich im Rahmen von abschließenden Abnahmetests auch sicherstellen, dass die gesetzlich bindende CSR-Richtlinie erfüllt wird.

Dr. Frank Gredel ist Head of Business Development bei der PTA IT-Beratung GmbH.

PTA IT-Beratung GmbH