Skip to content Skip to footer

Sustainable software

Image: Adobe Stock / surachat

In 2023, it’s vital for organisations to develop sustainable ways of working. ESG targets are not only front of mind for businesses – but consumers are also increasingly opting for companies who align with their eco-conscious values. 

Some carbon reduction methods are obvious – like increasing renewable energy, or moving to electric vehicles when possible – but one of the biggest contributors to an organisation’s carbon emissions is their technology stack. 

The cloud revolutionised the way companies stored, shared data, and ultimately how they did business, but from a sustainability point of view, minimising its impact is still a work in progress. Research shows that the cloud now has a greater carbon footprint than the entire aviation industry. A single data storage centre can require the same amount of energy as 50,000 homes. 

This kind of carbon output is unsustainable. It’s clear that something has to change, and as the world becomes more and more reliant on the web, that change must begin with software, digital and technical delivery teams. Businesses need to be thinking right down to the design of their software when it comes to delivering on sustainability. By embedding sustainability into design principles, it’s possible to reduce the carbon cost of web applications, drastically improving the energy efficiency of the web. Small changes can make a big difference. Here’s how to get started: 

Move to the public cloud 

The location of a business’ applications can have a profound effect on the overall environmental impact of their infrastructure. On-premise software, which is installed on a company’s own servers and hosted locally, can be as much as 93% less energy efficient than cloud computing, according to a study from Microsoft.

As well as being more flexible, and notably more affordable, cloud software is stored and managed by a third-party provider, often requiring less physical hardware to run large workloads, or to store large quantities of data. 

Additionally, higher utilisation rates are achieved as hardware doesn’t sit idle. The higher the workload per server, the better the energy efficiency, with less wastage and a lower carbon production per customer. 

Choose a renewable energy data centre 

Not all data centres are built the same. The energy required to operate a data centre is massive – there are the obvious energy costs of running server equipment, of course, but data centres also require impressive cooling systems to keep servers from overheating. 

In fact, it’s thought that by 2030, data centres will collectively be consuming 13% of global electricity – more than some countries. 

That’s why it’s vital to select a data centre or cloud provider that uses renewable energy sources as much as possible. Given that data centres are so resource-heavy, ensuring they are powered by renewable energy rather than fossil fuels will have a big impact on the overall sustainability of your software. 

Use green software kits 

Green software is designed in such a way that it increases energy efficiency – meaning that there are changes you can implement in the design process to make a positive change regardless of where your data is hosted. 

Green software development kits (SDKs) can provide information to guide greener behaviours. For example, SDKs can provide data about the current or expected future carbon intensity of the data centre’s local grid, so tasks can be paused during carbon intensity spikes or transferred to data centres using power with lower local carbon intensity. This is especially useful for lengthy tasks, such as AI machine learning models, which can then be resumed during non-peak times to lower the carbon load. 

Arming yourself with the ability to measure and then respond to the circumstances allows developers to avoid inadvertent high-energy usage and lower the carbon impact of individual jobs. 

Use architectural patterns 

In a serendipitous way, lower cost and energy efficiency often go hand-in-hand. This is the case with data centres, but it is also true of architectural patterns and programming languages. That’s good news for delivery and technical teams, as it can make selling energy efficiency to the c-suite much easier. 

Using sustainable architectural patterns means utilising tried and tested solutions that will reduce the emissions of your software, often with the added benefit of reducing your run costs.

Of course, balance has to be sought. Employing software frameworks and patterns saves energy, but it won’t always match your needs. Similarly, the programming languages in use can affect energy efficiency, but may not always suit your developers’ requirements. Python, one of the most popular languages, is much less efficient than Rust – though it is often considered more productive for developers. 

Measure your efficiency 

Whatever choices you make, it’s vital to continually monitor their impact on your energy efficiency. 

Cloud providers share dashboard tools that can give you an idea of your annual carbon footprint, and resources like carbon calculator websites and individual toolkits can help to give an idea of the carbon intensity of your builds. Armed with this knowledge, developers and operations teams can see where and when it’s possible to affect their environmental impact, and work towards consistent optimisation. 

Little changes for a big impact 

No matter how hard we try, it won’t always be possible to deploy the most efficient cloud practice, or strip software all the way back. It’s important to keep the end-user in mind and remain aware of accessibility in all builds – without which, an unusable application consumes energy without benefit. 

But, by embracing some of the principles of green software development, enterprises can begin to have a sizeable impact on their carbon emissions – benefiting their business, and the planet too. 

You may also like

Stay In The Know

Get the Data Centre Review Newsletter direct to your inbox.