What is green software engineering?

The keyboard of a laptop, with two leaves sprouting from it. There is a CodeClan logo.

Recently, you might have noticed a message at the end of a colleague’s email signature that reads something like:

“In the interest of sustainability, I don’t send thank you emails. Please assume that I am grateful for your response.”

Is that an eye roll we detect?

As tough as it might be to hear, on this occasion, your colleague is right. (Don’t worry, bragging about the personal best they got at the Park Run over the weekend is still indefensible).

A report by OVO Energy finds that if everyone in the UK sent one less ‘thank you’ email a day, we would collectively save an annual 16,433 tonnes of carbon.

Often, we think of software, applications and the Internet as intangible, other-worldly things. Because of that, we forget that the way we design and use software can have a big impact on the planet’s health.

As digital technology becomes more of a contributor to climate change, let’s explore some ways in which green software engineering can help to reduce global carbon emissions.

Electricity

While electricity can be generated with renewable energy, most is still made by burning fossil fuels.

Every type of software consumes electricity – from storing information in data centres to using devices.

According to Mike Berners-Lee (Lancaster University Professor and Tim Berners-Lee’s younger brother), using a mobile phone for one hour a day generates 1.25 tonnes of CO2 per year. That’s equivalent to driving 6000km in a diesel car, or roughly six annual trips from Land’s End to John O’Groates.

As Asim Hussain, former Green Cloud Advocacy Lead at Microsoft explains: “The creators of software often do not have to bear the burden of the electricity their software consumes, this is what economists call an externality, i.e. someone else’s problem.”

By taking responsibility for the electricity the software we develop consumes, we can help to lower carbon emissions.

Carbon intensity and demand shifting

Bear with us, this is a bit of a complicated one.

Most power grids are fuelled by a mix of renewable and non-renewable energy sources.

The exact mix depends on the location and the pressures on the grid at given times.

We can usually control the amount of non-renewable energy (like natural gas and coal) that we produce according to demand.

It’s harder to control the amount of renewable energy we produce because it depends on changing factors like wind strength.

Because renewable energy is harder to store, power grids tend to use energy from renewable sources before they use energy from non-renewable sources.

With us so far? OK, good.

‘Carbon intensity’ refers to “how many grams of carbon dioxide (CO2) are released to produce a kilowatt hour (kWh) of electricity.

When there is more pressure on a power grid, it uses up its supply of energy from renewable sources and begins using energy from non-renewable sources. That results in a higher carbon intensity.

If software engineers can be flexible about when and where their programmes and applications consume electricity, they can help to lower carbon emissions.

For example, they can opt to run machine learning models at a time when the power grid is less carbon-intensive. Or, they could move their data centres to regions with lower carbon intensities. This is called ‘demand shifting.’

According to research, opting for lower carbon-intensity electricity sources could reduce software carbon emissions by up to 99%.

Phew, that was hard-going. If you followed that, treat yourself with a cup of tea and a biscuit (and maybe try not to think about the amount of carbon it takes to boil the kettle).

Reducing data storage

According to Accenture, up to 90% of data that organisations collect is ‘dark data’, meaning it provides no value to the business and uses unnecessary energy to move or store it.

The IT firm’s Sanjay Podder states, “If left unchecked, the exponential growth in data has the potential to result in increased energy demand and carbon emissions.”

Writing in Forbes, Daniel Newman, Head Analyst at research firm Futurum advocates for lean data initiatives. He recommends focussing on minimum viable data and storing only the information that will help companies reach their objectives.

The tech industry can reduce carbon emissions by purging data and understanding what constitutes valuable data.

How we can help

We can all help to make tech greener. But we need the right tech skills to be able to do this

At CodeClan, we teach software and data skills to people from non-tech backgrounds. We offer both long-term and immersive courses that encourage a growth mindset.

People with tech skills can advocate for greener technology. We’ll give the final word to Assim Hussain, whose website, Principles.Green, was invaluable in writing this article: “Even the act of normalizing a discussion about sustainability in technical meetings will empower others to raise their voice. That’s how you create change in any organization.”

Next steps

Want to make a career of software development? Explore our Professional Software Development course. If you’re looking for something more bite-sized, browse our range of short courses.

Subscribe

Receive our newsletter to hear about courses, events and more.

Search

Don’t be a stranger... Stay in touch!

Why not sign up to our newsletter? We will keep you informed about new courses and also send you information from the world of digital.

Enter a query in the search input above and hit return to see results.

We'd love your feedback!

Did you find what you were looking for?