Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Making our applications greener

Making our applications greener

A talk I gave at Devopsdays Oslo.

We live - and work - in an environmentally unbalanced system. In this talk, I’m hoping to make the audience more aware of the impact IT has on the environment, and leave them with tools that help positively lower this impact.

Did you know that the IT sector is estimated to consume approximately 3.6% - 7% of global electricity, and according to Cisco’s Network Traffic Forecast, we’re anticipating a significant increase in global Internet traffic in the next two years? And that the estimated global energy consumption for data centers and enterprise networks alone was equivalent to about 245 TWh in 2016? That’s more electricity than Spain, Australia or Iran use in a year.

We’ll go through more data on the environmental impact of our IT sector. We’ll use The Green Web Foundation’s “Platforms, Packets, Process” mental model to try to put that data into perspective. Finally, we’ll look at what we can do in our everyday work to make our services environmentally sustainable.

Let’s contribute together towards bringing the balance back.

Marta Paciorkowska

October 23, 2019
Tweet

More Decks by Marta Paciorkowska

Other Decks in Technology

Transcript

  1. Confidential Customized for Lorem Ipsum LLC Version 1.0 Making our

    applications greener Marta Paciorkowska, infrastructure developer @FINN @a_meba
  2. Confidential Customized for Lorem Ipsum LLC Version 1.0 Our plan

    today Personal story Global crisis Our users Mental model Platform Packets Process Where to start @a_meba
  3. Personal story I haven’t always worked in tech. Came from

    environmental activism and struggled to feel relevant. Western tech needs more outsiders. ☺ @a_meba
  4. Our hands aren’t clean Global electricity consumption = 21,000 TWh

    1 in 2016. Est. global energy consumption for data centers & enterprise networks alone was 245 TWh in 2016. 1 ICT networks (phones + computers) add another 220 TWh. 1 @a_meba Norway Iran IT sector USA China 100 200 300 6400 TWh 400 6300 … 4000 3900 3800 … 3700
  5. Let’s simplify it a bit (Conservative) assumptions: • The IT

    sector produces well over 110 Mt CO 2 equivalent every year.1 • We can spend 20 years on offsetting a year’s emissions. • A tree can absorb ½ ton of CO 2 in that time.2 • we fit 100,000 trees in a km2. @a_meba
  6. They care They want to make better choices and they

    want us to do better 01 | Organic food market in Poland grew 4x in under 10 yrs 1 02 | 73% of millennials would pay more for sustainability 2 03 | ⅓ of consumers prefer sustainable brands 3 04 | 69% of consumers want transparency 4 05 | 52% of Norwegians shop for sustainability 5 @a_meba
  7. We can be in the way Do brands make it

    easier or harder for you to be environmentally friendly and ethical in your daily life? Easier 28% Harder 43% Don’t know 29% @a_meba Survey of 1004 respondents in the USA and UK, November 2018 for Futerra by OnePulse 1
  8. High expectations @a_meba Yes 88% No 12% Would you like

    brands to help you be more environmentally friendly and ethical in your daily life? Survey of 1004 respondents in the USA and UK, November 2018 for Futerra by OnePulse 1
  9. Platform, Packets, Process A model introduced by The Green Web

    Foundation 1 that helps reason about the environmental impact of your infrastructure. There are also other models you can use to reason about other areas of how your company operates. @a_meba
  10. Finn’s story Evaluated different cloud providers. Made an internal sustainability

    report. Initiative came from the developers. Choose a cloud provider because it fit our use case and was more sustainable. @a_meba
  11. Not all cloud providers are the same @a_meba • Some

    create efficient data centers with a PUE (Power Usage Effectiveness) way over the industry average.1 • Some either use renewable energy or match actual energy demand with carbon-free supply. • Some implement a circular economy and reuse server components. @a_meba
  12. Not all cloud providers are the same • Some create

    efficient data centers with a PUE (Power Usage Effectiveness) way over the industry average.1 • Some either use renewable energy or match actual energy demand with carbon-free supply. • Some implement a circular economy and reuse server components. @a_meba • Others allegedly drop sustainable goals to pursue business with the oil and gas industry. @a_meba
  13. Can your platform be greener? • Choose those cloud regions

    for your infrastructure which are powered by renewables. 1 Some tips to make it happen @a_meba
  14. Can your platform be greener? • Choose those cloud regions

    for your infrastructure which are powered by renewables. 1 • Switch to a sustainable cloud provider or data center. Some tips to make it happen @a_meba
  15. Can your platform be greener? • Choose those cloud regions

    for your infrastructure which are powered by renewables. 1 • Switch to a sustainable cloud provider or data center. • Avoid over-provisioning servers. Some tips to make it happen @a_meba
  16. Can your platform be greener? • Choose those cloud regions

    for your infrastructure which are powered by renewables. 1 • Switch to a sustainable cloud provider or data center. • Avoid over-provisioning servers. • Periodically audit infrastructure to remove unused VMs and services. Some tips to make it happen @a_meba
  17. Servers in US data centers 10%-30% Zombie servers: obsolete/unused machines

    that consume electricity but aren’t used 1 @a_meba
  18. How efficient is your application? Some open questions • Do

    you cache everything you could to save traffic? (Immutable = cacheable) @a_meba
  19. How efficient is your application? Some open questions • Do

    you cache everything you could to save traffic? (Immutable = cacheable) • Do you optimize your database calls? These can get resource-heavy. @a_meba
  20. How efficient is your application? Some open questions • Do

    you cache everything you could to save traffic? (Immutable = cacheable) • Do you optimize your database calls? These can get resource-heavy. • Do you (de)serialize data needlessly? Should you switch to a binary format instead? @a_meba
  21. How efficient is your application? Some open questions • Do

    you cache everything you could to save traffic? (Immutable = cacheable) • Do you optimize your database calls? These can get resource-heavy. • Do you (de)serialize data needlessly? Should you switch to a binary format instead? • JVM? How about GraalVM! @a_meba
  22. How efficient is your application? Some open questions • Do

    you cache everything you could to save traffic? (Immutable = cacheable) • Do you optimize your database calls? These can get resource-heavy. • Do you (de)serialize data needlessly? Should you switch to a binary format instead? • JVM? How about GraalVM! • Are some languages more efficient than others (Java vs Go)? @a_meba
  23. How efficient is your application? Some open questions • Do

    you cache everything you could to save traffic? (Immutable = cacheable) • Do you optimize your database calls? These can get resource-heavy. • Do you (de)serialize data needlessly? Should you switch to a binary format instead? • JVM? How about GraalVM! • Are some languages more efficient than others (Java vs Go)? • Maybe drop threads and use coroutines instead? @a_meba
  24. How efficient is your application? Some open questions • Do

    you cache everything you could to save traffic? (Immutable = cacheable) • Do you optimize your database calls? These can get resource-heavy. • Do you (de)serialize data needlessly? Should you switch to a binary format instead? • JVM? How about GraalVM! • Are some languages more efficient than others (Java vs Go)? • Maybe drop threads and use coroutines instead? • Smaller. Docker. Images. @a_meba
  25. It’s not me, it’s you • Remove unused dependencies. •

    Assess services like Heroku, Travis, Dockerhub, … Your dependencies also count @a_meba
  26. It’s not me, it’s you • Remove unused dependencies. •

    Assess services like Heroku, Travis, Dockerhub, … • If applicable, switch to GitHub Actions because your build runs where your code is. Your dependencies also count @a_meba
  27. It’s not me, it’s you • Remove unused dependencies. •

    Assess services like Heroku, Travis, Dockerhub, … • If applicable, switch to GitHub Actions because your build runs where your code is. • When choosing new technologies, make an environmental sustainability assessment of each option. Your dependencies also count @a_meba
  28. Process How people work in your organization and how you

    deliver your product to your users. @a_meba
  29. Meat is tasty. A future is tastier. Travel 2.88t CO

    2 Round flight from Oslo to Barcelona for KubeCon for your DevOps team of 4. 1 Meat 5.99t CO 2 Saved by providing only vegetarian food at a company canteen for 200 people in a month.2 Idle resources 2.2t CO 2 Saved by switching off 200 laptops for the night for a month. 3 @a_meba
  30. A greener office • Public transport tickets for all employees.

    • Safe bike parking on premises. • Promote home office. • Six hour workdays. • Conferences? Accessible by train or video stream. A greener application @a_meba
  31. A greener office • Public transport tickets for all employees.

    • Safe bike parking on premises. • Promote home office. • Six hour workdays. • Conferences? Accessible by train or video stream. • Update your company’s device policy to exchange equipment less often. • Turn off screens, lights & computers for the night. A greener application @a_meba
  32. ClimateAction.Tech recommends: 1 0 1 Sustainability statement Creates a feeling

    of shared purpose. 0 2 Gather data & ideas Stick to same methodology throughout whole process. 0 3 Appoint a task force Remove obstacles, keep momentum going. @a_meba
  33. Find allies in your company Example: We have a weekly

    Academy at Finn, where we have talks, brainstorm. I held an Academy and asked colleagues about their ideas. I used some of them here. @a_meba
  34. Resources To help you get started • ClimateAction.Tech slack •

    Green Web Foundation’s website • This article that outlines a good process • A short summary of environmental sustainability of cloud providers • Greenpeace’s Click Clean reports @a_meba
  35. In times of crisis, we need to be efficient, resourceful,

    and caring about each other. @a_meba @a_meba
  36. Confidential Customized for Lorem Ipsum LLC Version 1.0 Credits Images

    on slides 1, 3, 4, 12, 14, 15, 17, 18, 21, 51, 57, 59, 60, 63, 65: Marta Paciorkowska Images on slides 13, 35, 58: Rawpixel.com Image on slide 24: Volkswagen @a_meba Image on slide 61: Finn.no AS Images on slide 37: The Green Web Foundation A huge thank you to Kim Tore Jensen, Magdalena Kowalczyk and Chris Adams.