Theodo apps

Improving the Carbon Footprint of Mobile Applications: A Word on Compatibility

Last time, I told you about the overall impact of our mobile applications on the environment and their life cycle: the design and development phase. Remember that the functionality with the lowest environmental impact is the one that has not been designed.

Let us now turn our attention to the development phase, since as developers, it is mainly during this phase that we intervene. To develop an application in the most environmentally friendly way, there are three important points:

  • The size of the application
  • Its performance
  • Its compatibility

Improving the performance of our applications seems quite natural to us since we generally want to offer the best possible user experience. Same goes with reducing the size of our applications because we know that an app that is too large will have a better chance of being deleted at the first need for space on the phone. But why compatibility? Compatibility with what, by the way? This is the question I will try to answer in this article.

Compatibility management

When we talk about the compatibility of an application, we're talking about device configuration compatibility, meaning compatibility with:

Devices features

Devices features refer to the hardware part of your phone. For example, if your application's login is done by facial recognition, your phone must be equipped with it. (This is not possible for an iPhone 6S for example, sorry!). Another example, if you want to install ScoreSleep to track your sleep, it's only available for iOS devices.

Screen configuration

In addition to taking into account the different functionalities present on a smartphone, we have to make our application user friendly for just about every possible type of screen and unimaginable. And there are many of them.

article2_1

Not to mention the notches, those simple little cutouts for the camera and microphone on the iPhone X (and +) and Android P that give developers a hard time.

(In fact, I recommend this little evening read which I'm sure will come in handy, "Ultimate Guide to Survive the Notch.")

OS versions

The best for last: OS versions compatibility. I mainly mention Google and Apple as operating system developers because combined they represent 99% of OS developers today.

os_image

Apple and Google release new OS versions pretty 

much every year, which include improvements in terms of performance, security and functionality. For example, version 14 of iOS, whose official release is scheduled for next year, includes features such as App Clips, Widget management and more privacy. I'll let you take a closer look at the list of features for more amazement ?, as well as those of Android 10, released last September.

Once updates are released, developers are rushing to see what new features are allowed with these versions to include them in their next release. For example, as I write this article, we are investigating the development App Clips for our application, a new feature brought by iOS 14!

Bam! One more OS version integrated into the project!

With the successive release of OS updates, new devices and so on, compatibility with every single device configurations becomes too difficult to maintain, so we end up excluding version maintenance. Whatsapp, for example, stopped supporting smartphones with OS versions lower than Android 4 and iOS 9 on February 1, 2020.

Alongside the developers who work to make their applications compatible with the latest OS versions, there are the manufacturers.

Each OS version supports a certain number of devices. If your phone is not on the lucky list, you can't update your OS. You can take a look at David Smith's website on iOS iPhones support and see that, for example, iPhones 6 and older couldn't install the iOS 13 version. The 220 million iPhone 6 is not much use today! For the most cautious among you, it will have lasted six years. That's not so bad...

Unlike Apple, which releases an OS version every year, along with a new device, Android news is harder to follow.

Any manufacturer can launch a phone with an Android operating system. Some are well known (Samsung, HTC, Motorola etc.), others less so. This means that for every new version of Android, manufacturers must develop an Android device driver for each one of their phones to support this new version.

If a manufacturer comes out with many different models every year, they often aren't as interested as they should be in updating devices after they're released. They'd rather encourage you to buy the newest model.

Android 10 will not be available for those who have a Galaxy S7, with 55 million units sold, it is an exemplary smartphone in terms of longevity because it will have held up ... 4 years!

article2_3

So, Android phone or iPhone, sooner or later, the latest OS version available on your phone will end up not being supported by some applications. You won't be able to update applications, and to download new applications! You will see this nice message "Your device isn't compatible with this version" ??

According to the Digital Barometer (2019 edition), 29% of 18-24 year olds in France could not download an application because it was not or no longer available.

As a result, we will throw away our phone for a new phone, more powerful, more beautiful, with all the latest applications and new features available.

On average, we change our phone every 18 months while it is often still in very good working order. 88% of French people change their mobile phone while it is still working.

So we change phones a lot, so what?

The problem is that we don't realize that by changing our phones so often, by pushing consumers (us) to do so, we have a huge impact on the planet. Indirectly, we support human exploitation, resource depletion, damage to biodiversity due to toxic discharges into the environment and the emission of greenhouse gases. Yes, just that...

Consequences of software obsolescence

Let's try to understand the dramatic consequences of software obsolescence by looking at the impact of each stage of the life cycle of our phones. Why is it that the majority of the environmental impact of our phones is in the manufacturing process?

Step 1 extraction of raw materials

article2_33-1-1

The ecological footprint of smartphones is mainly due to the extraction of minerals found in the form of metals in the phones. The exploitation of these minerals (cobalt, tantalum, palladium, platinum, etc.) leads to the destruction of ecosystems and the multiple pollutions of water, air and soil. Moreover, it is not infinite since these resources are exhaustible, some of them even in a critical state (United Nations Environment Programme report, 2013).

The manufacture of smartphones also poses an ethical problem. The extraction of "blood minerals" (tin, tantalum, tungsten, etc.) is a major source of human rights violations and leads to the fuelling of armed conflicts to the detriment of local populations. Working conditions are often deplorable, particularly for miners.

Indeed, according to UNICEF, more than 40,000 children work in mines in the south of the Democratic Republic of Congo, many of them in cobalt and coltan mines, which are found in the batteries and capacitors of smartphones.

Step 2 Devices production

Although the majority of raw materials come from Africa, the manufacture of telephones is carried out in Asia. Apple, for example, makes most of its products in China whereas Samsung is producing the majority of its smartphones in India and Vietnam since 2019 (before that, also in China).

The production of telephones is also energy-intensive. A Greenpeace report estimates that the electrical weight of the manufacturing of our smartphones between 2007 and 2017 would be 968 TWh, or 11 years of electricity supply for Belgium.

Step 3 Transportation

Transport, of course, is not negligible. From raw material to assembly to our stores, it is estimated that it takes four trips around the world to make a smartphone. And since we want everything as quickly as possible, whole planes loaded with iPhones arrive just for us from the other side of the world.

Step 4 Distribution and use

The distribution and use of the smartphone have less impact. They are mainly related to the energy consumed for transport and electricity production. In France, 75% of electricity comes from nuclear power, which represents a lower impact in terms of GHG emissions compared to some of our neighbors (hello Germans!) Although nuclear power has an environmental impact like any fossil fuel, but that's another subject.

Step 5 Device recycling management

And finally, the end of life of the smartphone! ?? The end-of-life stage has varying impacts depending on whether the smartphone is recycled or not. If it is recycled, it is generally the decorative parts of the smartphone that are thrown away, while the components that are most expensive in energy and raw materials, such as the motherboard, battery, microphones, etc., are recovered. The precious metals needed for manufacturing can be recovered. They are either kept as they are in the reconditioned smartphone or are taken away to be reused for other purposes.

When they are not recycled, they end up in landfills. Some materials, although in small quantities in our phones, become Waste Electrical and Electronic Equipment (WEEE) category 3, one of the most toxic wastes produced by humanity. For example, 1 gram of mercury is enough to pollute 1 m3 of the earth for 50 years. Although there has been a ban on exporting this type of waste abroad since 1992, many European countries manage to circumvent this ban and send their waste to Asia and Africa.

80% of WEEE is illegally sent to developing countries, many of them in Africa, according to the World Bank.

These illegal landfills represent a real environmental disaster, such as the Agbogbloshie landfill in Ghana.

Who bears the responsibility?

It's time to identify where the fault lies. Who is behind the software obsolescence that has such a disastrous environmental impact?

Who's to blame? Users looking for the latest innovations? Developers who do not ensure backwards compatibility of their application? Manufacturers who don't always support operating system updates on their old phones? Or OS manufacturers releasing OS updates too difficult for manufacturers and developers to support from one version to the next?

It is not so simple to identify a single person responsible for software obsolescence. Simply because the fault is shared.

Users' responsibility

Understandably, it's hard to resist the latest phone calls. Especially if the commercials that surround us make us believe that this is absolutely what we need to be happier.

But! Let's ask ourselves every time we think a change of phone is necessary (if it doesn't work anymore or if it's broken for example) if a second-hand phone model wouldn't bring us everything we really need.

If the answer is "noo", let's try to go to phones from manufacturers who make an effort to support operating system updates such as Google (and it's Pixel phones), Apple, Samsung (an absolutely non-exhaustive list).

