Bisher gilt die gesetzliche Mindesteffizienz nur für Hardware. Aber auch die Software hat Einfluss auf die Begrenzung der Nutzungsdauer oder den gestiegenen Energieverbrauch. Es ist Zeit, dass Anforderungen an die Effizienz der Verarbeitung, Speicherung & Übertragung der Daten auch für Software gestellt werden. Wie kann man die Umweltverträglichkeit von Software erkennen & messen? Welche Umweltlasten entstehen durch Cloud-Dienstleistungen (s. z.B. Video-Konferenzen oder Streaming)? Der Vortrag wird unter anderem diese Fragen beantworten.
Extended Abstract
Die Grundtechnologie der Digitalisierung ist das Internet und der Rohstoff dabei sind die Daten, die bei jedem Kontakt mit den vernetzten Geräten erfasst und in der Cloud und somit in Rechenzentren verarbeitet werden. Diese Cloud besteht eben nicht, wie Wolken, aus feinen Wassertröpfchen, sondern aus handfesten elektronischen Komponenten, die aus wertvollen Rohstoffen hergestellt und für deren Betrieb viel elektrische Energie erforderlich ist. Gleiches gilt für die vernetzen Geräte, die nur durch die elektronischen Komponenten in der Lage sind zu kommunizieren. Die Software ist die eigentliche Königin in dieser elektronischen Welt. Sie steuert die Hardware und sie speichert die Informationen als elektronische Daten. Sie ist maßgeblich dafür verantwortlich wie energie- und hardwareintensiv eine Funktion ausgeführt wird. Und sie verantwortet zum großen Teil auch die begrenzte Nutzungsdauer der Geräte.
Bisherige gesetzliche Anforderungen an die Mindesteffizienz gelten nur für die IT-Hardware. Das kann ungeahnte Folgen auf den Stromverbrauch und die Nutzungsdauer haben. Die Software hat mindestens einen ähnlich großen Einfluss auf die Energie- und Hardwareeffizienz der Informationsverarbeitung. Jüngste Beispiele zeigen den Einfluss von Softwareupdates auf die Begrenzung der Nutzungsdauer oder auf den plötzlich gestiegenen Energieverbrauch nach einem Software-Update. Es ist somit an der Zeit, dass Anforderungen an die Effizienz der Verarbeitung, Speicherung und Übertragung der Daten auch für Software gestellt werden. Doch wie kann man die Umweltverträglichkeit von Software erkennen und schließlich wie messen? Welche Umweltlasten entstehen durch Cloud-Dienstleistungen, wie die Teilnahme an einer Video-Konferenz oder das Streamen der Lieblingsserie? Der Vortrag wird unter anderem diese Fragen beantworten.
Many of us have a rough idea of what side-effects are and a vague sense that they're bad. It's a shame we're not more precise about it, because when you really understand side-effects you have an excellent new lens through which you can judge individual blocks of code, larger architectural patterns, and even whole system designs.
So let's start by clarifying our understanding of what side-effects are and how to spot them. We'll see how easily they arise, leaving code that's harder to understand, harder to test and harder to decouple. Then we'll look at tools and techniques for eliminating those side-effects where it's possible and managing them where it isn't.
Finally we'll zoom out to see how those ideas get expressed in every field of computing, yielding fundamentally different approaches to programming language design, DevOps, system architecture, and database design. There's an iceberg of complexity hiding in your systems' side-effects and by the end of this talk you'll be able to spot it and start tackling it, rethinking the way we deal with data and the systems around it."
Kris Jenkins is a Developer Advocate for Confluent, a veteran startup contractor, and former CTO & Co-Founder of a gold trading business. He started his career working for a finance company whose success depended on having a better data model than all their competitors, and the search for better architecture has been with him ever since.