Let's document user autonomy! | Blauer Engel 4 FOSS (KDE Eco)
Joseph P. De Veaugh-Geiss
joseph at kde.org
Tue Sep 21 14:25:47 BST 2021
Hello community,
tl;dr Support for open standards, software transparency, respect for
user privacy … KDE/FOSS already fulfill the user autonomy criteria for
obtaining the German eco-label Blauer Engel for desktop software. This
long-from post details some easy-to-fill documentation gaps to help
obtain eco-certification for free software. This text will eventually
become a blog post with the launch of the eco.kde.org website.
Overview: The Blauer Engel user autonomy criteria for desktop software
cover eight general areas which may require additional community
documentation:
1. Data formats (e.g., supported data formats)
2. Transparency (e.g., API, source code, license)
3. Continuity of support (e.g., release schedule, security updates)
4. Uninstallability (e.g., how to completely uninstall)
5. Offline capability (e.g., is network connection required)
6. Modularity (e.g., user choice in what is installed)
7. Freedom from advertizing (e.g., user choice in ads)
8. Documentation (e.g., data import/export, privacy policy, etc.)
https://produktinfo.blauer-engel.de/uploads/criteriafile/en/DE-UZ%20215-202001-en-Criteria-2020-02-13.pdf
See below for more details!
Feedback, comments, questions? Please join our energy efficiency mailing list
and Matrix room or ask a question at the KDE Eco forum ... or contact me
directly!
Mailing list: https://mail.kde.org/cgi-bin/mailman/listinfo/energy-efficiency
Matrix: https://webchat.kde.org/#/room/#energy-efficiency:kde.org
Forum: https://forum.kde.org/viewforum.php?f=334
Cheers,
Joseph
KDE Eco: Building Energy-Efficient Free Software!
---
Joseph P. De Veaugh-Geiss
BE4FOSS Project and Community Manager (KDE Eco)
Table of Contents
─────────────────
1 Background
2 User Autonomy Criteria
.. 2.1 Data Formats
.. 2.2 Transparency of the software product
.. 2.3 Continuity of support
.. 2.4 Uninstallability
.. 2.5 Offline capability
.. 2.6 Modularity
.. 2.7 Freedom from advertising
.. 2.8 Documentation
3 References
.. 3.1 Blauer Engel Examples
.. 3.2 Links
1 Background
════════════
At the last KDE Eco community meetup [1] Cornelius reiterated the
point that free software is particularly well-positioned for
fulfilling the *user autonomy* criteria for Blauer Engel
eco-certification. Support for open standards, software transparency,
respect for user privacy … KDE/FOSS already meet the requirements of
these criteria!
Because our community may take for granted that free software respects
user autonomy, in some cases this information is missing from the
manuals, wikis, etc. So I thought I would write up a brief overview of
the user autonomy criteria, with a particular focus on easy-to-fill
documentation gaps.
Want to help? Let's fill out the documentation in cases when the
following information is missing, including, for instance:
• Which open data formats are supported?
• How does one uninstall an application?
• Can the application be used offline?
• Are ads displayed when using the software?
• And so on.
The KDE/FOSS community knows our software respects its users, now
let's make sure everyone else knows it too!
2 User Autonomy Criteria
════════════════════════
User autonomy (§ 3.1.3) is one of three main categories for obtaining
the Blauer Engel eco-label [2], the other two being resource &
energy efficiency and potential hardware operating life.
The user autonomy criteria cover 8 general areas:
1. Data formats (§ 3.1.3.1)
2. Transparency (§ 3.1.3.2)
3. Continuity of support (§ 3.1.3.3)
4. Uninstallability (§ 3.1.3.4)
5. Offline capability (§ 3.1.3.5)
6. Modularity (§ 3.1.3.6)
7. Freedom from advertising (§ 3.1.3.7)
8. Documentation (§ 3.1.3.8)
In the above, I have added section numbers from the award criteria in
parentheses for easy reference.
Note that this is not an exhaustive presentation of the Blauer Engel
criteria; rather, I want to focus on aspects of the criteria which we
can easily fill out in KDE/FOSS documentation.
2.1 Data Formats
────────────────
The main information to include in KDE/FOSS documentation:
• Which (open) data formats are supported (with links to
specifications, e.g., PDF:
https://www.iso.org/standard/51502.html)?
• Also potentially of interest: Are there examples of other software
products that process these data formats?
For an example of the online documentation of supported data formats
for Okular, see https://okular.kde.org/formats/.
For an example of documentation in a Blauer Engel application, see
https://invent.kde.org/cschumac/blue-angel-application/-/blob/master/
applications/okular/de-uz-215-eng-annex-4-okular.md.
2.2 Transparency of the software product
────────────────────────────────────────
When missing, links to documentation of the API, source code, and
license.
For the sake of example, for KMail:
• KDE PIM API documentation: https://api.kde.org/kdepim/index.html
• Source code: https://invent.kde.org/pim/kmail
• License: https://invent.kde.org/pim/kmail/-/blob/master/LICENSES
For an example of documentation in a Blauer Engel application, see
https://invent.kde.org/cschumac/blue-angel-application/-/blob/master/
applications/kmail/de-uz-215-eng-annex-5-kmail.md.
2.3 Continuity of support
─────────────────────────
Examples of details about continuity of support to add to
documentation:
• Information about how long the software has been supported for (with
links to release announcements)
• Release schedule and details (e.g., who maintains the software)
• Statement that updates are free of charge
• Declaration on how the free and open source software license enables
continuous support indefinitely
• Information about whether, and how, functional and security updates
may be installed separately
An example of Okular's continuity of support documentation for Blauer
Engel certification can be found in Section 3.1.3.3 here:
https://invent.kde.org/cschumac/blue-angel-application/-/blob/master/
applications/okular/de-uz-215-eng-annex-6-okular.md.
2.4 Uninstallability
────────────────────
How can one completely uninstall the software? Relevant details may
include:
• Uninstallation depends on how the software was installed (source
code or binary)
• Examples of uninstallation instructions (source code or package
managers, with relevant links to documentation)
• Information about whether user-generated data is also removed when
uninstalling a program
An example of Okular's uninstallability documentation for Blauer
Engel certification can be found in Section 3.1.3.4 here:
https://invent.kde.org/cschumac/blue-angel-application/-/blob/master/
applications/okular/de-uz-215-eng-annex-6-okular.md.
2.5 Offline capability
──────────────────────
This could be one of the easiest areas to document (alongside freedom
from advertising; see below): Does the software require external
connections such as a license server in order to run? If not, no
network connection is needed and the software is capable of offline
usage, and this should be documented.
An example of Okular's offline capability documentation for Blauer
Engel certification can be found in Section 3.1.3.5 here:
https://invent.kde.org/cschumac/blue-angel-application/-/blob/master/
applications/okular/de-uz-215-eng-annex-6-okular.md.
2.6 Modularity
──────────────
Information to document includes:
• What aspects of the software are modular and can be deactivated
during installation?
• For instance, can the software manuals or translations be installed
separately?
• Are any modules unrelated to the core functionality of the software
included with installation, such as tracking modules or cloud
integration? If not, let's document it!
An example of Okular's modularity documentation for Blauer Engel
certification can be found in Section 3.1.3.6 here:
https://invent.kde.org/cschumac/blue-angel-application/-/blob/master/
applications/okular/de-uz-215-eng-annex-6-okular.md.
2.7 Freedom from advertising
────────────────────────────
If the software does not display advertising, let's make this explicit
in our manuals and wikis.
2.8 Documentation
─────────────────
This includes the following:
• General process for installing/uninstalling the software? May
include generic instructions or tutorials for a specific desktop
environment or package manager.
• Data import/export process?
• What can users do to reduce the use of resources (e.g.,
configuration options for improving performance)?
• Does the software have any resource-intensive functionality not
necessary for the core functionality? If not, let's tell people!
• Licensing terms related to further development of the software
products, with links to source code and license?
• Who supports the development of the software?
• Does the software collect any personal data? Is is compliant with
existing data protection laws? If yes, document it!
• What is the privacy policy? Is there telemetry, and if yes, how does
the software handle data security, data collection, and data
transmission? Also, are there ads or tracking embedded in the
software? If not, excellent, now let everyone else know!
An example of Okular's product documentation for Blauer Engel
certification can be found in Section 3.1.3.8 here:
https://invent.kde.org/cschumac/blue-angel-application/-/blob/master/
applications/okular/de-uz-215-eng-annex-6-okular.md.
3 References
════════════
3.1 Blauer Engel Examples
───────────────────────────
Below are examples of Blauer Engel documentation for KMail and
Okular.
• Annex 4: Data Formats (Section 2.1)
⁃ https://invent.kde.org/cschumac/blue-angel-application/-/blob/master/
applications/kmail/de-uz-215-eng-annex-4-kmail.md
⁃ https://invent.kde.org/cschumac/blue-angel-application/-/blob/master/
applications/okular/de-uz-215-eng-annex-4-okular.md
• Annex 5: Open Standards (Transparency Section 2.2)
⁃ https://invent.kde.org/cschumac/blue-angel-application/-/blob/master/
applications/kmail/de-uz-215-eng-annex-5-kmail.md
⁃ https://invent.kde.org/cschumac/blue-angel-application/-/blob/master/
applications/okular/de-uz-215-eng-annex-5-okular.md
• Annex 6: Product Information (Sections 2.3–2.8)
⁃ https://invent.kde.org/cschumac/blue-angel-application/-/blob/master/
applications/kmail/de-uz-215-eng-annex-6-kmail.md
⁃ https://invent.kde.org/cschumac/blue-angel-application/-/blob/master/
applications/okular/de-uz-215-eng-annex-6-okular.md
• See also Annex 1
⁃ https://invent.kde.org/cschumac/blue-angel-application/-/blob/master/
applications/kmail/de-uz-215-eng-annex-1-kmail.docx
⁃ https://invent.kde.org/cschumac/blue-angel-application/-/blob/master/
applications/okular/de-uz-215-eng-annex-1-okular.docx
3.2 Links
─────────
[1] Minutes of the community meetup on 9 September 2021:
https://invent.kde.org/joseph/be4foss/-/blob/master/community-meetups/
2021-09-09_community-meetup_minutes.md
[2] See Section 3.1.3 in Resource and Energy-Efficient Software
Products 2020:
https://produktinfo.blauer-engel.de/uploads/criteriafile/en/DE-UZ%20215-202001-en-Criteria-2020-02-13.pdf
More information about the Kde-eco-discuss
mailing list