Nachhaltig programmieren, Teil 1 Green Coding – Software als Klimaretter?

Von Christian Rentrop Lesedauer: 4 min |

Anbieter zum Thema

IT-Technik hat großen Einfluss auf den weltweiten Stromverbrauch – und damit auf das Klima. Mit der Praktik des Green Coding sollen Infrastruktur und Anwendungen möglichst ressourcenschonend gestaltet werden. Das hat auch Kostenvorteile für Betreiber von Servern und Geräten.

Mit Green Coding kann jeder Developer einen kleinen Beitrag leisten, das Klima zu schützen.
Mit Green Coding kann jeder Developer einen kleinen Beitrag leisten, das Klima zu schützen.

Wer Software entwickelt, möchte natürlich zunächst, dass diese vernünftig auf der gegebenen Infrastruktur läuft. Überlegungen zur Effizienz oder zum Klimaschutz sind eher zweitrangig. Dabei zählt die IT-Infrastruktur weltweit zu den größten Energieverbrauchern neben dem Verkehr: Server sind das Rückgrat der weltweiten IT-Infrastruktur erheblichen Anteil am weltweiten Stromverbrauch.

Laut einer Studie des Branchenverbands Bitkom von 2022 verbrauchten Rechenzentren allein in Deutschland bereits 2020 rund 16 Terawattstunden Strom im Jahr. Zum Vergleich: Der Jahresstromverbrauch der 3,6-Millionen-Einwohner-Metropole Berlin betrug im von sehr hohen Energiepreisen gebeutelten Jahr 2022 12,5 Terawattstunden.

Zu den Servern kommen noch die Endgeräte. Hunderte Millionen PCs, Laptops, Smartphones, IoT- und Smart-Home-Geräte allein deutschlandweit – mit einem zusammengenommen ebenfalls erheblichen Stromverbrauch. Kurzum: IT-Technik ist ein wahrer Energiefresser und damit auch Kostentreiber.

Green Coding kann Energieverbrauch senken

Genau hier setzt die Idee des Green Coding an: Statt wie bei vielen Entwicklern und Entwicklerinnen üblich die Grenze des technisch Machbaren auszuloten, geht es darum, Software in Form von Infrastruktur, Anwendungen und Apps möglichst effizient zu programmieren – und so den weltweiten Energieverbrauch deutlich zu senken.

Gleichzeitig spart Green Coding aber auch Hardware-Ressourcen und bei Endgeräte-Anwendungen natürlich auch Batterielaufzeit, was wiederum den Nutzer freut. Kurzum: Wer Software „grün“ bzw. nachhaltig entwickelt, schont nicht nur das Klima, sondern auch den Geldbeutel des Kunden, weil der weniger Geld in Infrastruktur und Energie stecken muss.

Der Einfluss der Software-Entwicklung auf den Stromverbrauch ist enorm. Wer sich an die Ideale des Green Coding hält – effiziente Algorithmen, kluges Caching, Verschlankung, möglichst sparsame Kommunikation zwischen Server und Endgerät – schafft ohne allzu großen Aufwand erhebliche Sparpotenziale. Hinzu kommen weiche Faktoren wie sauberer Code mit entsprechend niedrigeren Update-Frequenzen, kleine Umfänge für geringere Downloadzeiten und ein effizienter Idle-Modus, wenn die Software aktiv ist, aber nicht genutzt wird.

Wer Software grüner entwickeln will, sollte dabei auf fünf Dinge achten:

  • Eine möglichst moderne und effiziente Programmiersprache.
  • Effiziente Algorithmen zur Vermeidung redundanter oder überflüssiger Funktionen und des zugehörigen Codes, der entsprechenden Bibliotheken und so weiter.
  • Continuous Testing: Zerlegung der Projekte in einzelne Unterprojekte, um den Energieverbrauch einzelner Komponenten im Blick zu behalten und diese gegebenenfalls mit geringem Aufwand zu optimieren.
  • Datensparsamkeit durch Reduktion des Umfangs der Software selbst, niedrige Update-Frequenzen und der Daten, die durch die Software über das Internet verschickt werden.
  • Verwendung von Stromsparfunktionen der zugrundeliegenden Hardware.

Enormes Einsparpotenzial

