1. Comment
March 21, 2022

ESG: Why carbon-friendly coding should be common practice

ESG is the most important theme of this decade and businesses will be measured on their ESG strategies. GlobalData’s ESG Strategy Survey of 1500 industry executives found that 76% of industry executives believed ESG would have a high or moderate impact on their business over the next 12 months.

Data centers are the untold energy emitters of the IT industry. According to the International Energy Agency, data centers account for 0.3% of all global CO2 emissions. While this is much lower than the transport industry, which accounted for 23% of CO2 emissions in 2021 (according to the IEA), data centers are still significant emitters of CO2. Carbon-friendly coding instills more sustainable practices that can reduce emissions.

ESG: Coding strategies can reduce CO2 emissions

Simple and efficient code with the smallest possible number of lines is more carbon-efficient, emitting the least possible CO2. Software with too many unnecessary lines, sometimes referred to as ‘bloatware,’ takes up more space and requires more processing time, which emits more CO2.

Developers should aim for the smallest amount of functions to perform a task, as this is the most cost and climate efficient. Developers can use a tool called ‘Big O notation’ to calculate the efficiency of algorithms. This notation is used to view the worst-case scenario of an algorithm, showing the execution time and space used. This is important best practice for algorithms operating at scale, helping create the most efficient algorithms that, in turn, emit the least possible CO2.

Danny Van Kooten, the creator of Mailchimp for WordPress, a plugin that embeds Mailchimp sign up on a website, decided to slim down the plugin’s code. The plugin adds more code to websites and every time a user visits that website, a server sends part of the plugin code to the user’s browser. Reviewing the plugin’s code meant sending 20KB fewer data, which Van Kooten estimated reduced the company’s monthly CO2 output by 59,000 kilograms.

Coding languages are not made equal

Some coding languages are more efficient or lightweight than others by design. Guido van Rossum, the creator of Python, explained that the coding language is not designed to run on mobile because it uses too much battery life and memory. It is designed to be used on high-powered CPUs and GPUs.

Other languages, like Scala, are lightweight by design and object-orientated. Scala is efficient for specific use cases but has limited tooling. Developers should consider the most efficient language for their specific use case.

Efficient cloud computing is key to ESG strategies

Cloud computing provides users with an approach to consuming IT that is significantly more flexible, resource-efficient, and cost-effective compared to traditional IT. Cloud architectures, like software-as-a-service (SaaS), operate on a pay-as-you-go basis, meaning cost and CO2 emissions can be reduced by different techniques like scheduled shutdowns.

However, poor cloud computing practices can also lead to ‘cloud waste’ and excessive CO2 emissions. Developers unnecessarily inflate their cloud baseline and overprovision servers, causing wasted money and computational processing, resulting in more emissions.

If developers and programmers use cloud computing best practices like the correct parameters, right-sizing, and scheduled shutdowns, then cloud storage and computing are much more resource-efficient than traditional IT.

Big Tech is on board

Microsoft has launched ‘The Green Software Foundation’, in partnership with Accenture, ThoughtWorks, the Linux Foundation, and Microsoft-owned GitHub. The nonprofit aims to create new standards and best practices for carbon-friendly coding and building green software, helping the IT sector to reduce its greenhouse gas emissions by 45% before 2030. The foundation has 26 member organizations and 574 individuals.

Carbon-friendly coding, where code is streamlined with the fewest possible functions, saves time, money, and reduces CO2 emissions. Developers should avoid ‘bloatware’ and always look for the most efficient option with written code and cloud practices, to reduce the impact of IT on the environment.

Related Report