Einfachheit und Nachhaltigkeit in der …...Anmerkungen • Dies sind die Folien des Vortrags...

Post on 12-Mar-2020

6 views 0 download

transcript

Einfachheit und Nachhaltigkeit in der Softwareentwicklung

Ulrich Deiters

JUG Saxony Day, Freitag 13.9.2019

Anmerkungen• Dies sind die Folien des Vortrags „Einfachheit und Nachhaltigkeit in der

Softwareentwicklung“ auf dem „JUG Saxony Day 2019“ am 13.9.2019

• Die Folien sind nicht selbsterklärend sondern dienen der Unterstützung des Vortrags

• Ich freue mich über Fragen und Feedback

Einfachheit und Nachhaltigkeit in der Softwareentwicklungvon Ulrich Deiters ist lizenziert unter einer  Creative Commons Namensnennung - Weitergabe unter gleichen Bedingungen 4.0 International Lizenz.

Mit Menschen Software

für Menschen entwickeln

Ulrich DeitersSoftware Architect @ T-Systems Multimedia Solutions GmbH

https://xing.to/ulid

Uli

@ulid000#Berlin

#Fahrrad #OpenData…

Wieso sind unsere Lösungen eigentlich nur selten so einfach wie wir sie gerne hätten und durch was

handeln wir uns immer wieder trotz neuer Paradigmen und Abstraktionen Komplexität

abseits der Problemlösung ein?

Weshalb sind unsere Softwarelösungen oft nicht so langlebig und verursachen schon nach einiger Zeit hohe Wartungsaufwände oder lassen uns den

Support für ältere Geräte oder Betriebssystemversionen einstellen?

Warum brauchen wir in der Softwareentwicklung eigentlich fast immer die durch die

Weiterentwicklung der Hardware oder andere Verbesserungen gewonnene Effizienz in kürzester

Zeit wieder auf?

https://onezero.medium.com/the-efficiency-delusion-f6a97241e1e1

Ich kann langweilige oder lästige Dinge mit Computern automatisieren.

Die ganze Welt besteht eigentlich aus Effizienzproblemen.

Und dann haben wir mehr Zeit für schöneres oder wichtigeres.

NEUES ist GUT

ALTES oder UNVERSTÄNDLICHES nenne ich LEGACY und dann nichts wie WEG DAMIT

Bequemlichkeit gewinnt

Softwareentwicklung als Effizienzillusion

Einfachheit

"Maggi NaturPur Frühlingsgemüsesuppe mit Stempel: "Produkt vom Markt genommen"" by foodwatch is licensed under CC BY-SA 2.0 "Maggi NaturPur Frühlingsgemüsesuppe mit Stempel: "Produkt vom Markt genommen"" by foodwatch is licensed under CC BY-SA 2.0

Reduzieren Der einfachste Weg zur Einfachheit führt über durchdachtes Weglassen

Organisieren Durch Organisation sieht ein System aus vielen Elementen nach weniger aus

Zeit Zeitersparnis fühlt sich wie Einfachheit an

Lernen Wissen macht alles einfacher

John Maeda, Simplicity: Die zehn Gesetze der Einfachheit, 2007

KISS Keep It Simple Stupid (or Sufficient)

YAGNI You Ain’t Gonna Need It

EUFD Enough Up Front Design

Coupling and Cohesion Was gehört zusammen und was nicht

Understandibility Verständlichkeit für mich und andere

Replaceability Eher zum Austausch eigenen Codes als von Frameworks/Technologien

https://www.slideshare.net/cairolali/langlebige-architekturen

Modularisierung

Hierarchisierung

Musterkonsistenz

Chunking

Bildung von Hierarchien

Aufbau von Schemata

Verständnis komplexer Strukturen nach Dr. Carola Lilienthal

https://speakerdeck.com/searls/the-social-coding-contract

Bedarf

Bequemlichkeit

Komplexität

Risiko

Mysterium

Dependency-Graph nach Justin Searls

Zeit

Ges

chw

indi

gkei

t

Simple

Easy

Easy

Simple

Einfach machen vs einfach machen

Eleganz der Lösung

Kom

plex

ität

Genialeinfach

Perfekt aber umständlich

Smart, pfiffig, liebevoll

Good enough

Dumm einfach

Gunter Dueck, Schwarmdumm: So blöd sind wir nur gemeinsam, 2015

„Simplicity is a great virtue but it requires hard work to achieve it and education to appreciate it.

And to make matters worse: complexity sells better.“

- Edsger W. Dijkstra

Nachhaltigkeit

Enkeltauglich

Nachhaltigkeit ist ein Handlungsprinzip zur Ressourcen-Nutzung, bei dem eine dauerhafte Bedürfnisbefriedigung

durch die Bewahrung der natürlichen Regenerationsfähigkeit der beteiligten Systeme (vor allem von Lebewesen und

Ökosystemen) gewährleistet werden soll.

https://de.wikipedia.org/wiki/Nachhaltigkeit

https://sdg.ac/de/

Software/Digitalisierung

Ökologie

Effizienz

Konsistenz

Suffizienz

Gesellschaft Ökonomie

Politik

Felix Sühlmann-Faul, Stephan Rammler, Der blinde Fleck der Digitalisierung, 2018

