06. Mai 2022

Nachhaltige Webentwicklung

Der Klimawandel ist real! Angesichts immer stärker spürbarer Klimaveränderungen müssen wir tun, was nötig ist, um die drohende Katastrophe abzumildern. Da ist das regionale und saisonale Einkaufen meines Obst- und Gemüse-Bedarfs auf dem Markt um die Ecke und der Umstieg auf einen grünen Stromanbieter natürlich nur ein winziger, wenn auch gut gemeinter Schritt. Vielmehr sollten wir uns bemühen an allen Stellschrauben zu drehen, die uns zur Verfügung stehen.

Green IT Header

Mir als Webentwickler fällt da spontan das Internet und dessen Nutzung ein. Denn der Beitrag zum globalen CO2-Ausstoß durch die Internetnutzung ist nicht zu vernachlässigen: Je nach Schätzung liegt er bei 1,8 bis 3,9% des gesamten globalen Ausstoßes und damit noch vor dem des gesamten weltweiten Flugverkehrs — und das vor Corona! [1] Wer das bereits besorgniserregend findet, dem sei gesagt, dass diese Zahl zukünftig nur weiter steigen wird. Schließlich ist anzunehmen, dass die Digitalisierung und Digitalität immer weiter fortschreitet.

Digital vs. Non-Digital

Natürlich ist das Internet eine großartige Sache und dessen Nicht-Nutzung würde uns nicht nur gefühlt zurück in die Steinzeit werfen, sondern mich obendrein arbeitslos machen. Digitale Selbstkasteiung ist also leider kein attraktiver Weg, das Problem zu lösen. Und zusätzlich auch kein sinnvoller! Denn im Grunde genommen ist die Digitalisierung — richtig gemacht — bereits ein Schritt in die richtige Richtung.

Sehen wir uns beispielsweise den Vergleich zwischen dem klassischen Postbrief und einer E-Mail an: Ein Postbrief erzeugt im Schnitt schätzungsweise 20 g CO2. Eine E-Mail dagegen nur 10 g.[2] Das klingt erstmal toll, der CO2-Ausstoß ist um 50% reduziert. Bedenkt man jedoch in welchen inflationären Mengen E-Mails versendet werden, wird schnell klar, dass die Bilanz leider nicht so rosig ist, wie sie es auf den ersten Blick zu sein scheint. Durch die Geschwindigkeit des Austausches, der per E-Mail möglich ist, steigt auch die Menge der Versendungen.

Das Problem ist nicht neu

So verhält es sich übrigens auch mit der Nutzung der uns zur Verfügung stehenden Bandbreite. Betrachtet man den Informationsgehalt eines jeden übertragenen Megabytes, so hat sich dieser nahezu antiproportional zur Bandbreite entwickelt: Der eigentliche Nutzen der übertragenen Daten wird immer geringer, während die Bandbreite immer größer wird. Der Ökonom William Stanley Jevons hat bereits Mitte des 19. Jahrhunderts bemerkt, dass die effizientere Nutzung eines Rohstoffs zu einer erhöhten Nutzung dieses Rohstoffs führt, anstatt sie erwartungsgemäß zu senken.[3] Damals ging es um Kohle. Jervons nahm ursprünglich an, dass die breitere und effizientere Nutzung des Rohstoffs eine Senkung des Bedarfs zur Folge hat. Wie wir wissen ist das Gegenteil eingetreten. Genau diesen Effekt können wir, wie oben beschrieben, auch bei der Ressource „Internet“ beobachten.

Außerdem hat der Schweizer Informatiker Niklaus Wirth vor 25 Jahren festgestellt, dass Software schneller speicherhungrig (und damit auch energiehungrig) wird, als sich die Hardware verbessert.[4] Mit steigender Rechenkapazität und schnellerer Hardware wird also nicht Energie gespart: Ganz im Gegenteil. Wir verbrauchen immer mehr Energie. 

Der Energiehunger des Internets

Die Frage, die sich mir als Webentwickler nun stellt ist: Was können wir in unserem professionellen Umfeld dagegen tun? Schließlich sind wir ja diejenigen, die Webseiten und -services zur Verfügung stellen. Damit sind wir im Grunde dafür verantwortlich, dass die Systeme, die wir entwerfen und entwickeln, so genügsam wie möglich mit den vorhandenen Ressourcen haushalten und dabei so langlebig wie möglich sind. Erst dann kann von nachhaltiger Software die Rede sein. Um das zu erreichen, gilt es sich zuerst darüber im Klaren zu werden, woher der Energiehunger des Internets rührt, um zu wissen, an welchen Stellen wir Hand anlegen können, um die Bilanz unserer Software zu verbessern.