Schon eine erfolgreiche App für Smartphones kann, nach Green-Coding-Standards entwickelt, weltweit Millionen Kilowattstunden sparen – auch wenn die eigentliche Ersparnis vielleicht nur wenige Prozent beträgt. Bei Betriebssystemen oder verbreiteter Server-Software ist das Einsparpotenzial noch deutlich höher.

Doch es gibt auch sekundäre Faktoren, die Green Coding für Entwickler und Unternehmen interessant machen. So kann eine effizient programmierte Anwendung länger auf bestimmter Hardware laufen, ehe sie diese maximal ausreizt. Dadurch kann sich zum Beispiel die Nutzungsdauer von Servern und Endgeräten erhöhen, was wiederum – Stichwort Produktions- und Entsorgungskosten – Vorteile fürs Klima, die Umwelt und die Kasse des Kunden bringt.

Sekundärkosten durch Austausch und Installation lassen sich dadurch ebenfalls länger hinauszögern. Kommt dann noch zuverlässige, kostengünstige und energieeffiziente Hardware – etwa ARM- statt x64-CPUs – zum Einsatz, skalieren auch kleinere Green-Coding-Maßnahmen nicht selten zu einer deutlichen Reduktion des Energieverbrauchs einer Anwendung oder eines Servers.

Einsparpotenzial auch auf Entwicklerseite

Aber auch für Entwickler selbst kann Green Coding einen enormen Vorteil haben. Zwar müssen sie Zeit für die Planung und Umsetzung effizienter Routinen aufwenden und gegebenenfalls länger an Algorithmen, Funktionen und APIs feilen. Da das aber in aller Regel „im kleinen Kreis“ passiert, hält sich der zusätzliche Energieverbrauch in Grenzen.

Doch sobald die Anwendung „live“ geht und Updates braucht, können die Früchte dieses Invests geerntet werden. Die gängigen Cloud-Dienste werden nach Rechenlast und Datenvolumen bezahlt – und das Ausspielen eines Updates an tausende, wenn nicht Millionen Kunden ist dementsprechend mit erheblichen Kosten verbunden. Jede noch so kleine Einsparung beim Umfang der Software oder der Häufigkeit von Updates schlägt sich sofort in der Firmenkasse nieder – auch ohne Klimaretter-Ambitionen.

Jetzt Newsletter abonnieren

Täglich die wichtigsten Infos zu Softwareentwicklung und DevOps

Mit Klick auf „Newsletter abonnieren“ erkläre ich mich mit der Verarbeitung und Nutzung meiner Daten gemäß Einwilligungserklärung (bitte aufklappen für Details) einverstanden und akzeptiere die Nutzungsbedingungen. Weitere Informationen finde ich in unserer Datenschutzerklärung.

Aufklappen für Details zu Ihrer Einwilligung

Ein gutes Gefühl beim Kunden

Zu guter Letzt sind „grüne“ Technologien derzeit ohnehin beliebt: Was Einsparpotenzial verspricht oder das Klima schützt, verkauft sich besser. Auch davon können Software-Entwickler und Software-Unternehmen natürlich profitieren, sowohl in der Kommunikation zu potenziellen Kunden als auch in deren Selbstwahrnehmung.

Unternehmen, die Software entwickeln lassen, können sich den Einsatz der Green-Coding-Anwendungen auf die Fahnen schreiben und so ihrerseits Kunden akquirieren. Auch wenn der Aufwand der Entwicklung möglicherweise höher ist, entsteht so eine Win-Win-Situation für alle Beteiligten. Auf Greenwashing sollte dabei allerdings verzichtet werden, dies könnte einem irgendwann auf die eigenen Füße fallen.

Das Einsparpotenzial durch Green Coding ist enorm. Jedes gesparte Kilowatt skaliert mit jedem Kunden höher, spart Kosten im Betrieb und ist damit gut für die Umwelt. Und aufgrund der enormen Verbreitung von Servern und Endgeräten sowie hohen Betriebszeiten von Anwendungen können selbst kleine Änderungen im Code eine enorme Auswirkung haben. Natürlich wird der Stromverbrauch der IT-Infrastruktur weiterhin steigen – doch mit Green Coding können Entwicklerinnen und Entwickler ihren kleinen Beitrag dazu leisten, das Klima zu schützen.

(ID:49544957)