Deutschland soll bis 2045 klimaneutral sein, so sieht es der Koalitionsvertrag der Bundesregierung vor. Eine große Aufgabe, deren Bewältigung nur gemeinsam zu stemmen ist. Auch auf die IT-Branche kommt es dabei an – führt die voranschreitende Digitalisierung doch zu enormen Emissionen und einem steigenden Stromverbrauch. Ein Baustein der Strategie: klimabewusstes Programmieren für effektivere und klimaschonende Anwendungen.
Avision zeigt, was umweltfreundliches Programmieren bewirken kann und wie es gelingt.
- Effiziente Datenstrukturen wählen
Um den Energieverbrauch von Systemen zu reduzieren, eignen sich einige Datenstrukturen besser als andere, da sie weniger Rechenleistung und Speicherplatz benötigen. Beispiele dafür sind Vektoren, verkettete Listen oder auch Hashtabellen. Auch der Einsatz von effizient arbeitenden und auf die Anforderungen abgestimmten Algorithmen kann einen deutlichen Unterschied ausmachen.
- Das Frontend schlank gestalten
Die eigene Webseite nach Gesichtspunkten der Effizienz zu überarbeiten, birgt enormes Potential für die Einsparung von Ressourcen. Für eine Senkung der Rechenleistung bietet sich etwa das Optimieren der Ladezeiten an.
Weitere Faktoren sind verwendete Medien wie große Bilder oder Videos und Hintergrundprozesse, die den Energiebedarf oft unnötig erhöhen. In der Gesamtheit können die genannten Punkte die benötigte CPU-Last und den Stromverbrauch deutlich senken. Zudem können ressourcenschonende und leistungsschwächere CPUs zum Einsatz kommen.
- Caching-Techniken verwenden
Anstatt alle Werte immer zu aktualisieren, sinkt der Energieverbrauch mit dem Einsatz von Caching. Häufig abgerufene Daten sind dabei temporär im Cache gespeichert – bei einer erneuten Anfrage haben die Nutzer einen schnelleren Zugriff darauf und müssen keine neue Anfrage an den Server senden.
Durch die sinkende Zahl der Aktualisierungen reduziert sich die benötigte Arbeitslast und den Netzwerkverkehr. Für die verschiedenen Anforderungen gibt es unterschiedliche Techniken, beispielsweise Client-Caching, Server-Caching oder CDN-Caching.
- Cloud Computing und Virtuelle Maschinen (VM) nutzen
Der große Vorteil von Cloud Computing und virtuellen Maschinen liegt in ihrer Skalierbarkeit. Sie sind an die benötigte Rechenleistung anpassbar und Nutzer können beispielsweise Testsysteme direkt herunterfahren, um auf diese Weise Geld und Strom zu sparen. Bei dedizierter Hardware kann häufiges Abschalten hingegen zu Schäden führen.
Auch das Ausführen von mehreren Anwendungen auf einer einzigen Virtuellen Maschine anstatt auf mehreren physischen Geräten hilft bei der Einsparung von Strom. Nicht zuletzt helfen VMs auch bei der Reduzierung des Platzbedarfs auf der Hardware. Wichtig an der Stelle ist, dass die Softwareentwicklung diese Szenarien, insbesondere die Skalierung, bereits beim Coding berücksichtigt.
„Gut gepflegter und effizienter Code kann sehr viel mehr zum Energiesparen beitragen, als es auf den ersten Blick scheint – ein Faktor, der sich zukünftig hoffentlich in immer mehr Projektplanungen wiederfindet“, sagt Nadine Riederer, CEO bei Avision. „Ein leuchtendes Beispiel dafür ist die Kryptowährung Ethereum, die mit Code-Anpassungen und einem Proof-of-Stake-Algorithmus den eigenen Energieverbrauch um 90 Prozent senken konnte. Green Coding hat enormes Potential.“