101 Green Software


This book is no longer available for sale.

101 Green Software

A Practical Guide for Developers & Architects

About the Book

How can developers help prevent climate change?

Is recycling trash and driving electric cars the best we can do to help prevent climate change?

As software developers, we can make our software applications greener, reducing the resources they need, such as the number of servers they run on and the electricity these servers consume.

This book helps you learn how to build sustainable software, enabling you to apply gained knowledge to your daily work. It provides practical guidelines that you can follow to:

  • re-architect existing software applications or
  • build new ones that have a reduced environmental footprint.

Buy this book now to be among the first to learn about Green Software Engineering & make an impact by helping prevent climate change!

  • Share this book

  • Categories

    • Software Architecture
    • Cloud Computing
    • Software Engineering
    • Java
  • Feedback

    Email the Author(s)

About the Author

Ioannis Kolaxis
Ioannis Kolaxis

Ioannis Kolaxis is a Principal Director at Accenture Technology Sustainability Innovation, focusing on Green Software innovations. He has been previously developing software for Atos, IBM, and Siemens.

Ioannis was a kid in primary school when he first saw the green screen with the blinking cursor of an Amstrad CPC6128. This computer opened a new world to him, a world of continuous exploration and creation through programming.

He invented a novel way of working remotely, having filed five patents for software solutions. He was awarded twice the first prize for coming up with the most innovative ideas at Atos Innovation Week 2020 and 2021.

Ioannis frequently speaks at conferences and meetups, including GOTO Amsterdam 2022, Devoxx Ukraine 2021, and Oracle Code One 2019.

Visit his website to learn more: https://kolaxis.dev

Table of Contents

  • About this book
    • What can you do to prevent climate change?
      • Software decarbonization
      • Decarbonized software
    • How can you build green software?
    • The author’s perspective
  • 1 Don’t send your data around the world
    • 1.1 Place your servers close to your end-users
    • 1.2 Reduce the size of data sent over the network
      • Filter out unnecessary data
      • Compress data
      • Cache data
    • 1.3 Process data at its source
    • 1.4 Adopt energy-efficient protocols
      • How HTTP/2 works
      • Energy efficiency of HTTP/2
    • 1.5 Summary
  • 2 Run your software on carbon-free electricity
    • 2.1 Carbon-free electricity explained
    • 2.2 Electricity mix in power grids
      • Base load
      • Intermediate load
      • Peak load
    • 2.3 Assessing the electricity mix
    • 2.4 Choose a data center that consumes carbon-free energy
    • 2.5 Run your code when the sun shines
    • 2.6 Send your code where the sun shines
      • Run your code where it’s cold outside
      • Build a green Kubernetes scheduler
    • 2.7 Summary
  • 3 Get rid of redundant servers
    • 3.1 Redundant servers explained
    • 3.2 Adopt containers for high availability
    • 3.3 Leverage automation for high availability
    • 3.4 Summary
  • 4 Introduce a stop/start mechanism
    • 4.1 Run your application as serverless functions
    • 4.2 Run your application as serverless containers
    • 4.3 Prefer serverless services
    • 4.4 Summary
  • 5 Adopt green programming languages
    • 5.1 Prefer compiled languages
    • 5.2 Should you rewrite your application?
    • 5.3 Summary
  • 6 Decarbonize Java applications
    • 6.1 Upgrade to the latest version of Java
      • Benefit from compact strings
      • Enable Application Class-Data Sharing
      • Shrink your Java Runtime Environment
    • 6.2 Use a JVM that consumes less memory
    • 6.3 Use a Java framework that consumes less memory
    • 6.4 Summary
  • 7 How green is your software?
    • 7.1 Less is… green!
      • Get your cloud application Well-Architected
    • 7.2 Energy labels for software applications
      • What are the boundaries of your application?
      • How does your application compare to others?
    • 7.3 Summary
  • 8 How will you contribute?
    • 8.1 Set priorities
    • 8.2 Take your first steps
    • 8.3 Track your progress
    • 8.4 Reinvent software development
  • References
  • Author biography
  • Notes

The Leanpub 60-day 100% Happiness Guarantee

Within 60 days of purchase you can get a 100% refund on any Leanpub purchase, in two clicks.

See full terms

80% Royalties. Earn $16 on a $20 book.

We pay 80% royalties. That's not a typo: you earn $16 on a $20 sale. If we sell 5000 non-refunded copies of your book or course for $20, you'll earn $80,000.

(Yes, some authors have already earned much more than that on Leanpub.)

In fact, authors have earned$12,307,240writing, publishing and selling on Leanpub.

Learn more about writing on Leanpub

Free Updates. DRM Free.

If you buy a Leanpub book, you get free updates for as long as the author updates the book! Many authors use Leanpub to publish their books in-progress, while they are writing them. All readers get free updates, regardless of when they bought the book or how much they paid (including free).

Most Leanpub books are available in PDF (for computers) and EPUB (for phones, tablets and Kindle). The formats that a book includes are shown at the top right corner of this page.

Finally, Leanpub books don't have any DRM copy-protection nonsense, so you can easily read them on any supported device.

Learn more about Leanpub's ebook formats and where to read them

Write and Publish on Leanpub

You can use Leanpub to easily write, publish and sell in-progress and completed ebooks and online courses!

Leanpub is a powerful platform for serious authors, combining a simple, elegant writing and publishing workflow with a store focused on selling in-progress ebooks.

Leanpub is a magical typewriter for authors: just write in plain text, and to publish your ebook, just click a button. (Or, if you are producing your ebook your own way, you can even upload your own PDF and/or EPUB files and then publish with one click!) It really is that easy.

Learn more about writing on Leanpub