Nachhaltiges Programmieren umsetzen Green Coding kulturell im Unternehmen verankern

Ein Gastbeitrag von Marcel Russ * 5 min Lesedauer

Anbieter zum Thema

Green-Coding-Prinzipien gehen über isolierte Optimierungen hinaus und verfolgen eine umfassende Strategie in der Entwicklung und dem Betrieb von Software. Aber wie können Software-Anbieter mittel- bis langfristig nachhaltiger werden?

Nachhaltiges Denken in der Programmierung selbst ist ein zartes Pflänzchen, das es zu hegen und zu pflegen gilt.
Nachhaltiges Denken in der Programmierung selbst ist ein zartes Pflänzchen, das es zu hegen und zu pflegen gilt.
(© troyanphoto - stock.adobe.com)

Der Energiebedarf durch den kontinuierlichen Gebrauch von digitalen Services nimmt rapide zu. Mittlerweile beanspruchen die circa 3.000 großen und 50.000 kleinen Rechenzentren in Deutschland pro Jahr circa 16 Milliarden Kilowattstunden Strom, mehr als ganz Berlin. Die Zahl unterstreicht die Notwendigkeit einer umweltfreundlichen Softwareentwicklung, also des „Green Coding“.

Green Coding hat zum Ziel, Software so zu entwickeln, dass sie bei minimalem Energieaufwand maximale Effizienz erzielt. Dies umfasst effektive Algorithmen, die Verbesserung von Programmcode und die gezielte Auswahl von ressourceneffizienten Technologien.

Der Fokus liegt darauf, den Umweltfußabdruck während des gesamten Lebenszyklus der Software, von der Erstellung über den Einsatz bis zur Entsorgung, zu reduzieren – während zugleich Produkte von hoher Effizienz, Leistungsfähigkeit und Innovationsfreudig entwickelt werden.

Mehr als optimierter Code: Green Coding als umfassender Ansatz

An erster Stelle einer Green-Coding-Strategie steht die Modifikation der Anwendungsarchitektur. Durch eine modular und skalierbar gestaltete Architektur lässt sich der Energieverbrauch von Anwendungen signifikant senken, da überflüssige Prozesse ausgeschaltet und Systemressourcen ideal verwendet werden.

Eine wesentliche Rolle spielt zudem die Auswahl von effizienten Algorithmen. Ein sorgfältig ausgewählter Algorithmus kann den Unterschied zwischen einem energieaufwendigen und einem energieeffizienten Vorgang bedeuten.

Ein oft angeführtes Beispiel für digitale Prozesse mit hohem Energieverbrauch ist der Proof-of-Work-Mechanismus, welcher zur Bestätigung von Transaktionen im Bitcoin-Netzwerk genutzt wird. Zum Zeitpunkt der Verfassung beträgt der jährliche Energieverbrauch von Bitcoin ungefähr 114,87 TWh – das entspricht in etwa dem Jahresverbrauch der Niederlande.

Diverse andere Krypto-Netzwerke nutzen dagegen energieeffizientere Methoden wie den Proof of Stake. Dabei entscheidet nicht die Rechenleistung der Teilnehmenden sondern ihr im Netzwerk hinterlegtes Kapital darüber, wer die Blockchain erweitert.

Mit dem Wechsel zu Proof of Stake konnte beispielsweise die Smart-Contract-Plattform Ethereum ihren Energieverbrauch um über 99 Prozent reduzieren. Es ist jedoch anzumerken, dass bereits verschiedene Strategien existieren, um Bitcoins Proof-of-Work umweltfreundlicher zu gestalten – beispielsweise durch Nutzung von Überschussenergie aus erneuerbaren Energien.

Ökologische DevOps?

Die Entwicklung von Green Coding erfordert eine gezielte Wahl von ressourcenschonenden Technologien und Instrumenten. Ebenso sind die Praktiken von DevOps von großer Bedeutung, um zu bestimmen, wie umweltfreundlich eine Software am Ende ist. Zum Beispiel kann der Energieverbrauch durch Verkleinern der Docker-Container reduziert und Software umweltverträglicher gestaltet werden.

Überwachungsinstrumente unterstützen dabei, während der Entwicklung den Energieverbrauch während des Tests und der Integration zu erfassen. Dies ermöglicht es, frühzeitig Punkte zu erkennen, an denen Verbesserungen umsetzbar sind.

Im Betrieb leisten eine Automatisierung und Echtzeitüberwachung ihren Beitrag, indem sie Systeme bei Inaktivität in einen energieeffizienten Zustand versetzen oder sogar abschalten. Dies mindert nicht nur den Energiebedarf, sondern erhöht zudem die Lebensspanne der Hardware.

Code matters: Die Programmiersprache spielt eine entscheidende Rolle

Die Wahl der Programmiersprache kann erheblichen Einfluss auf die Energieeffizienz eines Programms haben. Schließlich wartet jede Sprache mit eigenen Vorzügen, Nachteilen und Möglichkeiten zur Optimierung auf.

