Green Software: The case for design

In part five of our Green Software Series, we look at how design plays a key role in building useful green software, outlining green design principles and guidelines.
Date posted
13 July 2023
Reading time
5 minutes
Nikos Karaoulanis
Head of Design ·

In our previous post on green software, we looked at how design thinking can contribute to the creation of sustainable, digital products and services - suggesting six questions to consider when starting a software development project.

After researching the subject extensively, it became apparent that the current debate centres wholly around technology – i.e., the tech used to build software, the tech that brings software to life, and the digital solution itself. 

Whilst The Green Software Foundation has done some excellent work at both raising awareness around sustainability in tech and actively working on practical approaches to building green software, it was disappointing to see how little design thinking and design approaches feature in the debate.

The focus, and for good reason, is around technology and measuring emissions. This makes sense; we need to be able to measure the environmental impact of our digital products in order to improve and make an impact. However, the conversation rarely moves to the actual experiences we build, the problems our solutions solve, and the value they add.

There is little meaningful content on how design (or any other non-tech discipline) can – and should – play a key role in building useful green software. Green software principles must be a part of the user experience is a welcome start, but it doesn’t go far enough. The Sustainable UX Network (SUX) (mentioned in the article) has yet to deliver, and the Accenture report highlighted, while insightful, contains only a few paragraphs that list examples of good and bad green design.

image

It's time to look beyond technology and really consider the value of what we are building. Our previous blog makes an attempt to establish a framework to ensure we ask difficult questions before we write a line of code. In this blog, we’re going to focus on:

  1. Putting together a set of green design principles for sustainable digital projects and services, and
  2. Collating an emerging set of design guidelines to ensure sustainability is baked into the software we build.

Green design principles

At Kainos, we’re developing and embedding green software principles that encapsulate what green software is about, and inspire our teams to deliver digital solutions with sustainability front and centre.

Green software is planet-centric

There are some commentators online who encourage us to consider the planet (i.e., the environment) as a stakeholder among other stakeholders – like different types of users and business stakeholders.

But this is not enough. It doesn’t take us far enough, and it’s unlikely to make much of an impact. Whilst good design has always been environmentally friendly, there’s a lot of badly designed software still out there.

We must start with meeting the planet's needs first, and then follow with other stakeholders (including users). Just like meeting the primary persona’s needs first. It might be controversial to place the planet over users, but building solutions that meet the planet’s needs will also enable users to achieve their goals.

Green software reduces complexity

Modern web technologies, high connectivity speeds, and a wealth of powerful digital touchpoints have made the design and tech industry careless.

We tend to spend time creating solutions that ‘delight users’, offering rich — complex data and energy hungry software — experiences that can be wasteful (while not fully and efficiently meeting needs or having a clear purpose).

Focusing on the task at hand will help create light, simple, (and yes!) – enjoyable experiences. We know that more design is not necessarily good design.

Green software encourages sustainable behaviours

While most software carbon emissions are baked into the live product — that is both embodied and operational carbon — there is also energy consumed by users engaging at the front end. This includes the time they spend on their screens interacting with a solution, as well as all other activities required to complete a task, such as making phone calls, uploading or printing documents, consulting chatbots, etc.

Browser energy also contributes to the emission costs of the solution: for example, enabling dark mode, or the number of open browser tabs (right now, I currently have 12 open!).

We need to both empower users and make them accountable for their emission costs. Design can promote interaction styles that reduce energy consumption and therefore emissions, or visualise usage and waste. For example, exposing emissions per method of contacting a business, or the difference in energy consumption between dark and bright modes.

image

Green software makes users think

This is an idea inspired from Cennydd Bowles’ excellent work on Ethics. Since its beginnings, UX has been an advocate of simplicity and building seamless and frictionless experiences. The less a user has to think, the better.

We remember many of us quoting ‘Don’t make me think’ and pleading with clients to remove all friction from their products so users can complete their tasks without having to think much. While our intentions were honourable, we, as software designers and developers, have created plenty of experiences that users sleepwalk through.

Is it time to wake everyone up and place some friction in our products?

Green software is inclusive, or rather, inclusive software is green

At Kainos, we’ve been focusing on building inclusive and accessible services that comply with the Equality Act and Accessibility Regulations. We engage users with a range of digital literacy skills and design with accessibility in mind.

We are finding out that inclusive and accessible design is inherently green.

Designing for a wide and diverse user base encourages us to simplify journeys, language and UI elements, offering more streamlined and usable services as a result.

Green software requires less data

It is 2004. A client is asking us to build a form to collect user data. You know, things like name, address, DOB... DOB? Hmm, why do you need this? Well, just in case.

Things haven’t really changed much, have they? In fact, they’ve gotten worse. The tech industry is as greedy as ever; collecting and storing lots of data just in case we need it.

Green software needs to go on a data diet.

We need to really consider the data we need to collect, where to store it, for how long, and how to sunset it.

These are some initial and emerging principles; very much a work in progress. We’re still considering them, debating them, and testing them to settle on a list that can guide our customers in green software development.

 

Green design guidelines

The Green Software Foundation has made a great start to building a set of guidelines for AI, Cloud, and Web. Only the latter includes guidelines closely associated with design. We’re going to add to those nine patterns with recommendations on expanding to a more complete list, offering teams the opportunity to bake sustainability into their approach as early as possible. While not complete, here are some patterns Kainos is considering:

Content and typography

  1. Streamline content. Develop an end-to-end content strategy, from creating to sunsetting content.
  2. Optimise font files. Opt for system fonts - they are the most efficient.
  3. Only keep the fonts and weights you will actually need and consider stripping out unused characters.

Colour

  1. Reduce brightness of colour.
  2. Opt for colours that use less energy. The greater the amount of colour variation in an image the larger the file.
  3. Opt for black and white or monochrome images.
  4. Use flat colours.

Also

  1. Use Javascript with care.
  2. Compress code to reduce file size.
  3. Avoid video. Use video only if absolutely necessary. Opt for interactive web animations instead.
  4. Reuse than create. Maintaining a library of assets will help speed up work and build consistency.
  5. Consider your design workflow. Do you go from paper, to Figma, to code? Do you go straight to code?
  6. Consider your research ops. Are you travelling to conduct user research? What about all those video files you are storing? Let’s not forget the tens of Miro or Mural boards we’ve become so accustomed to!
This is just a starting point. What other patterns do you think should be added to the list?
image

To conclude

The green software movement will benefit from louder, non-technical voices; voices that are concerned with designing planet-centred solutions that are useful to users. While technology is the enabler, product management, design, research, content, and more skills are critical in defining approaches that will help the tech industry become better leaders in sustainability.

Sources

About the author

Nikos Karaoulanis
Head of Design ·
I provide design leadership and direction in building digital products and service that deliver user and business value. I focus on building the right thing, the right way, for the right reasons.