Green Software Development - Tools, SDK und Patterns für klimafreundliche Anwendungen

Workshop Day
02.06.
ab 09:00 Uhr
bis 16:00 Uhr
GreenSoftwareDevelopment
Sustainability
Raum
Rebland

Abstract

„Butter bei die Fische“ könnte der Untertitel dieses Vortrages sein. Green Software Development hat drei Bestandteile: Mindset und Kultur, Wissen und Tooling. Für das Mindset braucht es keine weiteren Erklärungen: Unsere Branche ist mit 4% an den weltweiten CO2-Emissionen beteiligt und somit relevant. Nach einer kurzen und intensiven Einführung in die Prinzipien und Entwurfsmuster zur Entwicklung grüner Software (Konkret: Energie- und Hardwareeffizienz, CO2-Intensität, Demand Shifting), zeigt uns Aydin eine Auswahl an Tools und SDKs, um diese Themen umzusetzen. Wir lernen, wie wir den Energieverbrauch unserer Anwendungen in verschiedenen Umgebungen messen können. Wir sehen Tools zur Energiemessung in der Cloud mit den Plattformdiensten, in Kubernetes-Cluster, in Virtuellen Maschinen oder direkt am „Bare Metal“. Wir lernen, wie wir die eingesetzten Ressourcen messen und bestimmen können und somit unter Berücksichtigung der CO2-Intensität des Netzes, einen gesamtüberblick über die CO2-Emissionen zu erhalten. Wir lernen, wie wir mit dem gewonnen Wissen und unter Einsatz von Werkzeugen unsere Anwendung optimieren können und so die CO2-Emissionen reduzieren. Ein sehr großer Hebel zur CO2-Reduzierung ist die Verschiebung der Last zu Zeiten oder Regionen mit verfügbaren regenerativen Energien. Wir lernen Strategien kennen, wie wir unsere Software darauf ausrichten und wie wir diese „Sauberen Compute-Slots“ erkennen und prognostizieren können. Am Ende sollte jede Person im Auditorium mit der Entwicklung grüner Software starten können.

Anforderungen: Die Teilnehmer:innen sollten ein grundsätzliches Verständnis von Softwareentwicklung, Cloud-Dienste und Kubernetes haben. Wir werden nicht programmieren sondern bleiben abstract.

• Teilnehmende benötigen ein eigenes Notebook mit: o Kubectl, helm o Optional: K9s o Optional: PowerShell (core) o Optional: Docker (Desktop) o Yarn o Visual Studio Code oder ähnliches o Postman oder ähnliches o Optional: Zugriff auf einer Website zur Messung der CO2-Emissionen

• Des Weiteren wird ein Zugriff auf ein k8s-Cluster benötigt. Eine lokale Installation ist ausreichend. • Die PaaS-Beispiele werden in Azure gezeigt. • Zur Messung von CO2-Emissionen von Cloud-Anwendungen, wird ein administrativer-Zugriff auf Azure, AWS oder GCP benötigt. o Alternativ: Voraussetzungen offline durchführen o AWS: https://www.cloudcarbonfootprint.org/docs/aws o GCP: https://www.cloudcarbonfootprint.org/docs/gcp o Azure: https://www.cloudcarbonfootprint.org/docs/azure

Aydin Mir Mohammadi

Aydin Mir Mohammadi, Partner und Architekt bei bluehands erstellt seit mehr als zwanzig Jahren Software. Er ist spezialisiert auf die Entwicklung verteilter komplexer Fachanwendung auf Basis der Microsoft Technologien. Aydin ist Mitinitiator der .NET User Group Karlsruhe, Organisator der Green Software Development Karlsruhe und host des #nossued Open Space. Darüber hinaus engagiert er sich bei der Ausbildung von jungen Softwareentwickler:innen als Dozent an der Dualen Hochschule Karlsruhe.

Tomme Waldemar

bluehands GmbH & Co.mmunication KG