This article is an overview of the environmental issues surrounding the development of smartphone applications. For those who are interested and those working in this field like me, I will develop in the following articles some examples of good practices to reduce your carbon footprint during your projects :) Don't hesitate to share your ideas with me and those you already implement in the comments!
The impact of global digital technology on the environment is no longer negligible. In 2019, it represents that of a 7th continent whose greenhouse gas (GHG) emissions amount to 1,400 million tons, or 3.8% of global emissions. To give you an example, this corresponds to twice as many emissions as a country the size of France.
Our dear smartphones come as no great surprise to the prosperous inhabitants of the 7th continent. In 2019, smartphones will account for 6 to 19% of the global impact of digital technology.
It is all the more worrying if we look more closely at its evolution.
Between 2010 and 2019, the impact of digital technology has doubled. GHG emissions from computers, phones and data centres are expected to rise from 3.8% of global emissions in 2019 to more than 14% in 2040. By 2020, the carbon footprint of smartphones will exceed the individual contribution of desktops, laptops and monitors.
App Annie's report The State of Mobile 2020 is clear; the average time we spend on our smartphones has increased by 35% (25% in France) over the last two years, reaching 3h40 per day in 2019! This increase can be explained by :
It is time for every player in the digital sector to take stock of their impact on the planet, set clear goals and a plan to achieve them.
If 60% of a smartphone's total GHG emissions are due to its manufacturing, it's up to us developers to do our part and analyse - and try to minimise - the remaining 40%.
It's up to us to develop applications that :
In other words, our goal is to make apps which satisfy our users needs, and nothing more.
Yes, our responsibilities are great, let's take them on. To do this, let's understand the lifecycle of a mobile application as well as the impact of each of its stages.
Before a mobile app is used by billions of users (3.5 billion smartphones in 2019!), every developer agrees that a lot of work is planned beforehand.
The cycle of a mobile project is generally divided into two phases: a design phase and a development phase. This cycle can be very short, iterative and adaptive if you use an agile methodology, or represent the complete application cycle for more classical methodologies (such as cascading or V methods).
The energy impact of an application can be reduced during the Design phase, before any code has been written!
The functionality with the lowest environmental impact is the one that has not been designed.
There is nothing more frustrating than opening an application full of content which nobody reads. Even worse, auto-play videos that no one watches but, as seen previously, have significant impact.
During this phase, it is important to understand which users you are addressing. But also, which frustration points you want to address and how. Once these needs have been identified, they can be translated into app functionalities.
The simplest functionalities are often the most intuitive for users.
You can be convinced by the users themselves, by organising user tests as much as possible. This also helps to calm down those little bursts of artistic madness that we have as developers. When we think we have designed the best app in 2020 but... nobody understands how to use it.
The principle of maximising the value of a product by minimising losses during the Design phase is at the heart of Lean UX methodology. Unintentionally, this fast, collaborative and iterative product design approach also has a positive impact on the environment.
During the development phase, it is necessary to include the environmental weight of each functionality to be developed in our decision-making. As F.Bordage states in "Eco-design web: the 115 good practices" the following technical resources to focus on are:
One last point that I find important to mention: the backward compatibility of our applications.
Systematically limiting the compatibility of our apps to the latest android and iOS versions, for performance or dependency reasons, obviously plays a role in the underutilisation and wastage of our smartphones.
"This app is not compatible with any of your devices" = a thrown away phone (if it can't install the latest software version). How very sad.
The choice of operating system (and OS version) compatibility with our mobile app is one of the many choices we make when releasing and updating our apps. The impact is huge, which is why I'll start this series of best practices articles focusing on this topic.
Next article ? "Improving the Carbon Footprint of Mobile Applications: A Word on Compatibility" ?