In 2008, the Free Software Foundation (FSF) created its list of high-priority projects that "are important for increasing the adoption and use of free software and free software operating systems."
However, the list has been neglected in recent years, to the extent that the page for projects that no longer need to be on the list includes nothing added in the last five years.
Consequently, the FSF is considering ways to reintroduce the list. In the process, it is revealing its own priorities, and how those have changed over the years -- sometimes with unexpected results.
The original list was intended to help "guide volunteers and supporters to projects where their skills can be utilized." Many items on the list were "replacement projects," designed to eliminate cases "where users feel it necessary to use nonfree software due to the lack of an adequate free replacement. In fact, at the top of the list is a sub-list of projects to be reversed engineered, such as video and wifi drivers. Overall, the general purpose of the original list was the eventual creation of a completely free operating system.
By contrast, the committee now reviewing the list has a different focus.
To start with, some projects that once seemed urgent are considered less urgent today. For example, while a free-licensed replacement for Google Earth seemed essential in 2008, in 2016, the committee reports that "it doesn't met any of our desired criteria." (In fact, KDE's Marble provided one as early as 2009, which makes me wonder why the FSF considers it unacceptable, but that's another issue).
Similarly, Gnash, a free-licensed replacement for Flash, seemed a major requirement in 2008. Now, in 2016, with Flash being gradually phased out in favor of HTML 5, technology has moved on, so Gnash no longer seems a necessity for a completely free desktop. Even though the transition to HTML 5 is incomplete, not installing Flash causes few inconveniences to the average user.
The committee also suggests a number of needed additions. An "implementation of advanced PDF features" is left over from the original list, but others reflect the rise of new technologies in the last eight years, including a replacement for Skype, and a personal assistant like Siri or Cortana.
However, a more significant sign of the times is the changing attitude to reverse engineering. In 2008, reverse engineering headed the list. By contrast, the current committee acknowledges that "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," adding, "and this is what users should demand." While not omitting reverse engineering, the committee wants to "reframe" this part of the high priority list to encourage advocacy aimed at the manufacturers.
More than anything else, this suggestion illustrates how the times have changed. In 2008, the assumption was that free software would need to do the work itself. Eight years later, though, free software – open source – is enough of a fixture in computing that the possibility of achieving the same goal through advocacy seems realistic to the committee. It is certainly easier, but to prefer one means to the end over another sounds more pedantic than practical, especially since the preference has no ethical basis.
Adding the Non-Technical
Probably the greatest shift in the revised list is that it no longer confines itself to the purely technical. Instead, the committee is open to the possibility of "something" that might improve communities or advocacy as well.
In addition to technology, the committee is now considering items that sound more like advocacy goals. These new items include services that help to decentralize the web, although the preliminary report rightly notes that "this is a large and fragmented space." Other possibilities include "free software adoption by government" and support for Outreachy "and other initiatives to help people from groups underrepresented in free software get involved."
All these non-technical goals deserve support, and having the FSF advocate them might help it regain influence and increase its relevance – goals I fully support.
The logic behind the suggestion is not stated, but it is clear enough. Making free software more welcoming potentially increases the number of volunteers, and no free software project ever has enough volunteers. There could even be the possibility that being more inclusive could improve the input into the design of free software, although that is not necessarily a given, any more than extending the vote to women resulted in better decisions during elections. It is enough that more participants in free software is just and expands its numbers.
As an aside, I also note -- with more than a little glee -- that the suggestion about supporting Outreachy immediately debunks the attempt by Eric S. Raymond and supporters to claim that so-called Social Justice Warriors are somehow natural enemies of free software hackers. After all, you can hardly get more hard core hackers than members of the Free Software Foundation, yet here it is considering emphasizing the importance of social advocacy.
All the same, I wonder whether these non-technical goals should be included in the high priority list. Perhaps they reflect the concerns of younger FSF supporters, but they risk making the high priority list more of a mission statement for the FSF than the practical To Do list that seems to have been the original intent of the high-priority list.
Yes, I would like to see the FSF assert its advocacy positions, and make connections with other social causes. If the FSF chooses to announce its long term goals, that is one thing. But I worry that mixing the abstract and the concrete runs the risk of most multi-tasking, resulting in two things being poorly done when they could be done better if considered separately.