By Thomas Grzybowski, derived from towards-super-free-software, by figos
Summary: "Software text has long been recognized as “speech”, and is covered under the very same copyright laws as conventional printed matter."
The notion of Free Software is a direct descendant from ideals of freedom of speech, formulated during the historical period termed “The Enlightenment” - ideals which were further developed during the period of the American Revolution and the French Revolutions. The individual and social value of “Free Speech” has become essentially iconified in the US, while perversely, the ideals of Free Software have not inherited this status.
Software text has long been recognized as “speech”, and is covered under the very same copyright laws as conventional printed matter. “Free as in Free Speech” is attributed to Richard Stallman as his essential description of Free Software. Also significantly, famed computer programming guru Donald Knuth went as far as to actively advocate for “Literate Programming”, where the main intention is to treat a program as literature understandable to any interested person who should pick it up for study.
Confusion concerning the recognition of computer programs as speech began just around 1997, just as Free Software was becoming popular and just before the foundation of the “Open Source” movement. The misdirection underlying the ideas behind Open Source are described
here. Software, instead of being recognized as a mode of human expression, was classified as a type of “property” - which is a very different kind of thing.
Now, if computer programs are speech, an activity, we all have a Right to express ourselves in this way, and to share these expressions with others. Sadly, the Free Software movement has lately become shy about taking this notion where it should lead. Software, once it is viewed in all seriousness as a kind of Free Speech, the expression and use of software becomes seen as a cultural entity and as an art. Participation becomes part of our proper rights as human beings.
So, how do we advance a human right where the view appears to be faltering? We know that Free Software has a specific definition, and we know we are after something of a subset from that definition. And we know we want the result to be hopefully greater than what we see today – Super-Free (or SuperFree) software!
So, the idea of a SuperFree Software is indeed something of a paradox: by further defining what it is that makes software more free to more people (this refinement being in practice a subset within “Free Software”) we hope to arrive at something greater. The simple idea which promotes the Superfree subset of Free Software higher is this: SuperFree Software is Free Software which works better to promote more freedom.
SuperFree Software can be viewed as an art, with serious intent. As an art, certain practices or disciplines will advance the art such that participation in software freedom becomes more actual to more people. Again paradoxically, less is often more:
#1. SuperFree applications (and systems) must be modular, as simple as possible, and open in design. Transparency to any interested party is paramount. If we don’t want a feature, we should be able to safely delete that component, and the program will function as designed – minus the component. If we modify a component, only that component should be affected. Unnecessary and opaque dependencies are a bug.
#2. The replacement of understandable code with binary blobs is a severe bug. Blobs do not represent "modularity", they implement developer takeover and are obviously a place to hide security flaws. Blobs negate the basis of Free Software as Free Speech, preventing other people from interacting confidently with code.
#3. SuperFree Software should be developed with “ease of forking” as a design goal. Freedom means you can fork: understand, modify, and share code. We must forget about personally or organizationally “owning” our software, because the “Free” in Free Software becomes a reality primarily in the sharing. And note that this is not just a moral standpoint: You and I, we WANT software to be Free, in practicality, and thus we have to make it so.
#4. SuperFree Software should teach people how to create software, not just how to use it. Training people only to use applications is to train them to be consumers, and nothing more.
#5. SuperFree Software should actively distance itself from corporate funding. Corporations are not going to stop trying to control software - because they make money from software by making it less free. We will always need to keep our mission at some far distance from them. People will argue that it’ll become much more difficult to develop significant software without corporate support - but what is more true is that it will become possible to develop SuperFree Software without the dependency (and strings) that their money brings.
#6. SuperFree Software should promote itself as a cultural endeavor and as an example for other areas of culture to emulate. Free books, Free Music, Free Culture – these things are readily possible. Synergies of efforts, laws, and productive creativity abound!
If we can produce software as described above, it will take software freedom to another level entirely-- where software “freedom” is NOT dictated by corporations or corporate-captured non-profits. With SuperFree Software as a flexible grassroots movement, people will freely join, leave, fork projects as they please. Software freedom will engage with more people, and SuperFree Software will become the visible, vibrant, significant cultural entity that it was always destined to be.
⬆
License:
Creative Commons Attribution-Share Alike 4.0 International (CC BY-SA 4.0)