Summary
Software has an impact on our future. It has an affect on energy and resource usage. KDE can deliver software which does this in a way which preserves environment and society for us and future generations. KDE can deliver Sustainable Software.
This goal is about promoting sustainable software in KDE by (i) aligning existing activities, (ii) highlighting where our software is already sustainably designed, (iii) stimulating actions to increase sustainability, and (iv) creating standards/tools to quantify software sustainability.
Motivation
The human species has a big challenge. If we continue to use resources and energy in the way we do today, future generations will not have adequate conditions to live well. Our planet is at stake. We do need to find and implement more sustainable ways to live. The goal of our generation has to be sustainability.
The influence of software on sustainability is not well understood yet. Software design can have a massive influence on energy consumption, lifecycle of hardware, digital waste, sovereignty and autonomy of users. It can prevent users to take sustainable choices. It can have disastrous consequences on the environment as can be seen in certain ecosystems. We need to bring this concerns to the surface. We need to do something about it.
KDE is in a predominant position to take a lead here. We have been driven by sustainable principles since our inception, even if we not always have consciously done so. Software freedom is at the core of ethical use of software, of giving people control to take responsible decisions. Making use of existing hardware always has been a core practice of the Free Software community. KDE software runs on hardware which many vendors have given up a long time ago. We always have focused on native implementations, not wasting the overhead of overly virtualized software stacks.
At the beginning of 2022, KDE's sustainability efforts were officially blessed by the "Blue Angel" eco-label certification of the German government for resource and energy efficient software as the world-wide first software product in this category.
KDE has the opportunity, capability, and the responsibility to push forward and implement the idea of sustainable software. This goal will serve as a focal point to stimulate and bring together KDE's activities in this area. We can and must contribute our share to save the planet.
Plan
Core activities
The goal has four focus areas:
- Aligning existing sustainability activities
- Giving visibility to the many areas where our software already is designed for sustainability
- Stimulating initiatives and concrete actions across KDE to increase sustainability or make it more transparent
- Create standards and tools to quantify software sustainability
Alignment
We have some activities which explicitly address sustainability, the FOSS Energy Efficiency Project (FEEP), the BE4FOSS project, funded by the German state, the Blue Angel certification efforts or the lab for measuring energy efficiency.
We also have activities which support sustainability implicitly, although we often don't think about it this way. Examples are our privacy policy, the telemetry policy, or generally the values which stand behind Free and Open Source Software in general and KDE in particular.
Bringing this together and telling a compelling story from the perspective of sustainability in and through KDE is one part of the goal.
Visibility
KDE software contributes to sustainability in many ways. Users have control of what they use and how they do it. We don't spy on them or force ads on them. Code and development is transparent and open for participation. KDE software runs on old hardware and doesn't force users to upgrade hardware because of software version updates. KDE software runs natively and efficiently.
For us this is natural, but it actually has a greater societal benefit. It puts users in a position where they can decide and exercise their autonomy to act in a responsible way. This is often not communicated properly and users don't have the means to judge how sustainable KDE software is, also compared to other software.
There are many small steps we can take to improve that:
- Making sure that documentation covers sustainability, for example links to privacy and telemetry policies
- Pointing out user autonomy in our communication about our software, e.g. in release announcements or in background stories
- Do joint activities with other initiatives and organisations focused on sustainability, Green IT initiatives, community activities of makers, hackers, environmental activists etc. We have already build a network as part of KDE Eco.
- Leverage requirements to use sustainable software to position KDE software. One direction could be using the Blue Angel certification to target public administrations which have decided on sustainability as one criteria for the procurement choices
Initiatives
There are concrete initiatives we can take to make KDE software more sustainable and promote the aspects where it already is addressing sustainability in an exemplary way. These initiatives could benefit from attention, participation, and funding.
There are some initial initiatives. Using the power and creativity of the community we can probably come up with more. Initial initiatives are:
- Creating a network of labs to measure energy efficiency of software. There is a first lab in Berlin being built in collaboration with KDAB to provide infrastructure necessary to measure energy consumption of software according to the procedure defined by the criteria for the Blue Angel for resource and energy efficient software. This uses external current measurement devices to get exact data. It's relatively easy to replicate and could give more people the opportunity to get hard data and insight into the efficiency of their software.
- Certifying more applications with the Blue Angel. The Blue Angel is a German eco-label with a long history and a very good reputation. We got KDE Okular certified as the first software product meeting the criteria of resource and energy efficient software. We can extend this to get more applications covered. This can support marketing of our software and can be a decision factor for organisations and individuals considering sustainability when choosing what software to use.
- Making energy efficiency a quality criteria for software releases. When we are able to measure energy efficiency in an automated way, we can make it part of the tests which run in CI. This would make it possible to detect regressions and define quantitative feedback for optimisation efforts. The very basics for this are in place, but it needs more effort to actually make it part of our development process. The result would be that we can claim and make sure that our software is designed for sustainability.
Standards and tools
One of the biggest challenges is to quantify sustainability so you can compare different implementations, notice regressions, and can do targeted optimization. There are some frameworks for quantifying sustainability, for example the methods to measure energy efficiency developed by the Umweltcampus Birkenfeld, or the Green Metrics tool by Green Coding Berlin. There are still many gaps, where no tools exist yet, and we need standards which make it practical to exchange data.
Activities in this area include:
- Develop good practices to use the existing tools
- Bring KDE software, such as LabPlot, into the toolchain to quantify sustainability
- Create, improve and contribute to tools for quantifying sustainability (including fun hacks such as using cheap Wifi power plugs to measure energy)
- Define, improve, and use standards to connect tools and data (e.g. the XML format used by the Blue Angel criteria)
Steps and milestones
A lot of the work in this goal is happening continuously, driven by motivation and availability of individuals. It's a lot of small steps contributing to the overall goal that can't and don't have to be planned.
Setting concrete goals can help to drive initiative, so here is what we strive to achieve as part of the sustainability goal:
- Certify three more applications as resource and energy efficient software according to the Blue Angel criteria by 2024
- Include sustainability information in documentation and web sites of KDE applications (details need to be defined), goal: cover 50% of KDE applications by end of 2023, and 80% by mid of 2024.
- Present KDE as Sustainable Software at a conference dedicated to this topic.
Community
There are many small steps which can happen in a distributed way. Each KDE application can work on making sustainability aspects transparent, measuring energy efficiency, or promoting how KDE software is contributing to a sustainable world.
We also need the existing community initiatives, such as FEEP, BE4FOSS and others. These reach out to the KDE community but also to other adjacent communities. We can involve other Free Software projects but also projects and organizations focused on sustainability from a different perspective, e.g. coming from a political or environmental background.
And finally the topic of sustainability could be a unique selling point for the KDE community as whole. A lot of our values, our history, our activities, and our software have been built in a sustainable way. We often haven't spelled this out or done it in a conscious way. Bringing this to the surface, communicating its value, making it an explicit part of what we are could make a real difference. We are addressing a problem of global relevance for our future, after all.
Risks and needs
While sustainability is part of our values, it's not always part of our actions. Many things might seem to be more important on a short-term view. Dealing with technological challenges, addressing users' immediate needs, working on fun features, all that can put sustainability aspects in the background.
We need to explain why it's relevant to work on this and make it easy to get results.
Some of the projects also need some infrastructure, tooling, or funding, especially when it comes to physical measurements of energy consumption. This usually is not about huge amounts of resources, but some targeted investments could act as enablers.
Champion
I got intrigued by the topic when I first heard the presentation of Marina Köhn and Eva Kern at the Chaos Communication Congress 2019 about how climate friendly software is (German original, English translation). They presented the sustainability criteria for resource and energy efficient software for the Blue Angel, which were brand new at that time. I thought these were a perfect match for KDE. So I set out on the mission to get the Blue Angel for KDE. In the beginning of 2022 we finally achieved this goal and got the certification for KDE Okular.
There is a lot of momentum around IT and its effect on the environment, on how we can use hardware and software in a sustainable way. It's a relatively new topic, especially considering the impact of software. But it gets attention from groups, organizations, and communities which haven't been involved with Free Software before. So this is an excellent opportunity to extend our network.
One initiative where we are successful with that is the BE4FOSS project to promote sustainability criteria for software and help Free Software developers to consider these aspects in design and implementation. The project is funded by the German ministry for environment and allowed KDE (e.V.) to hire two people to work on the topic for two years. I helped to set up this funding opportunity.
I'm personally convinced that we all need to do more to make sure that future generations will have a livable planet. Software is one aspect where we can do something. There might be other aspects where a bigger effect can be achieved, but software is what we do and where we know how to make a difference, so I believe that we can make a very meaningful contribution here.
Interest
This section is intended for people other than the Champion to sign up and show support for the Goal.
If you are interested to actively join the effort and do the work, add your name below (this does not count as voting for the Goal):