If the answer is "YES!" You'll find your happiness on Backmarket, that's for sure. You will be happy to have made a gesture to help reduce the impact of digital technology on the environment and your wallet will also be grateful.

I also advise you to sort through all your applications, keep only the ones you really use on a daily basis, this will free up space on your phone and your phone will not have to undergo unnecessary updates.

Developers' responsibility

On the developer side, maintaining all OS versions and phone models seems implausible. As mentioned above, several new models arrive every year, each with its own specificities: a new type of screen, a new OS architecture etc. If you want to increase the compatibility of an application, you would probably increase the size of the app or even reduce its performance. And thus shift the problem.

However, we can think of two solutions that could improve the situation.

Keep open source applications

Open source ?? As much as possible, keeping our applications open source allows us to get help from users all over the world to help us find incredible (or sometimes very simple) solutions to fix small compatibility problems with new phone configurations. This saves developers and customers a lot of time and avoids having to guarantee absolute compatibility by only addressing the needs that are upvoted on Github.

Leave available the apk of each version of the app.

Allow Android users to download apk from previous versions of an application rather than forcing the update. Although I think it would be a good thing, this solution may pose some problems. Leaving a version of the application that is not maintained can lead to a potential bad image of the app because it means accepting that some bugs may appear with the server-side update. So it means to warn users that these versions are usable but no longer maintained and to ensure the versioning of our api.

These two measures are part of the White Paper of the association Halte à l'Obsolescence Programmée (HOP). The association bears its name well, it fights against programmed obsolescence and has gathered in this book of measures to fight it. For example, imposing the reversibility of software updates, dissociating corrective and evolutionary updates, or opening the code of software after the end of their technical support. As the second reading of the evening, I invite you to take a look at it ?

OS and devices manufacturers' responsibility

As you can see, a large part of the responsibility lies in the hands of OS builders and developers. If you can't stop your companies from innovating because innovation is the foundation of their business, they have to make efforts to extend the life of devices:

  • Develop phones that are easily repairable and more modulable: simply change the battery for example rather than having to change the whole phone or add some accessories to existing phones such as changing the camera.
  • Keep their phones compatible with OS versions for as long as possible. We can see for example that efforts are being made in terms of application compatibility by Apple. Indeed, if the first versions of iOS only supported one or two phones, the latest versions try to support a larger panel of devices.
article2_5

The debate is on, so do not hesitate to share with me the solutions that I have not mentioned! I hope this article has taught you something. Feel free to share with me any topics around GreenIT that you would be interested in discussing for the next ones. For the next article, I will talk about the size of our applications, how to reduce it and what is its impact on the obsolescence of our phones 

Product Owner ?

Rejoins nos équipes