Wäre das Internet ein Land, hätte es den weltweit dritthöchsten Stromverbrauch nach China und den USA.

http://www.clickclean.org/downloads/ClickClean2016%20HiRes.pdf

Die Effizienz der Hardware verdoppelt sich alle 1,5 - 2 Jahre.

Aber wo bleibt sie?

Anstieg der Nutzung oder hungrigere Software?

9,5 W

0,2 W

Standby

ca. 1,8 kWh / Jahr

32 %

30 Minuten / Tag

ca. 1,8 kWh / Jahr

16 %

60 W

30 Minuten / Tag

ca. 11 kWh / Jahr

100 %

https://www.smarthomeassistent.de/amazon-echo-stromverbrauch-stromkosten-aller-geraete/

1,7W

Standby

ca. 14,9 kWh / Jahr

168 %

+ +

Rebound Backfire

https://onlinelibrary.wiley.com/doi/pdf/10.1111/jiec.12630

Netflix HD ca. 3 GB/h 0,045 kWh/h - nur Datentransfer

0,015 kWh/GB Datentransfer (extrapoliert von 2015,

nur Datentransfer außerhalb der Wohung, Best Case Annahme)

entspricht 45 W

Bei 2 h / Tag: 32,9 kWh / Jahr

9,5 W

9,5 W

9,5 W

9,5 W

9,5 W

https://help.netflix.com/de/node/87

SD ca. 0,7 GB/h

4K ca. 7 GB/h

https://www.gsmarena.com/apple_iphone_x-8858.php

1 x Laden / Tag Akku: 10,35 Wh Ladegerät mit Wirkungsgrad 73,1% und 0,012 W Standby

5,3 kWh / Jahr

https://images.apple.com/environment/pdf/products/iphone/iPhone_X_PER_sept2017.pdf

9,5 W

90 Minuten / Tag

https://images.apple.com/environment/pdf/products/iphone/iPhone_X_PER_sept2017.pdf

https://www.umweltbundesamt.de/themen/klima-energie/energieversorgung/strom-waermeversorgung-in-zahlen?sprungmarke=Strommix#Strommix

Entspricht der CO2 Emission von 167 kWh des deutschen Strommixes 2018.

https://images.samsung.com/is/content/samsung/p5/uk/aboutsamsung/SAMSUNG_SUSTAINABILITYREPORT_2016_ENG-ENVIRONMENT.pdf

3% < Android 6

http://www.clickclean.org/germany/de/

https://aws.amazon.com/de/about-aws/sustainability/ https://www.sec.gov/Archives/edgar/data/1759509/000119312519059849/d633517ds1.htmhttps://www.businessinsider.de/lyft-ipo-amazon-web-services-2019-3?r=US&IR=T

Lyft zahlt Amazon ca. 0,14 USD pro durchgeführter Fahrt.

http://www.clickclean.org/downloads/ClickClean2016%20HiRes.pdf

AWS hat 2018 erstmal mehr als 50% erneuerbare Energie eingesetzt.Energieeinsparungen durch hohe Auslastung geteilter Ressourcen und effiziente Rechenzentren.

Felix Sühlmann-Faul, Stephan Rammler, Der blinde Fleck der Digitalisierung, 2018

Steffen Lange, Tilman Santorins, Smarte Grüne Welt, 2018

SystemeffizienzSo wenig Energie wie nötig für die Nutzung aber auch die dauerhafte

Bereitstellung verbrauchen.

TechniksuffizienzDie Nutzungsdauer durch

langlebige und reparierbare Hard- und Software erhöhen.

Felix Sühlmann-Faul, Stephan Rammler, Der blinde Fleck der Digitalisierung, 2018

Steffen Lange, Tilman Santorins, Smarte Grüne Welt, 2018

DatensuffizienzNur so viel permanente

Vernetzung und Datenverkehr wie sinnvoll und nötig.

Felix Sühlmann-Faul, Stephan Rammler, Der blinde Fleck der Digitalisierung, 2018

Steffen Lange, Tilman Santorins, Smarte Grüne Welt, 2018

Felix Sühlmann-Faul, Stephan Rammler, Der blinde Fleck der Digitalisierung, 2018

Steffen Lange, Tilman Santorins, Smarte Grüne Welt, 2018

NutzungssuffizienzBewusste unterstützende Nutzung ermöglichen statt Aufmerksamkeit

zu missbrauchen.

https://www.umweltbundesamt.de/publikationen/entwicklung-anwendung-von-bewertungsgrundlagen-fuerhttps://www.umweltbundesamt.de/sites/default/files/medien/1410/publikationen/2018-12-12_texte_105-2018_ressourceneffiziente-software_0.pdf

Entwicklung und Anwendung von Bewertungsgrundlagen für ressourceneffiziente Software unter Berücksichtigung bestehender Methodik

Einfachheit und Nachhaltigkeit

https://maeda.pm/2018/02/10/humanist-technologist/

I do, because I can.

I do, because I care. 

technologist 

humanist

— John Maeda

Danke!

Übrigens: Bei 900 €/Tag entspricht ein Entwicklertag in Deutschland den Kosten von ca. 3000 kWh

340 W x 365 x 24 h