The open source community KDE recently received the German Blue Angel (Blauer Engel) ecolabel for energy efficiency. The software, Okular, is a universal document viewer designed to work on multiple platforms with a wide variety of file formats.
Q: KDE has announced that sustainability is a top priority. People don't typically consider software a factor in contributing to physical waste, so what does it mean for an application to be eco-friendly?
Joseph De Veaugh-Geiss: A computer may be rendered hardly usable, or not usable at all, due to
inefficient software design, feature creep, and other forms of
energy-consuming bloat that users may not need or even want. Yet vendors
force users to buy newer, more powerful hardware. Furthermore, when
updates for a device, like a mobile phone or tablet, are discontinued,
most people discard the device as e-waste because continued use would be
a security risk. This e-waste can have huge environmental costs.
According to a report in Anthropocene Magazine, the production of a
smartphone accounts for 85% to 95% of its annual carbon footprint due to
the energy-intensive processes required to mine the metals. Giving users
autonomy in how their software runs, what is installed or uninstalled,
which devices are supported, and so on is critical for extending the
operating life of hardware and reducing physical waste.
Software that reduces such waste is software that is more sustainable,
more eco-friendly. At KDE Eco we are pleased to see that user autonomy
and transparency, the pillars of Free and Open Source Software, are now
officially recognized by the Blue Angel ecolabel as critical to software
Q: I imagine the way software interacts with hardware can also be inefficient. Does KDE take this into consideration?
Joseph De Veaugh-Geiss: Software can waste energy, which in turn drives up electricity bills and drains the battery. For example, advertisements or tracking data transmitted in the background are common causes of excess energy use. Users are usually powerless to opt out of such background computations, and in many cases these wasteful processes have nothing to do with the primary functions of the software.
Consider a report from the German Environment Agency, which found that two text editors performing the same task had drastically different energy demands: To get identical end results, one text editor consumed 4 times the energy compared to the other!
In probably every country in the world, every student, official, and everyday user needs a text editor. If you increase software efficiency by 4 times for billions of users worldwide, the numbers quickly add up. Choosing the more energy-efficient text editor would mean nontrivial energy savings, but transparency about software's energy demands is necessary to make such choices.
KDE Eco views eco-friendliness in terms of a range of factors that reduce waste and increase sustainability. The Blue Angel award criteria for software, which is a focus of the Blauer Engel 4 FOSS (free/open source software) project, provides an excellent benchmark for evaluating the eco-friendliness of software.
Q: Is there a benefit to users for their software to be sustainable?
Joseph De Veaugh-Geiss: Software that conserves energy by reducing unnecessary background processes and is more energy-efficient with obtaining identical results can lead to lower electricity bills, longer battery usage, extended hardware life, higher software responsiveness, and so on. And you can save money by continuing to use functioning hardware with up-to-date software.
Most important of all, using software that is sustainable may reduce the environmental impact of digitization and contribute to more responsible use of shared resources.
Q: When programming, what things can a developer keep in mind to make their code sustainable?
Joseph De Veaugh-Geiss: I'm not a coder, but measuring energy consumption is an important first step in achieving more sustainable software. Once the numbers are known, developers can drive down the code's energy demands on hardware. This is why KDE Eco is working on setting up a community measurement lab to make measuring energy consumption accessible to FOSS projects.
The SoftAWERE project from the Sustainable Digital Infrastructure Alliance, which KDE Eco has been collaborating with, is looking to make energy consumption measurements part of the CI/CD pipeline. These tools help developers make their code more sustainable.
Q: Have you had to make trade-offs when programming Okular to make it more sustainable? In other words, have you had to sacrifice quality or features for sustainability?
Joseph De Veaugh-Geiss: In terms of the Blue Angel ecolabel, with its emphasis on transparency in energy and resource consumption and user autonomy, Okular was already quite close to compliance.
Most of the work was in measuring the energy and hardware demands when using Okular and analyzing the results—carried out by researchers at Umwelt Campus Birkenfeld—as well as documentation of fulfillment of the award criteria. In some cases, we lacked documentation simply because we in the FOSS community may take many aspects of user autonomy for granted, such as freedom from advertising, uninstallability, or having continuous updates provided free of charge. In this respect, there was no sacrifice in quality or features of the software, and in some cases we now have better documentation after completing the application for eco-certification.
We will see what the future brings, however: In order to remain compliant, the energy demand of Okular must not increase more than 10% compared to the value at the time of application. It is possible this could require trade-offs at a future date. Or not!
Q: The Plasma Desktop isn't generally considered a lightweight desktop, especially when compared to something like LXQt. If an aging computer can't handle the full desktop, can I still benefit from K apps such as Okular?
Joseph De Veaugh-Geiss: Yes, I believe there is a benefit to using Okular and other KDE apps over less efficient alternatives regardless of the desktop.
Q: Why do you think Okular got the attention of the Blue Angel project instead of other KDE applications like Gwenview, Dolphin, Elisa, and so on?
Joseph De Veaugh-Geiss: Everybody needs a PDF and general document viewer! And Okular is multiplatform software, with downloads available for GNU/Linux, Plasma Mobile, Android, and Windows. This made Okular an attractive candidate for a Blue Angel application.
Please keep in mind, however, that we are working on certifying other KDE software in the near future. We already have energy consumption measurements for KMail and Krita, thanks to the work of the Umwelt Campus Birkenfeld, and we are preparing to measure Kate and GCompris in our coming community lab at KDAB (Klaralvdalens Datakonsult AB) Berlin. Moreover, we have begun reaching out to the wider FOSS community regarding measuring and improving energy efficiency and possible Blue Angel eco-certification.
Q: How important is open source to the idea of sustainable computing?
Joseph De Veaugh-Geiss: Free and open source software can promote transparency and give users control over the software they use, rather than companies or device manufacturers. This means users, and their communities, can directly influence the factors that contribute to sustainable software design, whether when using the software or developing it.
Q: What are your future plans for KDE Eco?
Joseph De Veaugh-Geiss: In the coming weeks, we will set up the first community lab at KDAB Berlin for measuring the energy consumption of Free Software. Once the lab is set up, we will have a measure-athon to measure Kate, GCompris, and other Free Software applications. We plan to publish the results, and over time we hope to push more and more developers, FOSS or otherwise, to be transparent about the energy demands of their software products.
With more software measured, we hope to attract developers to help us develop tools to make energy consumption measurements more accessible. For instance, there is a great data analysis tool—OSCAR (Open source Software Consumption Analysis in R)—but it will need maintenance. Perhaps there are other data analysis tools we could develop for this work. Moreover, our long-term vision for the lab is to have an upload portal where developers can upload their software and usage scenarios, and the entire measurement and data analysis process is automated.
We look forward to working with the FOSS community to make these kinds of toolsets a reality!