On the Sustainability of Free Software
This study analyses and discusses several aspects regarding the sustainability of Free Software. It is part of a series about the basics of Free Software.
A definition of software sustainability is introduced and its characteristics. It is shown how the inherent characteristics of Free Software are sustainable as well as their impact on IT infrastructures. Software obsolescence is explained and the possibilities of using Free Software to save natural resources by extending hardware usage lifetime and through energy consumption savings. Finally, four politically necessary directives for a more sustainable digital society are outlined.
Table of contents
- (1) Examining the Sustainability of (Free) Software
- (1.1) Software as a resource of modern societies
- (1.2) About the sustainability of Free Software
- (1.3) Designing a resource: Free licences and copyleft
- (1.4) Conservation and loss of resources: a question of reproducibility
- (1.5) Sustainable use of the resource brainpower
- (2) Free Software and IT infrastructures
- (2.1) The impact of Free Software on the sustainability of IT infrastructures
- (2.2) Free Software enables sustainable ecosystems
- (3) Free Software, sustainability and the use of natural resources
- (3.1) Extending usage times
- (3.2) Reducing energy consumption
- (4) What can politics and society do for a more sustainable digitization?
- General Purpose Computers: Right to use alternative operating systems and software
- Access to Hardware: Devices with open interfaces, drivers, and standards
- Freedom of Choice: Gatekeepers must allow competing services and software
- Upcycling of Software: Publication of source code under a free licence after the end of support
- Public Smart Infrastructures: Public infrastructure to be set up with Free Software and public code
- (5) Initiatives around the sustainability of Free Software
From Free Software to Sustainable Software
Free Software (also known as Open Source Software) is any software that grants any user the four freedoms to use, study, share and improve the software1. These “four freedoms” are given by a software licence2. Software licences define the conditions under which a programme can be used and reused. For it to be Free Software, the licence text must contain at least the full exertions of the aforementioned four freedoms to any user without limitations. Read more about the understanding of What is Free Software and how these four freedoms help support other fundamental rights like freedom of speech, freedom of press and privacy on the Free Software Foundation Europe’s webpages.
In contrast to Free Software however, sustainable software is still in need of a precise definition. This short study is intended to help with the understanding of sustainable software and sheds light on how the four freedoms of Free Software support the sustainability of and by software.
(1) Examining the Sustainability of (Free) Software
What is sustainability? What characterizes the sustainable consumption of a resource? And what specifically applies to a sustainable consumption of the resource software? In this chapter we elaborate how software has become a resource of modern societies (1.1) and how to preserve a contemporary software resource for the future (1.2). We briefly examine the influence of different licence models (1.3) to further elaborate on of the potential of saving the last copy of a resource (1.4) and the sustainable use of a resource called brainpower (1.5).
(1.1) Software as a resource of modern societies
Software has become an indispensable resource of modern societies. Whether industrial production, science, public administration, our media consumption or even our everyday communication: almost all areas are now permeated by software. A modern society without the use of software no longer seems conceivable. The existence of and access to software thus becomes a prerequisite for modern social organisation and functioning. But not only our social organization is based on software, so are our machines and our tools as well. Hardware needs software to function and vice versa. All machines and automated systems around us - whether at home, at work, or in public infrastructure - need software as an indispensable resource to do whatever they were designed to do.
Both dependencies – the one on the functioning of our machines and the one on the functioning of our social organisation - together make software indispensable for modern, networked societies.
(1.2) About the sustainability of Free Software
The moment we recognize software as a fundamental and indispensable resource of modern societies, there also arises the realization and urgency to develop or, if necessary, consume this resource in the most sustainable way possible. After all, the stability and resilience of our current social organisation depends on this resource. But what actually characterizes the sustainable consumption of a resource? And what specifically applies to sustainable consumption of the resource software?
"Sustainable development is development that meets the needs of the present without compromising the ability of future generations to meet their own needs"
is an often quoted definition of sustainability from the famous UN-publication "Our Common Future"3. With regard to natural and limited resources, a form of renunciation can be derived from this definition: present generations should moderate their consumption and draw from limited resources only to the extent that there is still enough left for future generations.
Software, however, is not a limited resource; software cannot be consumed in such a way that it would ever exhaust the basic quantity of the resource. If we want to preserve today's software as a resource for future generations, it is actually not necessary to practice renunciation; contrary approaches might be helpful instead.
The “resource software” is initially unlimited: software can be installed, copied and used as often as wished without ever reducing the quantity or quality of the resource. In fact, regarding the amount of the resource, the opposite applies: If we consider a certain software, e.g. the “operating system X”, as a resource and one installation of this operating system X as amount 1 of this resource, then the overall amount of the “resource operating system X” is increased with each subsequent installation. With the second installation of the operating system X we have the basic set 2 of this software, with the third installation the basic set 3 and so on. Each further installation, each copy and each use of a specific software increases the basic set of the resource instead of decimating it. That means that instead of practicing doing without, as is the case with finite resources, a possible strategy for preserving a contemporary software resource for the future would be to use it as widely as possible – meaning to install it as frequently as possible. This is because the higher the basic set of a resource, the lower the risk of losing or exhausting the resource - so the simple conclusion4. This method however is in contradiction to certain aspects of the sustainable use of hardware and energy consumption (as elaborated in chapter 3), and so a more promising method to sustain software seems the complete archiving of the resource as discussed later in this chapter (1.5).
Still, in this simple paradigm we already see a fundamental characteristic regarding the sustainability of Free Software: Free Software can be copied, shared and reused as often as desired.
In contrast, this is by no means possible with proprietary software because the originally unlimited resource software artificially runs short in proprietary business models with the use of technical measures and enforced by legal regulations and policies. Such technical measures are, for example, copy limitation measurements or other forms of digital restriction management5, usually directly implemented by their authors. These technical measures are often accompanied and enforced by legal measures and other governmental regulations, usually intended to strengthen 20ths centuries ideas of intellectual limitation rights6 such as copyright and patent law7.
While proprietary software artificially tightens the resources that have become fundamentally important for the organization of our societies and withholds them from the general public and future generations, Free Software opens up and removes any artificial restrictions to these resources. Free Software licences guarantee unrestricted access to the resource software not only for all people, but also unlimited in terms of space and time. Because of the resource’s availability in an infinite time span, we also speak of “Intergenerational equity” which aims at an equity between people who lived in the past, who live today and who will live in the future8. It is precisely this intergenerational equity that has found its way into the core of the environmental sustainability debate since “Our Common Future” because – as already quoted – “sustainable development is development that meets the needs of the present without compromising the ability of future generations to meet their own needs".
(1.3) Designing a resource: Free licences and copyleft
From previous considerations it becomes already clear that the amount of resources - i.e. by duplicating - of the software resource can be consciously designed. Proprietary software is designed to let the resource run short to artificially create a market around a limited resource. Free licences however allow the full potential of a resource to be realized and enable a sustainable distribution in the sense of intergenerational equity. The authorship of a software can thus decisively decide on the availability of the software resource by selecting and using a suitable licence.
The world of free licences again is divided into different subgroups of licences, mainly into different copyleft licences and non-protective licences as well as publications in the “public domain”9.
All these distinct forms of free licences enable the publication of software using the above discussed maximum usage possibilities of the current resource in terms of its dissemination and preservation of the resource for the future. Non-protective licences as well publications within the public domain however allow any user of such a freely licensed software to later modify it into a limited resource and proprietary software. This means that with non-protective licences and the public domain, there is always the risk that further developments of the software will turn around and again artificially reduce the amount of software resources with the use of copyright, patent protection or other intellectual limitation rights. Leading to the corresponding software being withheld from both, current and future generations. Intergenerational equity will not anymore be achievable as a result. Meaning that only copyleft licences guarantee that future further developments of the software can be used just as sustainable.
(1.4) Conservation and loss of resources: a question of reproducibility
In chapter 1.1, the widest possible distribution of software as a way of obtaining the same resource was carried out as one possible solution in a theoretical mind game. However, this approach seems very uncontrollable and unpredictable and more like a game of chance because what do all free distribution methods help if - in another theoretical mind game - in the end all users decide to delete this particular software? Also it seems unpractical since the widespread use of software might be indeed helpful for keeping it available for the future, but it is not absolutely necessary. In fact, for the sustainable consumption of software as a resource and its future availability, today's distribution or basic amount of the resource does not play a decisive role, but rather its timeless reproducibility. Because as long as at least the basic set 1 – including its unlimited reproducibility – is retained under a free licence – in the best case including its documentation, language, built-tools and corresponding hardware or emulators –, it is theoretically always possible for future generations to create and distribute any number of copies from this basic set at any time. For reproducibility, it is therefore particularly important to prevent the “loss of the last copy”.
This is where "Software Heritage" comes into play. And while it is not the only approach of archiving software resources, it is a very unique and complete example worth elaborating: Software Heritage is a non-profit supported by UNESCO, whose mission is “to collect, preserve, and share all software that is publicly available in source code form.”
At Software Heritage, software source code is collected in multiple ways. One of them is by automatically crawling code hosting platforms, like GitHub or GitLab, but Software Heritage also allows and offers simple means to save code from other public version control systems manually. Both ways aim to offer curated archives that keep track of the origin of software by archiving and storing the full development history including precious and structured meta-information. Also they run The Software Heritage Acquisition Process to save legacy code stored in various version and on different physical media from the time before the emergence of code hosting platforms.
Consequently, the Software Heritage infrastructure itself is underlying a sustainable development model in that all the software developed in the process is being released as Free Software.
Loss of proprietary knowledge
As argued above, a decentralized free distribution and development model of software under a free licence and even more its complete archiving are promising methods to prevent the “loss of the last copy”. With proprietary software, on the other hand, the loss of the last copy is a real danger. The three most common ways of such a loss of software are
- deletion of the software or loss of the data carrier
- Loss of knowledge of the software and access to the source code
- the end of the provision of software or support, “planned obsolescence“
The first case - the deletion of software or the loss of the data carrier - is a real danger, but ultimately only leads to the complete loss of a resource - for example the above-mentioned operating system X - if this copy is the very last copy of the resource. This case has become extremely rare in today's distributed and networked systems and should be noted here primarily for the sake of completeness. Also provided with the note that the unrestricted sharing possibilities of Free Software virtually encourage frequent copying and thus make the case of a last existing copy even more improbable.
Losing access to the sources
The second case in the list above - loss of knowledge of the software and access to the source code or the tools necessary to build the binaries from the source - is perhaps the most common and likely cause of permanent loss of software. Typically, it occurs if the developing company behind proprietary software goes bankrupt and the software and its secret code and associated documentation that has been developed to date is not archived or published and without an orderly knowledge management system. In this way, software code that has been developed for years is often irretrievably lost because no one can read or understand the code anymore – not even the publisher since the publisher is not anymore existing. This also has an impact on any dependent software and infrastructures (compare chapter 2) and the failure or loss of knowledge about a single software component can undermine entire IT systems.
Free Software, on the other hand, does not have this problem: once published under a free licence, the code is visible to everyone now and in future. And even the abrupt bankruptcy of a developing company behind it cannot lead to a complete loss of knowledge about the actual code. It is true that there might be a brief vacuum in which a software is not further developed by the original authorship. Still, any third party has the possibility to understand the code as well as to keep using it without further development or develop the software further at will. It should be noted, that it is not always economic or advisable for other reasons to further develop a software instead of (re-)writing it from scratch10. Any such decision must be taken individually for each case but not releasing the code after bankruptcy for sure removes that possibility completely.
Finally, one of the most common cases is the third case from the list above: the end of the provision of software or the end of support for software. As a rule, such a linear business model is the basis of the market logic of proprietary software: the sale of new products should be promoted by devaluing current products11. The software of a certain version (in the above example, the operating system X) is no longer supported, so that customers are forced to buy the next higher version.
This approach is problematic in many ways: First of all, users are incapacitated and instead of giving them control over their technology, they are forced to buy new versions instead of continuing to use the existing one. Since not necessarily everyone follows this approach or cannot follow, there is a security problem for those affected and who do not update to the next higher version: Bugs might be found in the now-unmaintained versions of the software and can be used by third-parties to crack into the user’s system or application to steal information or let the application misbehave.
On the other hand, the forced version upgrade can lead to the devaluation of hardware that is actually still functioning. This is the case when the next version can no longer be run on the old hardware. Ultimately, users are faced with a dilemma: Either they continue to use their current and functioning hardware, but have to live with a security risk by continuing to use the old software without any further security updates. Or they are forced to buy new hardware just to use the new software upgrade. This dilemma is known as "software obsolescence" (compare also chapter 3).
Free Software solves this dilemma in that there cannot be a forced end of support. Instead, Free Software can be used by all people for unlimited time and space and no single entity has full control over the software. Free Software provides intergenerational equity (see chapter 1.2) . And while even with Free Software there can be the case that a software no longer receives any further updates, this is primarily the result of underuse of the software - i.e. the mutual dwindling of user interest - and above all it cannot be enforced. Meaning if a software is no longer relevant or is superseded by better software, then interest decreases and development of Free Software may also be discontinued. And if the software is no longer used, then it no longer has users, and even though it may have security issues the impact is not important in practice.
Most important, any user with enough knowledge can at any time decide to further develop and reproduce the affected software, even outside of the original authorship. The availability of Free Software thus serves sustainability in a double sense: in the preservation of the software resource itself and in the useful life span of the hardware that is dependent on or designed on this software. The latter point, the relevance of Free Software for the useful life of hardware, is further elaborated in chapter 3.
(1.5) Sustainable use of the resource brainpower
Even if it becomes difficult to measure the "resource brainpower", the reuse possibilities of Free Software enable a sustainable use of this important human resource: Software development requires a lot of time and creative and intellectual work and the possibilities for further use of Free Software enable already developed and well thought-out software or software components to be reused. Developers can develop IT architectures “on the shoulders of giants” instead of reinventing the wheel over and over again.
(2) Free Software and IT infrastructures
(2.1) The impact of Free software on the sustainability of IT infrastructures
Software is created in dependencies, both to and with one another. On the one hand, there are the dependencies that arise when “forking” a resource, whereby “forking” means the separation of a parallel development branch from an existing software development. This can happen because with software under free licence any company, group or even individual people can use existing software code in a certain version in order to design and publish a parallel development, only having to use a different name and trademark. Debian, for example, is a well-known GNU/Linux distribution that serves as a base for many other well-known GNU/Linux distributions. Developments in Debian are thus reflected in many other forks and distributions and vice versa. All these distributions are being developed in dependencies on each other.
It becomes even more obvious with software that is developed within or for use in a particular environment. For example, an application that is developed for a specific operating system usually also requires the operating system itself so that the application can be made to run. The operating system in turn needs deeper layers, for example the Kernel, to be able to transmit software operations to the hardware. The hardware again needs their particular firmwares to be able to run and interconnect and so on. All of these levels are interdependent and can only be used individually to a limited extent, if at all.
Independencies with Free Software
The risk of critical dependencies and single-point-of-failures can be reduced by using Free Software. Although, as stated above, it can also happen with Free Software that software is no longer developed or updated. However, this does not mean that entire IT architectures have to collapse.
On the one hand, as already described, because Free Software is not further developed as a rule when the general interest in the particular software - and the usage numbers - declines. Means few people should be affected by a stopped development. On the other hand, it means it is unlikely that the original authors will stop developing a popular program. In particular not to follow a linear market logic, for example the devaluation of the current version in order to promote the distribution of a new version, of the software.
However, there can be other reasons why a Free Software development is stopped. This is especially true for projects only consisting of one or few contributors. But even if there happens to be an unanticipated stop of a particular software development – contrary to proprietary software in which the discontinuation of development is accompanied by a great loss of knowledge - with Free Software, the software can be further used and - with the appropriate resources and investments – even further developed by third parties. Not to forget, that they can at least be properly archived (see "Software Heritage" in chapter 1.4).
In contrast to proprietary software, no single entity can prevent the development or provision of software. In particular, this means that no other actor has control over the critical infrastructures of others. This is the condition for designing a sustainable IT infrastructure.
As explained in Chapter 1, any Free Software can be used by any actor at any time and for any purpose. The resource can be used unlimited in terms of space and time. With Free Software, dependencies on individual actors are drastically reduced, while the availability of individual modules is guaranteed and the stability of IT architectures is thus fundamentally consolidated. All three properties form the basis of sustainable digital infrastructures and digital sovereignty. Free software thus forms a basic component of sustainable IT systems.
(2.2) Free Software enables sustainable ecosystems
Because there is no single actor who can stop the development or spread of Free Software, popular Free Software applications often grow their own “ecosystems” in which all actors involved have an interest in maintaining this software as a common resource and their individual usages: The sum of the individual use cases generates synergies and also increases the number of uses and development potential of Free Software. In a simplified scheme we can see mutual growth of users and developers, benefiting from each other. Meaning that the more users a software has, the more installations are running and thus the more different use cases the software goes through. Which in turn can generate interest for many developers to invest into the software because the high usage numbers seem worth investing time and efforts into it. And the more developers are actually investing time into the software, the more features or better stability will probably be provided. Which in turn means again that more users get interested into the software.
The same logic applies in real application environments, only the actors are even more differentiated than only users and developers. In terms of sustainability, it is crucial that all actors together - consciously or unconsciously - contribute to the sustainable preservation of the Free Software as their common resource.
In this illustration we see various actors who jointly design the use and perhaps even the development of a software or who simply use the software. Classically there are the users and developers. In addition, however, with most software there are also a number of third parties who have an interest in the development of the software or at least in maintaining the software, for example companies, science, initiatives and other third parties.
“Sustaining a resource together”
Let us consider the popular Free Software Wordpress as an example: Wordpress is a blogging software that is also used to design homepages. Of course, there are users and developers of Wordpress who are interested in the use and further development of the software. In addition however, there are, for example, also companies that offer Wordpress support - i.e. take on installation, maintenance and adaptation for customers - and thus have an economic interest in the further development of Wordpress. Or scientists who, for example, want to teach a Wordpress installation used on the university website new methods of displaying data. In addition, there are third parties who are detached from the actual use of the software but still have an interest in the ongoing development and existence of the resource. For example companies that rent web space in the core of their business but – maybe as a competitive advantage –also offer fully automated Wordpress installations as a service and so on.
All these different actors have different interests or ways of using the “resource Wordpress”, but what they all have in common is an interest in the further development of the resource and in the preservation of the resource. Most of these actors have invested time and energy in the resource and have built their infrastructures or business models on top of it. As explained in Chapter 2.1, a loss of the resource would undermine entire IT infrastructures. That is why the actors all have the same interest that the common resource not only be preserved but even developed further and that external changes in the IT world can persist. In the example of Wordpress, this would include the development away from the desktop to mobile systems or from HTML 4 to HTML5.
This shows that Free Software is a sustainable development model precisely because there is no single entity that can restrict it or particularly profit from it. Instead, wealth generated out of the resource is shared among different actors who can design their own developments and applications. These shared characteristics of the resource Free Software creates a common interest in the preservation of the common good and, at the same time, synergy effects similar to those in natural ecosystems: high usage figures of the resource are incentives for further development of the resource, which create good opportunities for economic use cases which in turn motivate investments into the resource and attracts even more users, than the high popularity among different users attracts interest from security researchers and so on.
But also among competitors, Free Software is able to provide a sustainable common resource as we can see for example in the Linux kernel: The Linux kernel is an interface which translates the instructions of the software into machine-readable instructions to the hardware. In 1991, Linus Torvalds began developing the Linux kernel as a single person and released it as Free Software under the GPLv2 licence12. Quickly, other developers contributed over the Internet to work together and create the Linux kernel. Today, the Linux kernel is arguably the most widely used kernel in the world. We find its application in almost all forms of digital devices, from routers to refrigerators to smartphones and laptops to supercomputers13. This is made possible by what are now hundreds, thousands of programmers worldwide, each of whom continues to contribute to and help to further improve the Linux kernel as a shared resource for everyone. Among these contributors are some students and volunteers, but mainly employees of global IT companies such as Huawei, Intel, Red Hat, or Google14. That means companies that are in competition with each other on the free market create a common resource in this case, which in turn can be exploited by all - including one’s own competitors - to generate capital. This is not a contradiction but a calculated business: Through the common resource, they avoid the danger that their own developments fail or become obsolete, and they also profit from the developments of others and do not have to invent or imitate every new idea again and again.Whether intentionally or not: all contributors create a digital sustainability of the common resource "software kernel" by further developing the Linux kernel.
And regardless of the direction in which individual branches or the entire ecosystem around a Free Software solution develops, the sustainable characteristics of Free Software outlined above are always retained: all actors retain maximum sovereignty, they can scale and use the software resource as desired. There are no usage restrictions in terms of quantity or quality. It is precisely these properties that make Free Software a great foundation on which to build your own sustainable infrastructure. After all, even if a critical component is not developed further, it can be further developed by any actor themself.
Still, the Free Software development models and its surrounding ecosystems are not successful without any care, that is why many projects put particular attention on sustainable funding, marketing, governance models and other economic aspects. Sustain is an initiative to bring together experts from various fields to discuss these aspects of sustainability of Free Software. They are however not connected to the ecological benefits of Free Software, thus not outlined in this short study.
(3) Free Software, sustainability and the use of natural resources
Everything digital arises in the triangle of software, hardware and energy. But while software is immaterial, both hardware and energy require natural resources. There are meanwhile various starting points for reducing the need for natural resources in digitization. Within these, the use of Free Software can pay off in several dimensions, in particular, Free Software can directly help to increase the usage time of hardware and thus considerably reduce the consumption of resources in our digital society.
(3.1) Extending usage times
A fundamental problem for the sustainable design of digitization is the often short usage times of hardware. These short periods of use are ecologically doubly stressful, in production and in disposal.
The actual production and its global distribution result is by far the greatest amount of energy consumption of hardware and the CO2 footprint involved in these processes is many times that of its actual usage time15. In addition, the production of many high-tech products also requires the use of rare earths, the extraction of which in turn creates massive social problems on some continents - from inhumane production conditions to territorial battles.
If we do not want to abstain on our current living standards and the further development of digitization but keep our planet livable, an important approach for a more sustainable use of our resources is necessary and doable with the increase of the usage time of our hardware. The longer the usage time of existing hardware, the less new hardware is required. Statista says in 2020 alone there have been sold (thus also produced) more than 1.5 billion smartphones and we see a similar number in the last 5 years. Assuming if only one third of smartphone users would use their devices one year longer as now, this would reduce the production of new smartphones already by hundreds of millions of smartphones yearly and thus reduce the involved energy consumption significantly.
Not to forget that a longer usage time of hardware also helps to improve our environmental balance at the other end of the production cycle, namely in the production of electronic waste: The global e-waste monitor calculates that in 2019 alone over 50 million tons of electronic waste have globally been produced. Since 2014, the amount of annual electronic waste has increased by more than a fifth. In turn, only 17% of this was recycled. Most of the scrap - including large parts of the recycling - ends up in the countries of the global south, where it is again thinned through under inhumane conditions and searched for the last usable raw materials.
There are often numerous reasons that shorten the usage time of hardware, such as marketing, contract periods, trends and other influences. A decisive and at the same time unfortunately far too little illuminated reason, however, is the so-called “software obsolescence”: Software obsolescence occurs when the manufacturer of a software terminates support for a current software so that no further support is provided and the subsequent version at the same time can no longer be executed on the previous hardware. In this case, the manufacturer runs consumers into the dilemma of either buying new hardware or to live with outdated software and potential security problems (see also Chapter 2).
For many manufacturers, the planned software obsolescence is part of their market strategy, because it creates or enforces incentives of buying new hardware. Software obsolescence enables manufacturers to sell new hardware products before the old hardware is actually depreciated16. This enables and promotes ever shorter usage times of the hardware. But such a linear use of our resources within the boundaries of our planet has long since become unsustainable.
Free Software can help to extend the usage time significantly. "Old" hardware, the software or operating systems of which are no longer updated by the manufacturer, so that they become software obsolescent, can often be given a new life with the use of Free Software operating systems and thus continue to be used. This can be, for example, laptops or workstations whose hardware does not run the latest Windows version and for which the current version is no longer supported - or smartphones whose manufacturers do not offer any further updates to the operating system. In the case of laptops and workstations, GNU / Linux distributions can even supply decades-old computers with complete operating systems - in the case of smartphones, so-called “custom ROMs” can be installed17.
Example Android: Most of the smartphones affected by software obsolescence are devices with the Android operating system from Google. In fairness, this is simply due to the fact that an estimated 75% of smartphones worldwide have Android installed. On the other hand, it is also attributed to the fact that the actual hardware is mostly produced by third-party manufacturers and the operating system itself is in turn developed by Google. As a result of the initial sale, however, the hardware manufacturers have no further incentives to ensure that the phone can be used for as long as possible. On the contrary, you can always rely on new Android versions by a third party – Google – to keep producing and marketing new phones - instead of providing support for previous Android versions.
But the aforementioned “custom ROMs” can be installed on the said smartphones. These custom ROMs are modifications and Free Software operating systems of the original Android operating system, which enable users to install "new operating systems" on "old hardware". This means, that in many cases at least the current operating version can be supplied with security updates, and sometimes porting to higher operating system versions may also be possible. The users are thus no longer at the mercy of the dilemma of software obsolescence described above and the lifetime of the respective hardware can thus be significantly increased18.
By extending the usage time of hardware and countering software obsolescence, Free Software can directly help save natural resources and, attain sustainable digitization.
(3.2) Reducing energy consumption
Research into energy consumption of software by comparing equivalent software in equivalent usage scenarios and their respective resource consumption is still in its very early stages, but on the other hand there are already initial approaches and theses. The German Environment Agency is a pioneer in this area and is campaigning for the introduction of a Blue Angel for Resources and Energy-Efficient Software Products. Until further results and investigations shed more light on specific aspects regarding energy consumption of software, for now only the most important theses will be formulated in this chapter.
(3.2.1) Autonomy of use
Autonomy of use plays a central role in various usage scenarios of software and is in the very core for users to have control over their technology19. And since individual control over technology also promotes modular solutions and sufficient design-thinking, the user’s autonomy is increasingly recognized as the basis for a positive development towards a sustainable technology use.
Open Standards allow people to share all kinds of data freely and with perfect fidelity. They prevent lock-in and other artificial barriers to interoperability, and promote choice between vendors and technology solutions. For a more detailed definition of Open Standards, see the FSFE’s web pages.
The option to select and use open standards as data formats is an important part of the autonomy of use. Open standards make it possible to replace an application with another, provided that both can read the same open standard. Closed or proprietary standards, on the other hand, create a technical dependency of the generated and stored data towards a very specific application program. This creates a monopoly position that not only produces well-known economic problems, but also ecological problems: For example, when research will confirm that a certain program is more resource-efficient than another program - but the ecologically more sensible program cannot be used due to data incompatibility.
Open standards also play an important role in the design of sustainable IT infrastructures (see Chapter 2.1). Since different applications can be used to process the same data, open standards allow an organic development of your own infrastructure as well as later modifications or corrections. New applications and modules can be integrated into existing architectures or exchanged as long as they all speak the common standards, which are Open Standards.
(3.2.2) Uninstallability and modularity
The ability to uninstall software is an essential feature of any autonomy of use of technology, but this ability is often withheld within proprietary systems. Much of the hardware and its operating systems come “inherently” with pre-installed software that cannot be replaced or removed20. For many customers this is especially visible in the Smartphone Operating System segment. And even if the specific measurements and research activities have only just started, it can be intuitively understood that every application - even if it is not used or "opened" - requires at least a small amount of digital resources and thus energy. For example, storage space on a data carrier is required for the application to be installed, automatic updates may be loaded, the boot process of the operating system might be slowed down by a fraction of a second, and so on: Even if the numbers and measurements that result on a single device appear negligible, they scale extremely quick in noticeable dimensions21 due to the ever-increasing expansion of digitization. Thus, the fact that software can be uninstalled and the system has been streamlined consequently serves not only to ensure autonomy of use, but also to conserve resources. Free Software gives users full control and, in contrast to proprietary software, usually enables the software to be completely uninstalled.
In a very similar way, the modularity of Free Software can help to conserve resources and to extend hardware usage time. This is because lower resource consumption and hardware demands on the software side not only means that less energy is used, but can also be the deciding factor in whether or not I can get a program to run on older and possibly less powerful hardware.
When using a Free Software operating system, there is basically the option of manually configuring, removing, replacing or even installing each module and program. Since Free Software can be shared, specially configured systems can be distributed and all users can benefit from this configuration. This leads to interest groups - so-called communities - who maintain and publish special GNU / Linux software configurations - so-called distributions. There are GNU / Linux distributions that are specially designed to have the lowest possible hardware requirements through the skillful use of only the most essential modules and thus still provide up-to-date software on old hardware22. In this way, the modularity of Free Software allows one to run a sufficient system, thus increasing the useful life of hardware.
In (1.5) Sustainable use of the resource brainpower it is argued that – although difficult to measure – the reuse possibilities of Free Software enable a sustainable use of the important human “resource brainpower”. In the field of Artificial Intelligence (AI) the concrete energy savings by reusing already trained models however are measurable and help us understand the sustainability of reusing energy in other aspects of software development.
The energy consumption of the software used to train Artificial Intelligence model is estimated by measuring the hardware power consumption and converting it to CO2 emissions23. This way it has been found that training a single AI model for understanding human language takes as much as 284 tons of CO2. If AI models are not shared across, they will need to be trained by each stakeholder and implication, thus dramatically increasing CO2 emissions in this technological field. Sharing AI models under a Free Software licence instead allows for sustainable development of AI by limiting power consumption and therefore CO2 emissions24.
Putting both aspects together – savings of human brainpower and of computational power by reusing software and trained AI models – it becomes clear how sustainable ecosystems around Free Software (see 2.2,) very likely are able to save countless amount of human energy and computational energy, both decreasing unnecessary use of natural resources. This is exactly what some competitiors have understood in developing, for example, the Linux Kernel together (see example in 2.2). If state authorities would tie the development of intangible goods that are funded with public money to a publication under a free licence, our society could profit in multiple ways including a more sustainable use of our natural resources.
(4) What can politics and society do for a more sustainable digitization?
The more we research the principles of digital sustainability, the more it becomes apparent that Free Software is also sustainable software and vice versa. As shown in this study, Free Software (also called Open Source Software) contributes to digital sustainability in several dimensions:
- Ensuring sustainability and availability of software
- Creating independent infrastructures and sustainable ecosystems
- Saving natural resources by extending the usage time of hardware
- Reducing energy consumption through autonomy of use and reusability
It is therefore important that politics and society set milestones today into further promotion of Free Software development and thus into sustainable software in order to guarantee a liveable future. To let society fully benefit from the sustainability of Free Software, hardware must be developed and provided with full access and be under the control of the individual user. To this end, devices shall be sold with operating systems that are published under a Free Software licence and without any technical limitations regarding their reuse as general purpose computers. Until we are there, however, the most urgent milestones currently are:
- Device Neutrality:
- General Purpose Computers: Right to use alternative operating systems and software
- Access to Hardware: Devices with open interfaces, drivers, and standards
- Freedom of Choice: Gatekeepers must allow competing services and software
- Upcycling of Software: Publication of source code under a free licence after the end of support
- Public Smart Infrastructures: Public infrastructure to be set up with Free Software and public code
Device Neutrality is a term that has been introduced to describe a non-discriminatory IT environment in that any service and software application is treated equally within the running operating systems, its dominant platforms and their respective hardware companies. The idea is to ensure competition, consumer protection and freedom of choice by offering a similar "neutrality" for any user, developer, company, or any other entity. For a clearer understanding of how to achieve real device neutrality, we break down the sum into three separate demands: General Purpose Computers, Access to Hardware, and Freedom of choice.
General Purpose Computers: Right to use alternative operating systems and software
Today's manufacturers of linear products mostly try to prevent the installation of Free Software and alternative operating systems, although - or precisely because - this can clearly extend the usage lifetime of hardware and help with a more sustainable use of our resources.
To achieve digital sustainability, it is a political necessity to prevent short hardware lifetimes and corresponding linear business models and to enable free reuse of devices. Neither technical measures (e.g. locking the bootloader) nor legal measures (e.g. general terms and conditions and EULAs) that aim to prevent the installation of alternative operating systems may be permitted. Users must be given the right to install the operating system of their choice on their own devices, as well as any software.
In the past decades, however, politics often supported manufacturers' intentions in locking down devices and creating a linear use of hardware in that reuse or modification of the hardware is not allowed or enabled. The Digital Millenium Copyright Act is an example as is the European Information Society Directive. Both are implementations of the WIPO Copyright Treaty that introduced the illegality of any activities aiming to upgrade or upcycle devices by any means circumventing digital restrictions management.
The FSFE highlights the importance of user’s individual control over general purpose computing machines25. Given the vast number of powerful general purpose computing machines - those called “Smartphones” for example - produced and trashed every year26, it is also of inevitable importance for a more sustainable use of our resources to give third parties and users full access to these computers and let them use their devices for continued upcycling processes27. “Outdated” smartphones, for example, can be used for other kinds of automated processes at home, at work, or in other surroundings. With the growing Internet of Things and ever more connected devices we must act now to ensure a more sustainable use of our resources and devices in future.
Access to Hardware: Open interfaces, drivers, and standards
Although manufacturers use general purpose computers for their devices, they often try to support the marketing of their own product family and prevent users from combining products with those from competitors. This creates an artificial incompatibility of their products with the products of other manufacturers. At the hardware level, for example, many people have encountered this from the incompatibility of different charging cables - which politicians at the European level at the time of writing are trying to address with new eco-design criteria28.
Similar incompatibilities are also played out on the software level, often involving proprietary formats such as the Microsoft Word Binary File Format .doc for example. Proprietary formats are introduced to prevent other software applications from accessing saved data in general and publicly available data formats defined in Open Standards. Apart from hindering competition and innovation, such proprietary formats are used to artificially simplify software solutions within IT environments. And from a shortage of software solutions follows a shortage of possible hardware solutions. In particular, any data incompatibility prevents users from using the most efficient toolchain within their IT environments and possibilities of reducing energy consumption are limited.
Incompatibilities worsen regarding access to hardware, where restrictions primarily happen by withholding interfaces and drivers. In contrast, open provision of interfaces and drivers enables third-party manufacturers to combining existing hardware in a modular manner and to form complex infrastructures under individual aspects and necessities. For example, it would be possible to combine different hardware products and compile them together with a focus on the overall efficiency or their flexibility instead of being at the mercy of the manufacturers' monocultures and product families.
The possibilities of combining different hardware products and families with each other in support of a more sustainable use of hardware will become of ever more importance with further growth of the Internet of Things. With open access to interfaces and drivers, any third-party providers would be enabled to offer services such as the repair of hardware, supporting a more sustainable use and longer usage lifetime of hardware. That is why these demands are also part of the demands for a universal “right to repair”.
Freedom of choice: Gatekeepers must allow competing services and software
The current debates 29 about device neutrality combine the two aspects of general purpose computing and access to hardware with an added obligation for non-free services and operating systems to allow installation and use of alternative services and software. This demand is particularly important for any user or third party not interested in modifying hardware or software systems but who wants to benefit from more competition and a more vibrant software market. Hardware and operating systems, but also browsers and app-stores, have become the gatekeepers of interaction between users and services. Users, developers, and third parties however shall have the freedom to access and offer information and services within these platforms and not be blocked for any competitive reason.
The free choice of services would help the sustainability of our digital services and devices by opening up markets and innovation. If consumers buy, for example, a smart device and can afterwards decide to use the pre-installed - even proprietary - operating system but not the pre-installed cloud connection to its initial manufacturer but to a third-party service provider instead, this could amplify competition, users' freedom, and ecologically friendly options. It would in particular allow a more diverse usage of existing hardware and the assembling of hardware in a more modular manner as described in access to hardware.
Upcycling of Software: Publication of source code under a free license after the end of support
As shown in this study, Free Software is a solution to overcome the problems of software obsolescence and to help extending hardware lifetime. From smart cities to smart homes to smart phones, but also true for even not(-yet)-connected devices like washing machines, toasters, or any other machines: access to the source code of the software that is running the machine is critical for any sort of maintenance operation including repair as well as any potential reuse or upcycling process of that hardware. Without public access to the source code only the initial manufacturer and its contracted service operators can offer any kind of service. Apart from economical problems by creating monopolies, ecological problems worsen with the end of support of any such a device by the initial manufacturer. The end of support usually means the end of the lifetime of the device. Even if the hardware is still functioning, software obsolescence occurs and makes the hardware unusable.
To solve this dilemma, the FSFE demands the publication of a device's underlying source code under a free licence 30 at the end of support for any software necessary to run or modify the initial functioning of the device. This is because the availability of the source code would enable any third party to undertake the maintenance, extended support, or further development of the software and its device. Instead of wasting valuable hardware and resources, the publication of source code will extend usage, lifetime, and reusability, being a barrier against software obsolescence.
Icons reused from sources available on Freepik.com
Public Smart Infrastructures: Public infrastructure to be set up with Free Software and public code
As is examined in this study, Free Software serves the sustainability of IT infrastructures. It does so both, in the possibility of saving resources through the use of modular systems and the deinstallation of modules that are not required, as well as through controlling the software in use and allowing building architectures without software obsolescence.
In today's society, IT-infrastructures power almost all system-critical applications, from hospitals to public administrations to local public transport. To benefit from sustainable eco-systems surrounding Free Software concepts, a crucial requirement is that software that runs our everyday and critical infrastructure is software published under a Free Software license. Free Software is the solution to guarantee that critical infrastructures are not under the control of proprietary software developers and their companies' market strategy31. Similar thoughts are often addressed under the term "digital sovereignty".
Most of our public digital infrastructure is paid for with public funds. The FSFE launched the “Public Money? Public Code! ” campaign in 2017 that has since enjoyed great popularity around the world. The central message of the campaign is to create a legal basis that requires that software developed with public funds for public administrations is published under a Free Software or Open Source licence.
Once the principle of 'Public Money? Public Code!' is established, our administrations and societies would greatly benefit from sustainable infrastructures and sustainable software solutions. Software once developed could be used, customized, and shared by other administrations. Sustainable ecosystems around software solutions could be established.
If it's public money, the code should be public too!
(5) Initiatives around the sustainability of Free Software
Meanwhile there are many initiatives around the sustainability of Free Software. Below a list of those that have been mentioned within this study:
With an estimated 75% of all smartphones, the Android operating system is by far the most widespread smartphone operating system in the world. If only one third of these users would extend the usage lifetime of their smartphones for one more year, we could save hundreds of millions of smartphones from being produced. A longer use of smartphones becomes be a crucial factor for a more sustainable use of our resources. “Upcycling Android” is an upcoming initiative by the Free Software Foundation Europe to extend the usage time of Android phones by installing alternative operating systems. An online campaign helps users to understand the problem and to help themselves; further help is provided in organized workshops.
The Blue Angel for resources and energy-efficient software products is an initiative of various German environmental and standardisation agencies to address the energy consumption of software in interplay with its hardware. In the requirement criteria for achieving the Blue Angel, many inherent characteristics of Free Software - for example the autonomy of use listed above - play an important role. The KDE e.V. runs an initiative to help Free Software projects to apply and succeed in the Blue Angel certification as well as supporting further research activities specifically for Free Software desktop applications.
The Principles of Digital Cooperation are an agreement developed by the United Nations Foundation and meanwhile signed by numerous initiatives in the international cooperation sector. One of the nine central principles in it calls for the use of open standards, open data, free software and open innovation. Other principles also align very well with several aspects of Free Software and software sustainability as outlined in this study. The FSFE website provides a detailed analysis of the potential of using Free Software for sustainable international development cooperation based on these principles and the UN sustainable development goals.
Sustain is an initiative of experts to think about the sustainability of Free Software from an organisational point of view. For example how to achieve sustainable financial independence or how to choose the best governance or funding models depending on the project's level of development, always aiming at maximising the longevity of the project. After initial spark in 2017 meanwhile there are several working groups working on certain aspects regarding the sustainability of Free Software as a resource.
In addition to the use of Free Software, a general “right to repair” is one of the basic requirements for a more sustainable digitization, in particular for the longevity of our hardware. Since software and hardware cannot be separated from each other, the debates about the right to repair include most of the core concepts of sustainable software and device neutrality as outlined in this study, in particular the Right to General Purpose Computing, the Access to Hardware, and the Upcycling of Software.
Software Heritage is a non-profit supported by UNESCO, whose mission is “to collect, preserve, and share all software that is publicly available in source code form” in order to establish a sustainable resource of human’s knowledge in source code form. Consequently, the Software Heritage infrastructure itself is underlying a sustainable development model in that all the software developed in the process is being released as Free Software.
Bits & Bäume has been a conference on the topic of sustainable digitization and in its aftermath has become a well-known source of information material, including the recordings of the sessions as well material that has been produced in follow-up. Inside Germany there is also a community growing with local chapters that align with the demands by the conference’s organisers. Your author of this study also gave an introductory talk at said conference about the sustainability of digital resources (DE).
Author: Erik Albers
- More about Free Software on fsfe.org: https://fsfe.org/freesoftware/
- More about Free Software Licensing on fsfe.org: https://fsfe.org/freesoftware/legal/faq.html
- It is also known as the Brundlandt Report, published by the “United Nations' World Commission on Environment and Development” in 1987 - and named after the chairman of the commission. The original copy is available on Wikisource.
- More about this logic and further thoughts on the preservation of digital raw materials, see also the recording of the Bits & Trees lecture by your author Erik Albers: Digitale Rohstoffe erhalten sich anders (German)
- For an introduction to the topic and the problem of digital restrictions management see https://drm.info/
- The FSFE understands the term "intellectual property" to be ideologically charged and dangerously oblivious to the significant differences that exist between the many areas of law that it tries to subsume. That is why the author of this study speaks in turn about “Intellectual limitation rights”.
- Because of the dangerous aspects of intellectual limitation rights for the sharing of software and knowledge, the FSFE did and does run multiple campaigns in order to convince decision-takers to avoid the dangerous limitation of knowledge. You find many of them on the FSFE’s Policy Activities Page.
- See Intergenerational equity on Wikipedia for further information
- For more detailed information on Free Software and its licences, see Frequently Asked Questions on Free Software Licensing
- In 1998 Netscape released the source code of its browser “Netscape Navigator” and created the Mozilla Organization to coordinate future development of its product. In a first step however the newly founded Mozilla Organization rewrote the entire browser's source code to be based from this point on on the Gecko rendering engine - and published it as “Mozilla’s Firefox”
- The Google Cemetery for example lists currently (01.06.2021) 166 software products developed by Google until the day Google decided to not further maintain them – and without offerng any release of the underlying source code or other help for users to get their data exported into other programs.
- Version 2 of the GNU General Public License
- Since 2017 the top 500 supercomputers in the world meanwhile all run on Linux: top500.org
- For version 5.10 of the Linux kernel, employees of only said companies listed above together contributed already 28% of all code changes, see Statistics from the 5.10 kernel development cycle
- For example, Apple calculates its carbon footprint for 2018 to be 74% of production and another 5% of global transport and only 19% of actual product use, see Environmental Responsibility Report 2019 (Covering Fiscal Year 2018), page 9
- This is particularly striking in the smartphone segment. Most of these devices only have a very short lifespan - around one and a half to two and a half years on average. Most of the time it is because the phones originally delivered are no longer updated by the manufacturer so that they become software obsolescent. The “Upcycling Android” campaign by the Free Software Foundation Europe starts at this point and helps users to extend the usage time of their smartphones.
- See also the “Free Your Android” campaign launched by the Free Software Foundation Europe in 2013, which supports users in installing alternative operating systems on their Android smartphones in a self-determined manner.
- It should be noted at this point that, in the sense of complete digital sustainability, such a use of Free Software is best paired with the modular design of hardware and the most complete repairability of the entire construction or its individual modules (for more information see also Pohl et al. (2020): Design Options for Long-lasting, Efficient and Open Hardware and Software). The underlying concept of a "right to repair" has long been demanded and includes aspects such as a repair-friendly product design, access to spare parts and the receipt of the guarantee even in the case of repairs. More info on this at repair.eu
- Incidentally, with Free Software the maximum autonomy of use applies, as postulated in the tagline of the Free Software Foundation Europe: "empowering people to control technology"
- Compare, for example, the activities of the Free Software Foundation Europe on "Router Freedom" and "Free Your Android". In the first case, it is about the rights of users to choose their own router and load it with an alternative operating system - in the second case, it is about the rights of users to install alternative operating systems on their smartphones.
- In his Bits & Bäume presentation, Niklas Jordan calculates how saving only 25KB by compressing the Wikipedia logo scales within one month to the amount of energy that nine two-person households consume per year.
- For more details, see the documentation of the specialist discussion “Sustainable Software” on November 28, 2014 by the Federal Environmental Agency of Germany, and in it: Erik Albers “Freie Software – Ressourcen schonen durch teilen”
- Version 2 of the GNU General Public License
- The Free Software Foundation Europe has made an analysis with additional benefits of Free Software for Artificial Intelligence: https://fsfe.org/freesoftware/artificial-intelligence.html
- See for example “"Secure Boot": Who will control your next computer?”
- According to Statista in 2020 alone there have been sold (thus also produced) more than 1.5 billion smartphones with similar numbers in recent years.
- Although unfortunately never competed, the initial ideas surrounding Samsung’s “Galaxy Upcycling” shed pretty good light on the possibilities of reusing and upcycling Smartphones in other IT environments: https://de.ifixit.com/News/50450/samsung-galaxy-upcycling-unlocked-smartphone-smarthome-project
- See e.g. https://netzpolitik.org/2021/interne-dokumente-eu-plant-einheitliches-ladekabel-fuer-alle-handys-tablets-und-laptops/
- See for example the discussions surrounding Article 3(7) of the Digital Markets Act, stating a gatekeeper shall "(e) refrain from technically restricting the ability of end users to switch between and subscribe to different software applications and services to be accessed using the operating system of the gatekeeper, including as regards the choice of Internet access provider for end users;"
- Any licence defined as a Free Software Licence by the Free Software Foundation or as Open Source Licence by the Open Source Initiative.
- See also the developments around Huawei in 2019 and the statements published by the FSFE on this. At that time it was initially about a possible ban on Huawei hardware for the 5G network expansion and an associated debate about lack of transparency of the manufacturer code. In these debates, various actors emphasized the importance of having one's own control over critical state infrastructure. Shortly afterwards, the question of control is virtually reversed when Google, under pressure from the Trump administration, denies the Chinese IT giant Huawei access to the proprietary components of the Android operating system. This severe setback for the market economy again showed for Huawei clearly how important the control over its own infrastructures and components are, so not again in the future a third party can undermine their own ecosystem.
This project is financially supported by:
The publisher is responsible for the content of this publication.