In a recent article, Tannis Thorlakson, director of sustainability at Driscoll’s, highlighted the need for sustainability professionals to be fluent in coding. The reverse is also true: Given the urgent need for climate action in an increasingly digital world, it’s critical for coders to be well-versed in sustainability.
From code to carbon
While the "cloud" often feels ephemeral and elsewhere, its impacts on our planet are indisputably tangible. Vast networks of undersea cables connect our devices to massive data centers, which house servers that execute the code that creates our digital world. These server farms require considerable electricity (read: carbon), water and materials to function.
The information and communication technology sector is responsible for up to 3.9 percent of global greenhouse gas emissions, more than the world’s shipping and aviation industries. It is projected that by 2030, 90 percent of the world’s population will be connected to the internet compared to 62 percent today. Without intervention, these emissions will rise significantly, especially with the advent of computation-hungry technologies such as AI, blockchain and VR.
Yet even amongst all this digital growth and innovation, one thing remains true: we must halve global emissions to mitigate the worst impacts of climate change.
To date, efforts to clean up the technology sector have been largely focused on the downstream part of the digital supply chain: that is, improving server efficiency, optimizing data centers and adding clean energy to electric grids. While this work is critical, we shouldn’t overlook the opportunities further upstream — optimizing code before it ever gets to the servers.
Code can be designed in many ways to achieve the same result. Optimizing software to minimize energy expenditure for the same output has considerable potential to reduce carbon emissions, but is not yet a widespread practice. Those working throughout the software development lifecycle have a role to play in making code more efficient, from UX designers and architects to developers, engineers and more.
Technological innovation also holds considerable promise on the journey to a sustainable future. From quantifying forest carbon through satellite imagery to democratizing climate science via chatbot, we are just starting to see the power that coders bring to conquering sustainability challenges.
The ‘Green Code’ gap
Salesforce research that surveyed over 1,000 technology professionals across three countries reveals that 75 percent are eager to help the environment in their job. Technologists already recognize the impact their work has on the environment and have a desire to do even more to help the planet. However, there is a lack of awareness and knowledge about how to develop software sustainably. Nearly half (45 percent) of respondents say they lack sustainability expertise and 62 percent do not participate in sustainability skills training.
To help begin closing this sustainability skills gap, here’s how anybody working on software can get started:
1. Learn about the latest thinking on sustainability in software
There are many free resources that coders can use to jump start their journey into sustainable software development. Introduce yourself to the Principles of Green Software Engineering, from carbon and energy efficiency to minimizing networking and integrating measurement and optimization. The sustainability pillar of the AWS Well-Architected Framework highlights common architectural practices that are not sustainable (anti-patterns), then outlines specific steps for improving sustainability in the cloud. Also, check out this collection of best practices for the sustainable design, architecture, development and operations of Salesforce applications. Small changes, such as reducing UX media size or deleting unneeded data, result in big impacts at scale.
Ready to test your knowledge? Take this free exam and earn a Green Software Practitioner certificate.
2. Apply these practices to your work
As with many sustainability changes, you can start small and incorporate these practices into your work without a giant overhaul. And one person can bring the momentum for an entire department or even a company. Start by calculating the impact of your application by using the software carbon intensity specification — because you can’t manage what you don’t measure. At Accenture, an effort to create a carbon benchmark for an internal application has opened the door to future projects focused on reducing these emissions.
Optimizing software to minimize energy expenditure for the same output has considerable potential to reduce carbon emissions, but is not yet a widespread practice.
Then begin integrating sustainable software patterns from this open-source database curated by the Green Software Foundation. And make sure your application is using the greenest energy source available with the Carbon Aware SDK. Once you’ve done all you can as an individual, it’s time to leverage your company’s environmental employee resource group to find like-minded technologists and work to bring a sustainability culture to your technology department as a whole. At Salesforce, we have over 14,000 Earthforce champions across more than 90 teams who volunteer their time to support climate action, and this team was instrumental in getting connected to technologists interested in sustainability. You could also organize a green hackathon focused on addressing sustainability challenges.
3. Participate in existing cross-industry projects
Success on our shared sustainability journey depends on us breaking down silos and collaborating toward our mutual goals. So it’s important to look beyond just your own company. There are ongoing projects and working groups hosted by the Green Software Foundation like the creation of new carbon standards and community resources. You can contribute to the open-source Electricity Maps project and help map the emissions of the world’s electric grids in real-time. Participate in GreenHack to help solve today’s biggest sustainability challenges. And explore the use of digital technologies (blockchain, open source software, AI, IOT, Big Data, machine learning, etc.) to create a transparent global climate accounting system through this Hyperledger group.
As underscored by the latest IPCC report, we are at a planetary crossroads. The actions we take today to reduce greenhouse gas emissions will reverberate for generations to come. We need all hands on deck to create and scale climate solutions. Coders hold the key to innovation and have the power to make a significant impact on the climate crisis.