Da stehen auf der einen Seite die Rechenzentren der Hosting-Anbieter. Jedes Mal, wenn eine Webseite aufgerufen wird, liefert ein Server die entsprechenden Daten aus und verbraucht dazu natürlich Strom. Jede einzelne von einem Server zu beantwortende Anfrage sorgt also für einen erhöhten Stromverbrauch im Rechenzentrum. Und auf der anderen Seite stehen die Endgeräte, die die angefragte Webseiten darstellen und ihrerseits Strom verbrauchen. Sei dies ein PC oder ein mobiles Endgerät: Sie alle benötigten Energie. Selbst wenn man von der Energie, die zur Produktion all dieser Gerätschaften nötig war, absieht, kommt dennoch einiges Zusammen. Außerdem müssen die Inhalte auch vom Rechenzentrum über die eigentliche Netzinfrastruktur an das Endgerät transportiert werden, was weitere Kapazitäten beansprucht.

Nun ist zu beobachten, dass die Energiewende langsam an Fahrt aufnimmt und sich einige der großen Internetkonzerne hier beteiligen und aus Eigenantrieb die Entwicklung hin zu weniger Emission fördern und antreiben: Google beispielsweise will den gesamten CO2 Ausstoß seit seiner Gründung ausgleichen.[5] Und auch Amazon will nach eigenen Angaben bis 2040 klimaneutral sein.[6] Aber selbst wenn eines Tages kein Rechenzentrum mehr mit fossiler Energie betrieben wird, ist es dennoch nicht nachhaltig, mehr Energie als nötig zu verbrauchen. Denn auch wenn der Server, der eine Website ausliefert, mit Solarstrom betrieben wird, ist die Energie, die er benötigt dennoch kostbar und eine schützenswerte Ressource.

Ein Schritt hin zu nachhaltiger Webentwicklung

Da kommen wir als Webentwickler*inner ins Spiel: Welche Maßnahmen können wir ergreifen um das Web zu einem klimafreundlicheren Ort zu machen? Um einfach mal ein konkretes Beispiel zu nennen: Eine wirkungsvolle Möglichkeit ist die Optimierung von Assets, beispielsweise Bildern, die die Größe einer Website unnötig aufblähen können. Durch die Verwendung von Responsive Images können wir passgenau Bilder ausliefern, deren Auflösung abhängig von der Größe des verwendeten Viewports sind. Durch diese einfache Technik gehen wir sicher, dass keine Bilder geladen werden, die beispielsweise größer sind, als der Bildschirm eines mobilen Endgeräts sie überhaupt darstellen kann.

Es gibt neben dieser jedoch noch eine ganze Palette an weiteren Maßnahmen, die wir ergreifen können, um den Energiehunger unserer Webseiten in Zaum zu halten. Wer sich einen Überblick verschaffen möchte welchen CO2-Ausstoß die eigene Website verursacht, der kann hierzu den Website Carbon Calculator nutzen. Und wer nun, wie ich,  Handlungsbedarf sieht, der darf sich auf unsere Blog-Post Serie freuen, in der wir verschiedene Themengebiete der Webentwicklung aus einer nachhaltigen Perspektive betrachten. Wir werden Problematiken und Energiefresser beleuchten und Lösungsansätze präsentieren um diesen zu begegnen und sie zu vermeiden. Als Drupal-Entwickler werde ich bei diesen Ansätzen auch immer ein Augenmerk auf Drupal CMS haben. Das Gesagte lässt sich aber problemlos auch auf andere Systeme übertragen und anwenden.

In dieser Serie wird es um folgende Themenbereiche gehen:

  • Backend Optimierung
  • Frontend Optimierung
  • User Experience und User Interface
  • Hosting
  • Nachhaltiges Projektmanagement

Ich wünsche Ihnen, euch und mir viel Spaß auf dieser Reise in ein grüneres und klimaverträgliches Web.

Quellen

[1] https://www.forschung-und-wissen.de/nachrichten/umwelt/internet-und-computer-klimaschaedlicher-als-flugverkehr-13375404
[2] https://www.nachhaltiger-warenkorb.de/klimabilanz-e-mail-vs-brief/
[3] https://de.wikipedia.org/wiki/Jevons-Paradoxon
[4] https://de.wikipedia.org/wiki/Wirthsches_Gesetz
[5] https://t3n.de/news/google-co2-emissionen-ausgleich-1321687/
[6] https://nachhaltigkeit.aboutamazon.de/umwelt/nachhaltige-betriebsablaufe/CO2-Bilanz

Mathias Wächter

Mathias Wächter

Backend Developer

mathias@factorial.io