Duurzame Software Engineering is een opkomende discipline op het snijvlak van klimaatwetenschap, software, hardware, elektriciteitsmarkten en datacenterontwerp. Het doel is om softwaretoepassingen te definiëren, bouwen en draaien op een manier die duurzaam is voor onze planeet. Microsoft heeft een training op Microsoft Learn staan voor degene die zich verder willen verdiepen. Op https://greensoftware.foundation/ vind je nog veel meer informatie. Mijn doel met dit artikel is om een samenvatting te geven van 6 principes die Microsoft in zijn training.

Koolstof efficiëntie

Koolstof efficiëntie is eigenlijk het onderliggende fundament van duurzame software ontwikkeling. Het betekent dat we nadenken over manieren om minder CO2 uit te stoten. Dit heeft betrekking op het energie verbruik van onze software, maar ook de gebruikte hardware, het al dan niet dynamisch kunnen schalen. In de breedste zin legt het een uitdaging neer om na te denken over hoe onze producten bijdrage aan CO2 uitstoot en welke maatregelen we kunnen nemen om dit aandeel te verlagen.

Energie efficiëntie

Het is een beetje een open deur, maar hoe minder energie onze applicaties gebruiken, hoe minder uitstoot. Er is natuurlijk overlap met koolstof efficiëntie, maar juist door heel specifiek naar energie gebruik te kijken is veel winst te behalen.

Koolstof intensiteit

Ik weet niet helemaal zeker of dit een lekkere vertaling is van “Carbon Intensity”, maar het idee is hopelijk helder. Niet alle energie die we verbruiken leidt tot evenveel uitstoot van CO2. Door rekening te houden met beschikbaarheid van duurzame energie is een hoop winst te behalen.

Hardware efficiëntie

Als je kijkt naar hardware efficiëntie gaat het vooral over de hoeveelheid CO2 die nodig is geweest om de hardware te maken in verhouding tot de verwachte levensduur van de hardware. Er bestaan grote verschillen tussen hardware componenten en machines.

Meten is weten

Om doelstellingen te kunnen stellen op het gebied van duurzaamheid, is het belangrijk om duurzaamheid meetbaar te maken. Dit gebeurt op basis van drie aandachtsgebieden:

  • Scope 1: directe CO2 uitstoot door je producten
  • Scope 2: indirecte CO2 uitstoot door energie of warmte die nodig is om je producten te gebruiken.
  • Scope 3: indirecte CO2 uitstoot die te maken heeft met alle aanverwante activiteiten om je product mogelijk te maken. Denk aan hardware productie of transport.

Duurzaamheidsdoelstellingen

Door bezig te zijn met duurzame software engineering, maak je bewustere keuzes en maak je duurzaamheid meetbaar. Uiteindelijk is het doel dat dit leidt tot concrete doelstellingen voor verduurzaming.