Sprachen wie Python oder Ruby werden zwar für ihren benutzerfreundlichen Aufbau und rasche Prototypentwicklung geschätzt. In puncto Ausführungsgeschwindigkeit und Ressourcenverbrauch sind sie jedoch mitunter weniger effizient als „Low-Level-Sprachen“ wie Rust.

Ein weiteres Beispiel für weniger rechenintensive Programmiersprachen sind C oder C++: Weil diese Sprachen näher an der Hardware-Ebene arbeiten, können sie bestimmte Operationen zügiger und ressourcenschonender ausführen als Skriptsprachen wie etwa JavaScript oder Python. Die Kehrseite: Um optimale Effizienz in diesen Sprachen zu erreichen, ist ein umfassendes Fachwissen erforderlich.

Große Unternehmen in der Technologie-Branche setzen Maßstäbe

Tech-Großunternehmen wie Google, Apple und Microsoft haben die Wichtigkeit von nachhaltigen und energieeffizienten Lösungen bereits erkannt. Sie haben nicht nur breitgefächerte ökologische Initiativen ins Leben gerufen, sondern auch innovative Technologien und Methoden entwickelt, um den Energieverbrauch ihrer Angebote zu reduzieren.

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

Google beispielsweise nutzt innovative KI-Algorithmen zur Optimierung des Energieverbrauchs in seinen Datenzentren. Apple fokussiert sich ebenso auf die Energieeffizienz seiner Produkte und strebt aktuell danach, in sämtlichen Geschäftsbereichen und Lieferketten kohlenstoffneutral zu operieren. Microsoft plant sogar, bis 2030 einen negativen CO₂-Ausstoß zu erreichen.

Gibt es in Deutschland ein Bewusstsein für nachhaltige IT?

Deutschland ist bekannt für seine Ingenieurskunst und Innovationskraft. Obwohl das Bewusstsein für Green Coding derzeit noch in der Entwicklung ist, zeichnet sich jedoch eine zunehmende Sensibilität für die Bedeutung von Nachhaltigkeit in der Softwareentwicklung ab.

Hinweise darauf sind die zunehmende Zahl von Start-ups und Firmen mit Fokus auf umweltfreundliche Technologien sowie die steigenden Bildungsangeboten im Bereich Green Coding. Einige deutsche Firmen haben zudem bereits damit begonnen, Prinzipien des Green Codings in ihre Entwicklungsabläufe zu integrieren.

Trotz dieser positiven Entwicklungen existieren noch Herausforderungen, etwa das Fehlen klarer Richtlinien und Standards für Green Coding. In vielen Bereichen existieren bereits etablierte Zertifikate und Vergleichsmaßstäbe für nachhaltiges Wirtschaften, doch in der Softwareindustrie steht die Entwicklung einheitlicher Bewertungskriterien für die Energieeffizienz von Programmen noch aus.

Immerhin besteht in Deutschland mit dem „Blauen Engel für ressourcen- und energieeffiziente Softwareprodukte“ die Möglichkeit für Unternehmen, ihre Softwareprodukte freiwillig auf Ressourcenschonung und Energieeffizienz prüfen und zertifizieren zu lassen. Regelungen auf EU-Ebene fehlen bislang allerdings.

Grundvoraussetzung für eine nachhaltige digitale Zukunft

In einer Ära, in der die digitale Transformation immer mehr Lebensbereiche durchdringt, wird die Energieeffizienz von Software zu einem Schlüsselthema. Green Coding stellt in diesem Zusammenhang nicht nur eine technologische Aufgabe, sondern beinahe schon eine moralische Pflicht für alle dar, die im Bereich der Softwareentwicklung arbeiten.

Während führende Technologieunternehmen den Weg weisen und zeigen, dass Ökonomie und Ökologie vereinbar sind, besteht branchenweit noch Handlungsbedarf. In Deutschland gibt es aktuell durchaus noch Potenzial, eine Führungsposition in der nachhaltigen Softwareentwicklung einzunehmen. Letztendlich ist Green Coding eine Investition in die Zukunft, die nicht nur der Umwelt zugutekommt, sondern auch zu hochwertigeren Softwarelösungen führt.

* Über den Autor
Marcel Russ ist Diplom-Informatiker und hat Software Engineering an der Universität Stuttgart studiert. Seit 2022 arbeitet er als Manager im Bereich Enterprise Modernisation bei Exxeta, einem Technologie- und Beratungsunternehmen. Er unterstützt mit seinem Team Kundinnen und Kunden dabei, mit effizienterer Software und agilen Vorgehensmodellen ihre IT zu modernisieren. Immer im Fokus die Frage: Wie können Unternehmen durch bewusste Veränderungen und den Einsatz moderner Tools nicht nur effizienter, sondern auch nachhaltiger werden?

Bildquelle: Exxeta

(ID:49753597)