A preliminary analysis of High Priority Projects feedback
This post was written by the FSF's volunteer High Priority Projects Committee.
The High Priority Projects review committee received about 150 feedback emails† in response to its call for suggestions for projects of strategic importance to the goal of freedom for all computer users.
Following is a preliminary analysis of the High Priority Projects list, based on the existing list, feedback received, the panel session held at LibrePlanet 2015, and discussions among the committee.
The call for suggestions summarized what we're aiming for:
Undoubtedly there are thousands of free software projects that are high priority, each having potential to displace nonfree programs for many users, substantially increasing the freedom of those users. But the potential value of a list of High Priority Free Software Projects maintained by the Free Software Foundation is its ability to bring attention to a relatively small number of projects of great strategic importance to the goal of freedom for all computer users.
What makes a project of great strategic importance to the goal of freedom for all computer users? In this analysis, we'll consider that it takes one or more of the following characteristics:
- Systematic. Something that has the potential to improve lots of free software programs, development, communities, advocacy -- making use of free software and participation in development and advocacy more compelling for many more people.
- Universal. Something that nearly every computer user needs, but for which there is no competitive free software in the category.
- Cascading. Something that will enable a large number of users to replace not only comparable proprietary software, but also break a logjam that makes it hard for users to adopt unrelated free software.
- Frontier. Enables users to be free at ever lower layers of software and down to hardware. Few users may be able to do this soon, but such frontier development ensures that the bar for eventual freedom for all users is not set too low.
Additionally, we will strive to recommend projects that are actionable. Such projects document ways for members of the free software community to get involved and make the project succeed, with any kind of concrete contributions, from money donation, to code patches, advocacy, etc.
Given this framework, here are some notes on projects that were on the list at the time of the call for suggestions, and on potential additions.
Currently listed projects
Reverse engineering projects. We haven't analyzed these in detail yet, but more broadly free drivers and free firmware (the goals of nearly all of the listed projects) have all four of our characteristics. Reverse engineering is one way to obtain free drivers and firmware, but the ideal is for manufacturers to publish full specifications and ship free drivers and free firmware, and this is what users should demand. We may want to reframe this page around free drivers, firmware, and hardware designs, noting priority reverse engineering tasks, but also encouraging users to make requests to vendors. The page also lists Replicant, a free version of Android. Phone operating systems were one of the most popular suggestions and merit their own entry (see potential additions below).
Coreboot. A free BIOS has at least the universal and frontier characteristics. Several people suggested adding "and Libreboot," the project to ship a version of Coreboot with no blobs, pushing further in the frontier direction. We intend to take this suggestion. We are also discussing whether to move this listing to the reframed page about free drivers, firmware, and hardware designs mentioned above.
Free software replacement for Skype. This is a nearly universal need, with potential for a cascade effect. Two changes were suggested. First, there are now several proprietary real-time voice and video communications applications that need to be replaced too, so the name of this priority should be changed to "free software real-time voice and video chat". The other suggestion was to point to WebRTC applications using only free software, as WebRTC is set to upset this category, but it is difficult to tell which applications are free. We'll take the title suggestion. The second suggestion might be best addressed with a dedicated category in the Free Software Directory.
Free software video editing software. Several people wrote to suggest that we narrow the list of programs suggested, as this is a field that is difficult to navigate and free software could use a "champion" to really make an impact. Clearly that champion is Blender, an amazing application which started in 3D animation, but now is used for video editing, 2D animation, and much more. We strongly encourage anyone interested to check out Blender, or one of the other programs if a simple video editor is one's main need. However, we intend to remove this listing. It just doesn't solidly meet any of our desired criteria.
Free Google Earth Replacement. We intend to remove this listing; it doesn't meet any of our desired criteria.
Help GNU/Linux distributions be committed to freedom. This solidly meets the frontier criteria.
GNU Octave. With acknowledgment that we received some feedback in support of this listing, we intend to remove it as it doesn't meet any of our desired criteria. (The FSF will continue providing fundraising support for GNU Octave.)
Replacement for OpenDWG libraries. We intend to remove this listing; it doesn't meet any of our desired criteria.
Reversible Debugging in GDB. rr meets some of the major needs of reversible debugging in GDB, so we intend to remove this listing.
Free software drivers for network routers. The text of this listing concerns mesh networking, which may be too narrow to satisfy our criteria. In general free drivers for network routers probably meet the universal and frontier criteria, but it may make sense to fold this listing into a listing/page concerning free drivers and firmware for a large category of hardware (see reverse engineering above).
Free software replacement for Oracle Forms. We intend to remove this listing; it doesn't meet any of our desired criteria.
Automatic transcription. We intend to remove this listing; it doesn't meet any of our desired criteria.
Free Software replacement for Bittorrent Sync. We intend to remove this listing; it doesn't meet any of our desired criteria.
Free software phone operating system. This is a nearly universal need, with some cascade and frontier characteristics as well, and the single most popular feedback suggestion. Clearly this topic should be represented as a high priority, the question is how to focus it. Replicant could be moved from the reverse engineering page. "Help phone operating systems be committed to freedom" could be noted.
Free software personal assistant. Siri, Google Now, Cortana, and others are becoming more pervasive on smart phones. The convenience they offer makes people's lives easier. At the same time, the breadth of access to users' data they take in order to provide all this is enormous, and both the client and server software accessing such data are proprietary. We believe a free software personal assistant is crucial to preserve users' control over their technology and data while still giving them the benefits such software clearly has for many. Sirius could be the right project to focus on.
Decentralization of the Web, service federations, and personal clouds. Several projects in these macro categories were suggested, collectively contributing to the 3rd most popular feedback suggestion. Depending on the project, up to all four of our criteria could be met. This is a large and fragmented space, so we're thinking about how the list could usefully focus attention.
Outreachy. This and other initiatives to help "people from groups underrepresented in free software get involved" solidly meets our systematic and cascading criteria, so we intend to add it.
Improving accessibility, internationalization, and security. These very different topics are linked in their potential for systematic impact, and their ethical import -- does a user really control their own computing if they cannot use appropriate interfaces, their first language, or if their computer is spying on them or can be pwned at any moment? We'd like to add these to the list, together or separately, but probably need a link for each that provides guidance on how to get involved effectively.
Free software adoption by government. There have been some successful efforts in this regard, particularly in Europe. The cascade effect is potentially very large, given that government is overall the largest employer, and everyone interacts with government in various ways -- a popular suggestion was for free tax software. Demanding that government not be held hostage to proprietary software is also an activity that every citizen can and should do. We're inclined to add this to the list, particularly if there is a single link that can guide people all over the world toward resources for acting.
Let's continue the conversation: you can reach the committee at firstname.lastname@example.org.
†We'd like to especially thank the following people who let us know they had published their suggestions to the committee: Antoine Amarilli, Kathryn Bukovi, Dave Crossland, Denver Gingerich, Federico Leva (1, 2), David Seaward, and Christopher Allan Webber.