paritybit.ca

Unnamed repository; edit this file 'description' to name the repository.
Log | Files | Refs | README | LICENSE

commit 592e82ca402d6cb64b43ef01c6f782d2739c4526
parent c3399767d6e244e9311378510254c15153f112c9
Author: Jake Bauer <jbauer@paritybit.ca>
Date:   Mon,  8 Nov 2021 03:02:33 -0500

Draft of latest blog post

Diffstat:
Mpages/blog/free-software-is-an-abject-failure.md | 529+++++++++++++++++++++++++++++++++++++++++++++++++------------------------------
1 file changed, 332 insertions(+), 197 deletions(-)

diff --git a/pages/blog/free-software-is-an-abject-failure.md b/pages/blog/free-software-is-an-abject-failure.md @@ -19,9 +19,9 @@ Richard Stallman. I have since started to think more about the real effects of the Free Software movement and have changed the way I write and license my software as a result. I implore you to genuinely consider what I write in this post and to approach it with an open mind. I understand that your knee-jerk -reaction will likely be to reject what I am saying as anti-freedom or -pro-corporation but that is not the case. I simply no longer believe in the Free -Software movement.</p> +reaction may be to reject what I am saying as anti-freedom or pro-corporation +but that is not the case. I simply no longer believe in the Free Software +movement.</p> Free Software is an abject failure. It may sound like a good concept on its face—especially with the kind of language often used to describe the movement @@ -34,62 +34,69 @@ thriving software ecosystem. ### The Failure of the Free Software Ideology -First, let's analyze the ideology of the Free Software movement and show how -the philosophy of the Free Software Foundation and GNU are based upon the same -premises as proprietary software. - [Why Software Should Be Free](https://archive.md/ORsof) by Richard Stallman -presents an argument against having owners of software, and explains the harm +presents an argument against having owners of software and explains the harm done by obstructing software development through proprietary licensing. It posits that software with obstructions results in fewer users, the inability for users to fix programs, and the inability of developers to build upon prior -knowledge or work. - -He argues that the justifications one uses for keeping ownership of the software -(which he equates with keeping the software proprietary) are emotional (i.e. -"This software is mine, and I wish to control it") and economical (i.e. "I wish -to become wealthy by programming."). He shuns these excuses and spends the rest -of the document refuting why those excuses and the existence of proprietary -software are bad, and why the alternative—software not having owners—is better. - -The [GNU Manifesto](https://archive.md/V14pR), aside from calling the Open -Source movement an "amoral approach", goes on to say that GNU "is not in the -public domain" and will have restrictions placed on further modifications (in -the form of disallowing proprietary modifications), with the justification that: -"I want to make sure that all versions of GNU remain free." - -With that, Richard Stallman falls upon the same behaviour that he previously -shunned in _Why Software Should Be Free_. He uses the emotional argument of "_I_ -want...", effectively saying "this is _my_ creation, and I wish to control what -others can do with it". +knowledge or work. He also states that the justifications one uses for keeping +ownership of the software (which he equates with keeping the software +proprietary) are emotional (i.e. "This software is mine, and I wish to control +it") and economical (i.e. "I wish to become wealthy by programming."). He shuns +these excuses and spends the rest of the document refuting those excuses and +explaining why the existence of proprietary software is bad and why the +alternative—software not having owners—is better. + +However, in nearly every Free Software project which exists today, there is a +clear "owner" of the software—someone who is the copyright holder, benevolent +dictator for life, or simply _de facto_ leader of the project and through whom +all contributions must flow. Whether we're talking about large projects too +large to fork and maintain by anybody but a massive corporation such as the +Linux Kernel (in which Linus still has complete veto power by the way), Qt (in +which the company controls the development of the software and simply allows +older versions to be used under a free license), or smaller projects which have +simple leaders. As long as there is a "Copyright YYYY" statement, there are one +or more owners to be aware of. + +Additionally, the [GNU Manifesto](https://archive.md/V14pR), aside from calling +the Open Source movement an "amoral approach", goes on to say that GNU "is not +in the public domain" and will have restrictions placed on further modifications +(in the form of disallowing proprietary modifications), with the justification +given by Stallman being: "I want to make sure that all versions of GNU remain +free." With that, Stallman falls upon the same behaviour that he previously +shunned in _Why Software Should Be Free_. He uses his emotional attachment to +the software, something he said was an excuse to defend why software has +ownership, to justify his actions. He is effectively saying "this is _my_ +creation, and I wish to control what others can do with it" as well as clearly +assigning an owner to the software. + +If software is not in the public domain, then, by definition, it has to have at +least one other owner. If Stallman can dictate how others can use his +software—even if it is more freely than most proprietary software—then it +clearly has an owner. Simply put, Stallman uses the exact structures which he criticized as -justification for his actions. The GPL uses copyright to enforce its position, -uses existing systems in "the right" way yet criticizing the way others use it -as wrong. As long as you, as a developer, do everything within the framework of -the GPL, you are ethical and good. As soon as you wish to do something outside -of this domain, even by using a more open, permissive license, you are -considered unethical. In this sense, Free Software can be considered harmful to -a thriving software ecosystem. - -Another very common sight in the Free Software community is to see accusations -of "software theft" and "hostile forks" among other terms. If software is not -supposed to have an owner, as _Why Software Should Be Free_ advocates, what -exactly is being stolen? Why do _you_ as the creator of a piece of software care -if some company takes your software and uses it in their product or makes -proprietary modifications with it? Even more, why do members of the Free -Software community [shun and criticise a group of -developers](https://web.archive.org/web/20211021085708/https://news.ycombinator.com/item?id=17007834) -forking a Free Software project to extend it for their own needs while -_still keeping it under the same license_ (an Open Source license, no -less)? _Why Software Should Be Free_ specifically outs this need to -control what happens with one's software as one of the main -justifications for proprietary licensing +justification for his actions. He uses these existing systems in what he clearly +deems is the "right" way and yet criticizes the way others use it as wrong. GNU, +the GPL, and seemingly the entirety of Free Software as it stands today are all +based on at least one of the same premises upon which Stallman says proprietary +software is also based. To be frank, the Free Software movement comes off as both a "cult of personality"—worshipping Richard Stallman and his teachings, as well as a "cult of ideology"—shunning those who disagree with the manifestos and the "way of -life" that the movement espouses to an extreme degree. +life" that the movement espouses to an extreme degree. As long as you, as a +developer, do everything within the framework of the GPL, you are ethical and +good. As soon as you wish to do something outside of this domain, even by using +a more open, permissive license, you are considered unethical. + +In an article where [Linus Torvalds criticizes the +GPLv3](https://web.archive.org/web/20211108043329/https://www.linux.com/news/why-torvalds-sitting-out-gplv3-process/), +he even says: + +> "I think the GPLv3 is expressly designed to not allow [the meeting between +> open source and free software people]. Exactly because the FSF considers us +> open source people 'heretics.'" ### The Failure of the GPL @@ -100,35 +107,66 @@ One of the stated goals written in the GNU Manifesto is: One look at the GPL will tell you that they have utterly failed at this. The GPL, especially with version 3, has become so complicated that only a programmer -with relatively advanced legal knowledge and ability to read "legalese" will be -able to decipher it to understand what they are able and unable to do with it. -There do exist websites which explain the license in plain English, but even -those say their explanations are no substitute for reading the license. +with relatively advanced legal knowledge and ability to read _and properly +understand_ "legalese" will be able to decipher it to know what they are able +and unable to do with it. There exist websites which explain the license in +plain English, but even those say their explanations are no substitute for +reading the license. This is because of the very specific meaning that many of +the words in the license take on when put in the context of our modern legal +system. So, while you may be able to read the GPL and _think_ that you +understand it, unless you are well-educated in "legalese", you probably don't +fully understand the true meaning and effect that the words of the license would +_actually_ have in court. Furthermore, the ramifications of the GPL are still not fully understood by even lawyers themselves. Many large companies will shy away from the GPL simply because they don't want to take the risk of using GPL-licensed code improperly and being forced to reveal their proprietary software. While I don't agree with -proprietary software as a concept, the fact that even lawyers are uneasy about -the terms of the license further reinforces the failure of GNU and the FSF. - -And even more, because the development of the GPL is reactionary—that is to say, -it's development and growth over time was in response to workarounds—there is -now the extra complication of the "-or-later/only" clauses. This is a license -which has multiple versions which are **not** backwards compatible. A project -licensed under the GPLv2-only cannot integrate GPLv3-or-later code without -re-licensing themselves as GPLv3. The Linux kernel is an excellent example of -this. - -And _even even_ more, the existence of an "-or-later" clause is a ridiculous -thing to attach to a license. Anybody who licenses their project under a -GPLv3-or-later license puts a lot of trust in the stewards of the GPL that the -next version of the GPL will align with their values and goals; a -GPLv3-or-later project will be able to be licensed under a GPLv4 license -whatever the clauses of that GPLv4 license. - -Simply put, the reality of the GPL is that there is now a lot of overhead for -developers. +proprietary software as a concept, the fact that even lawyers—who are supposed +to be expertly trained in the kind of language used in the license—are uneasy +about its terms further reinforces just how unapproachable it is to the everyday +software developer. GNU and the GPL have done nothing to remove the overhead of +considering who owns software. + +Further contributing to the overhead imposed by the GPL, since the development +of the GPL is reactionary—that is to say, it's development and growth over time +was in response to discovered workarounds—there is now the extra complication of +the "-or-later/only" clauses. This is a license which has multiple versions +which are **not** backwards compatible. A project licensed under the GPLv2-only +cannot integrate GPLv3-or-later code without being re-licensed as GPLv3. The +Linux kernel is an excellent example of this. + +Linus Torvalds even [came out strongly against the +GPLv3](https://web.archive.org/web/20211108043329/https://www.linux.com/news/why-torvalds-sitting-out-gplv3-process/) +and the process by which the FSF created the license. Many others in the +industry also saw this as an extreme and unnecessary move by the FSF to wield +the ultimate power over the GPLv3; all because a manufacturer put Linux in their +products and blocked users from running their own modified software on that +hardware which, by the way, had absolutely nothing to do with the Linux kernel +itself since the bootloader is the software that would stop users from running +some other software. This lead to people thinking that this was basically an +excuse to expand the scope and powers of the GPL over what could be seen as +something completely out of the scope of the GPL-licensed software. The move by +the FSF, the actions of Stallman, and the "tivoization" rhetoric are even +[heavily criticized by Software Freedom Conservancy member Bradley M. +Kuhn](https://web.archive.org/web/20211020102058/https://sfconservancy.org/blog/2021/jul/23/tivoization-and-the-gpl-right-to-install/). + +Putting aside the political manoeuvrings of the FSF, the mere existence of an +"-or-later" clause is a ridiculous thing to attach to a license. Anybody who +licenses their project under a GPLv3-or-later license puts a lot of trust in the +stewards of the GPL that the next version of the GPL will align with their +values and goals; a GPLv3-or-later project will be able to be licensed under a +GPLv4 license whatever the clauses of that GPLv4 license. This is a lot of stock +to put into a group of people like the FSF who were so dogmatic and exclusionary +in their development of the GPLv3. + +The reality of the GPL is that there is still a lot of overhead in considering +who owns the software. Not only in whether or not a developer should choose +version 2 or version 3 of the license depending on their goals, but also for +developers and users alike who try to understand the language of the license to +determine what they can do with the software and, if they are integrating some +GPL-licensed code into their own product, who actually owns and has copyright +over that software. Those who wish to integrate GPL-licensed code into their otherwise non-GPL-licensed projects are faced with the decision to relicense their code @@ -138,108 +176,169 @@ license, or otherwise abandon those efforts altogether. While the GPL may it into a proprietary product, it also prevents literally any other non-GPL-licensed project from using GPL-licensed code, even other FOSS projects. -And, it's not like the GPL actually prevents corporations from stealing +Even so, it's not like the GPL actually prevents corporations from stealing GPL-licensed code and integrating it into projects. While there are plenty of -corporations who freely comply with the GPL (and should be applauded for being -honest), there are plenty more, such as VMWare, who don't comply and yet [don't -face -consequences](https://web.archive.org/web/20211027160559/https://sfconservancy.org/news/2019/apr/02/vmware-no-appeal/) -or, even if a lawsuit is successful, it is usually at the cost of [members of -the FOSS community](https://archive.is/lspvL) who burn out or are left -disenchanted by the whole process. - -The moral of the story is: while the GPL may not cause as much of an obstruction -or be as unethical as proprietary software, it is frankly not that much better. -It causes, conflict, is difficult for laypeople to understand, and harms -developers of non-GPL-licensed FOSS software. It is the reason why the BSDs -cannot take improvements made in the Linux kernel and directly integrate them -into their own kernels and [it is the reason why ZFS cannot be integrated into -the Linux kernel](https://itsfoss.com/linus-torvalds-zfs/), but can be shipped -with FreeBSD, to name two significant examples. +corporations who freely comply with the GPL, there are plenty more, such as +VMWare, who don't comply and yet [don't face +consequences](https://web.archive.org/web/20211027160559/https://sfconservancy.org/news/2019/apr/02/vmware-no-appeal/). +Even if a lawsuit is successful, it is usually at the cost of [members of the +FOSS community](https://archive.is/lspvL) who burn out or are left disenchanted +by the whole process. Being GPL-licensed also doesn't prevent a project from +being bought and therefore having all control handed over to a corporation. This +was most recently seen in the [acquisition of Audacity by Muse +Group](https://mu.se/newsroom/tpost/6dhedma301-muse-group-acquires-audacity-expanding-c) +in which Muse Group bought the rights to the audacity code and project. (Note +that if software actually didn't have owners, this could not happen.) Users have +since forked the project, but this doesn't necessarily stop something like this +from happening in the future, and certainly doesn't stop it from happening to +other projects. The GPL-family of licenses attempt to solve a societal problem by restricting the distribution of software in a manner not unlike the so-called [Ethical Software](https://en.wikipedia.org/wiki/Organization_for_Ethical_Source) -movement does. One cannot solve the copyright, ownership, or distribution -problem of software by maintaining such systems. This is a problem to solve on a -societal level, not on the level of individuals software projects. This simply -restricts innovation, sharing, and collaboration between developers. +movement does. The GPL acts effectively as a proprietary license that allows you +to the things it deems ethical, so long as you abide by the terms of the license +with regards to the distribution and re-licensing restrictions. As long as you +are in this "club", everything is fine and dandy and you can make your changes +and push them to your favourite projects. As soon as you leave this club and +want to pull code from a GPL-licensed project into your MIT-licensed project, +well, sorry, too bad for you. + +While the GPL may not cause as much of an obstruction or be as unethical as +proprietary software, it is frankly not that much better. It causes distress and +conflict in the software community, is difficult for non-lawyers to fully +understand, and harms developers of non-GPL-licensed FOSS software. It is, for +example, the reason why the BSDs cannot take improvements made in the Linux +kernel and directly integrate them into their own kernels and [it is the reason +why ZFS cannot be integrated into the Linux +kernel](https://web.archive.org/web/20211026123333/https://itsfoss.com/linus-torvalds-zfs/), +but can be shipped with FreeBSD. + +For all this talk of Free Software being the ethical option and the GPL being +the ultimate defender of user and developer rights, it completely goes against +the ethical principles laid out in _Why Software Should Be Free_. So much for "free as in freedom". ### The Failure of the Free Software Culture -The GNU Manifesto speaks a lot about how +The GNU Manifesto speaks a lot about how: > "Users will no longer be at the mercy of one programmer or company which owns > the sources and is in sole position to make changes." But a cursory look at the current landscape of so-called Free Software will tell -you that this is simply not the case _at all_. Users are absolutely at the mercy -of the maintainers of software projects to integrate their changes because of -the current model of software development. - -Our current model of software development actively _discourages_ forking -projects to mold software into something that fits your needs. It does this not -only through the public outcry and abuse levied at those who fork projects not -meeting their needs (see the previously mentioned example of Gitea and [this -article that perfectly exemplifies how the Free Software culture views -forking](https://www.techrepublic.com/blog/linux-and-open-source/dont-fear-the-fork-how-dvcs-aids-open-source-development/)), -but the sheer size of most major software projects makes forking and actively -maintaining such a piece of software an utter nightmare. - -In nearly every Free Software project, there is a clear "owner" of the -software—someone who is the copyright holder, benevolent dictator for life, or -simply _de facto_ leader of the project and to whom all contributions must flow -through. - -Whether we're talking about large projects too large to fork and maintain by -anybody but a massive corporation such as the Linux Kernel, in which -Linus still has complete veto power, or Qt, in which the company controls the -development of the software and simply allows older versions to be used under a -free license, or smaller projects which have leaders. +you that this is simply not the case _at all_. + +Users are absolutely at the mercy of the maintainers of software projects to +integrate their changes in the current landscape of software development, +especially with software projects as complicated as a many of the popular GUI +toolkits, kernels, or desktop environments. In fact, Free Software project issue +boards and forums are, in reality, not much better than corporate support +forums. Often when one opens an issue in a large software project it can take +months or even years for those issues to be worked out. It's also not uncommon +for those issues to simply go unsolved for many years. A great example of this +is the ['Add an "icon view with thumbnails" mode' GNOME +issue](https://web.archive.org/web/20210111165221/https://bugzilla.gnome.org/show_bug.cgi?id=141154&) +which was opened in 2004 (it's almost old enough to vote!) and is still +not actually fixed despite many users saying how useful it would be to +have this feature. + +Users simply cannot maintain such complex software on their own and, if they +have limited programming ability, cannot be expected fork a project, make their +fix, test their fix, act on feedback from the maintainers (if they're lucky +enough to get their patch or pull request noticed), and so on. The current +software development ecosystem makes this impossible, regardless of the license +of the project. Software is not yet simple enough for that and GNU and Free +Software did nothing to solve this. In fact, it can be argued that they made +this worse by contributing to the creation of a culture of "elitists" who expect +all the users of their software to have the ability to read code and very +technical discussions or documentation in order to understand problems. + +If an experienced user does come along and is dis-satisfied with their corporate +support forum-like experience, they might be inclined to fork the project. +However another very common sight in the Free Software community is to see +accusations towards groups or companies who fork projects of making "hostile +forks" or committing "theft" of Free Software. For example, Members of the Free +Software community [shunned and criticized a group of +developers](https://web.archive.org/web/20211021085708/https://news.ycombinator.com/item?id=17007834) +forking a Free Software project to extend it for their own needs because of an +unresponsive maintainer while still keeping it under the _same_ license (a +so-called "unethical" Open Source license, no less). + +If software is not supposed to have an owner, as _Why Software Should Be Free_ +advocates, what exactly is being stolen? Why do they, as the creator of some +piece of software, care if some company takes it software and uses it in their +product or makes proprietary modifications with it? _Why Software Should Be +Free_ specifically outs this need to control what happens with one's software as +one of the main justifications for proprietary licensing and something to be +avoided, yet it is seen everywhere in the Free Software culture. In fact, an +article entitled _[Don't fear the fork: How DVCS aids open source +development](https://web.archive.org/web/20201112014255/https://www.techrepublic.com/blog/linux-and-open-source/dont-fear-the-fork-how-dvcs-aids-open-source-development/)_ +perfectly exemplifies how the Free Software culture views forks (of course, it's +written from the perspective of the so-called "unethical" Open Source software). The goal of Free Software as laid out by _Why Software Should Be Free_ was to create a world in which there were no owners of software and in which distribution was not restricted. Yet, despite this, the GPL family of licenses -and the culture of Free Software actively encourage both of those things. The -GPL places strict restrictions on the distribution of GPL-licensed software, and -that plus the culture surrounding Free Software encourage ownership of the -software by the copyright holders. - -From the point of view of _Why Software Should Be Free_, the GPL, combined with -this culture, is hardly much better than the world of proprietary software we -had before. _Why Software Should Be Free_ calls out ownership of software and -the restriction of distribution as unethical and harmful, yet Free Software -encourages both of these. - -The GPL acts effectively as a proprietary license that allows you to the things -it deems ethical, so long as you abide by the terms of the license with regards -to the distribution and re-licensing restrictions. As long as you are in this -"club", everything is fine and dandy and you can make your changes and push them -to your favourite projects. As soon as you leave this club and want to pull code -from a GPL-licensed project into your MIT-licensed project, well, sorry, too bad -for you. So much for "free as in freedom". - -For all this talk of Free Software being the ethical option and the GPL being -the ultimate defender of user and developer rights, it completely goes against -the ethical principles laid out in _Why Software Should Be Free_. - -### The Way Free Software Is Viewed - -Frankly, Free Software is often viewed as a farce outside of the dedicated Free -Software fanbase. The FSF has been slowly descending into irrelevancy for the -past two decades as they struggle to do anything meaningful with their time and -resources, and instead favour making a lot of unproductive noise. Take, as -recent examples, how they [mailed a hard drive to Microsoft telling them to put -the Windows 7 source code on +and the culture of Free Software actively _encourage_ both of those things and +actively _discourage_ forking software and modifying it to suit your own needs. +The GPL places strict restrictions on the distribution of GPL-licensed software +and that, plus the culture surrounding Free Software, encourage this structure +of ownership and copyright over the software by the copyright holders. From the +point of view of _Why Software Should Be Free_, the GPL combined with this +culture is, in reality, hardly much better than the world of proprietary +software we had before. + +### The Failure of Free Software to Remain Relevant + +Free Software and the surrounding culture and institutions are often viewed as a +farce outside of the dedicated Free Software ~~cult~~ community. The FSF has +been slowly descending into irrelevancy for the past two decades as they +struggle to do anything meaningful with their time and resources; instead +favouring to make a lot of unproductive noise. Take, as recent examples, how +they [mailed a hard drive to Microsoft telling them to put the Windows 7 source +code on it](https://web.archive.org/web/20210605120216/https://www.fsf.org/blogs/community/why-freeing-windows-7-opens-doors), or how they [accuse Apple of "censoring free software"](https://web.archive.org/web/20211011152025/https://www.fsf.org/campaigns/apple) -simply because Apple refuses to allow GPL-licensed projects on their app -store—ignoring the plenty of other "free software" available there—and +—despite the fact that Apple isn't actually censoring anything and plenty of +Free Software projects such as [Telegram](https://telegram.org/apps#source-code) +are [on the App +Store](https://apps.apple.com/us/app/telegram-messenger/id686449807)—and also criticizing them for not supporting their specific chosen free media codecs—once again, ignoring the plenty of other free media codecs which are otherwise perfectly supported. +To expand on that last point about Free Software projects on the App Store, the +[Apple App Store +EULA](https://web.archive.org/web/20211102184229/https://www.apple.com/legal/internet-services/itunes/dev/stdeula/) +contains restrictions that the GPL doesn't allow (see section 10 of the GPLv3 +and section 6 of the GPLv2). It says: + +> Except as provided in the Usage Rules, you may not distribute or make the +> Licensed Application available over a network where it could be used by +> multiple devices at the same time. You may not transfer, redistribute or +> sublicense the Licensed Application [...] You may not copy (except as +> permitted by this license and the Usage Rules), reverse-engineer, disassemble, +> attempt to derive the source code of, modify, or create derivative works of +> the Licensed Application, any updates, or any part thereof... + +Note that this only applies to the application you purchased in the App store, +as bundled by the App Store. It doesn't prevent you from going to GitHub and +modifying the software there, only modifying the software you got from the Apple +App Store. Sure, this isn't a good thing and it can be easily argued that this +is unethical because you don't ever own the apps you purchase, however, it is +hardly "censoring free software" given that, as the owner of a Free Software +project, you can freely submit GPL-licensed software to the App Store and Apple +assumes you have the rights to provide Apple with a non-GPL-licensed build. If +you don't have that ability because you don't own exclusive rights to the +software and it's not feasible for you to get the permission of every +contributor with their name attached to the project, well, that's not Apple's +problem. The FSF words their article like Apple is attacking them when, in +reality, Apple doesn't care what license you've chosen, only that you grant them +the ability to distribute your app under the terms of their EULA. The wording in +that blog post is yet another example of how the FSF are behaving like utter +clowns and why they are seen as a farce. They should know better. + This reputation of preferring ideological book-thumping over meaningful action is nothing new. Most who are familiar with Linux are likely familiar with Richard Stallman's ["GNU+Linux" @@ -263,34 +362,42 @@ existed_. Speaking of fading into irrelevancy, many of the Free Software institutions such as the Software Freedom Conservancy and Free Software Foundation Europe have -been reliant on such lawsuits as their means to exist. It has gotten so bad that -[the SFC have tried to bring lawsuits on behalf of the users of GPL -software](https://lwn.net/Articles/873415/). This is something which has little -basis in actual copyright law, but is the only option they have left when +been reliant on GPL violation lawsuits as pretty much their sole means to exist. +It has gotten so bad that [the SFC have tried to bring lawsuits on behalf of the +users of GPL software](https://lwn.net/Articles/873415/); something which has +little basis in actual copyright law, but is the only option they have left when companies either skillfully hide their GPL violations or the owners of GPL -software are unwilling to enforce their license against large opponents. - -Outside of the cult of Free Software, GNU code has a reputation of being -resource-hungry, buggy, bloated, or annoying and frustrating to work with, as -many who use alternative libc's, compilers, utilities, or programs will attest. -GNU creations have a reputation for being needlessly complex; solving problems -which don't really exist in the first place if you write good software. The GNU -Info system is a good example of this. +software are unwilling to enforce their license against large opponents. No +wonder these institutions also tend to only go after small opponents from which +they can easily make money. Even very public [violations such as those committed +by +OnePlus](https://web.archive.org/web/20211108073317/https://github.com/OnePlusOSS/android_kernel_oneplus_sm8150/issues/13) +have still gone unanswered for. If such violations are clearly allowed to +continue, what use even are these institutions? What use is the GPL? + +Regarding the quality of GNU software, outside of the ~~cult~~ community of Free +Software, GNU code has a reputation of being resource-hungry, buggy, bloated, or +annoying and frustrating to work with, as many who use alternative libc's, +compilers, utilities, or programs will attest. GNU creations have a reputation +for being needlessly complex—solving problems which don't really exist in the +first place if you write good software (or documentation)—and having +obtuse source code. The GNU Info system and the code found in many of +the coreutils are good examples of this. And finally, we can talk about how the conduct of Richard Stallman himself reflects on the whole Free Software movement. The Free Software movement went through its own little "constitutional crisis" over the question of whether or not to keep him on as the face of Free Software after he made some comments on -an MIT mailing list about a sensitive topic. I won't talk much about that -situation specifically here, since it has been covered to death in other media -outlets and can be easily searched for. Instead, I will give another example of -the utterly inept and arrogant conduct of the creator and face of the Free -Software movement. +an MIT mailing list about a sensitive topic. I won't go into specifics about +that situation here, since it has been covered to death in other media outlets +and can be easily searched for (search "stallman mit mailing list"), but suffice +to say Stallman acted in a completely unprofessional and inept manner. In fact, +that is far from the only example of him behaving in such a way. In 2007, Stallman sent [a message to the OpenBSD-misc mailing list](https://marc.info/?l=openbsd-misc&m=119730630513821&w=2) entitled _"Real men don't attack straw men"_ in which he accuses the OpenBSD folk of making -straw-man arguments about Stallman, and then using those arguments to attack his +straw-man arguments about himself, and then using those arguments to attack his credibility. If you read through this mailing list thread, you don't have to go far to realize that Stallman has absolutely no clue what he's talking about. He bases his opinion of OpenBSD on "what I have heard" and presumes that the @@ -298,30 +405,42 @@ OpenBSD folk care whether or not he recommends their system. He proceeds to have everything he said get taken apart by the replies which point out all the inconsistencies in his own arguments and stances. -### Where Do We Go From Here +After seeing just how ineffective this culture is at advocating for and +enforcing its principles in a meaningful way, as well as seeing the conduct of +one of its top-most members, how could anyone view this as a movement to be +appreciated, let alone joined and celebrated? + +### Where Do We Go From Here? I think, by now, it is accurate to say that Free Software is an abject failure. It has failed at its stated goals through both the licenses and the culture it has created and has instead perpetuated the paradigm of software ownership and -the use of unethical and flawed copyright legislation, and has done very little +the use of unethical and flawed copyright legislation. It has done very little to prevent corporate takeover of projects, improve the software development -landscape, or make the lives of developers easier. It has done nothing that more -ethical, permissive software licenses and the culture of collaboration born out -of projects such as BSD Unix didn't already do, except create a toxic subculture -of Free Software cult worshippers. +landscape, or make the lives of developers or users easier. It has done nothing +that more ethical, permissive software licenses and the culture of collaboration +born out of projects such as BSD Unix didn't already do, except create a toxic +subculture of Free Software cult worshippers. + +One cannot solve the copyright, ownership, or distribution problem of software +through playing into the exact same flawed systems that allow such problems to +exist in the first place. This is a problem to solve on a societal level, not on +the level of individual software projects through an obtuse license. It has the +very real effect of restricting innovation, sharing, and collaboration between +developers. None of this is to say that proprietary licenses are okay or even that Open Source is the alternative. In fact, the Open Source Initiative is not all that much better than the Free Software Foundation, it just has a mostly different set of problems which are out of scope for this essay. -For the most part, I agree with _Why Software Should Be Free_. I mainly agree -with Stallman's points that software should not have owners and that restricting -software distribution is unethical. He has perfectly valid and good ideas in -that essay, yet misses the mark with their implementation. I believe that -software shouldn't have owners. Nobody should get to control how their software -is used, distributed, hacked upon, or changed. +For the most part, I agree with _Why Software Should Be Free_. He has perfectly +valid and good ideas in that essay, yet misses the mark with their +implementation. I mainly agree with Stallman's points that software should not +have owners and that restricting software distribution is unethical. I believe +that software shouldn't have owners and nobody should get to control how their +software is used, studied, distributed, hacked upon. The only licenses which _truly_ meet all these criteria and can be considered ethical are public domain licenses. Licensing your code under [the @@ -331,25 +450,41 @@ License](https://creativecommons.org/share-your-work/public-domain/cc0/) means that you do not place _any_ restrictions on the software whatsoever. People don't even have to mention your name or your project when they use your code. -If you do at least wish to have your name attached to the code, commonly used +If you do at least wish to have your name attached to the code (something that I +personally want if I care about the software I'm writing), commonly used permissive licenses are the best option. Licenses such as the [MIT License](https://choosealicense.com/licenses/mit/) or, my preferred license, the [ISC License](https://choosealicense.com/licenses/isc/) impose no further -restrictions other than maintaining a copyright notice for code used in other -projects. People are free to do whatever they want with your code, so long as -they keep your name on parts that you wrote. +restrictions other than maintaining a copyright notice for that code used in +other projects. People are free to do whatever they want with your code, so long +as they keep your name on parts that you wrote. Not only do these options provide far more _real freedom_ to developers, they remove the overhead of having to think about who owns the software. In the case -of software in the public domain, you don't have to worry at all, and, in the -case of permissively-licensed software, you just have to copy-paste a copyright -statement. These licenses are simple and easy to understand. You don't have to -worry about a mob coming after you for forking the project and morphing it into -something that serves your needs, nor do you have to worry about being sued for -an accidental violation of a license that lawyers aren't even confident about -getting right. - -If this post intrigued you and made you want to learn more, consider checking -out [A Critique of Free Software](/a-critique-of-free-software) (from which I -have pulled many sources for this post), and [The problems with the -GPL](https://unixsheikh.com/articles/the-problems-with-the-gpl.html). +of software in the public domain, you don't have to worry at all because there +is no owner. In the case of permissively-licensed software, you simply have to +copy-paste the copyright and permission notice wherever that code is used. These +licenses are also simple and easy to understand and the culture surrounding them +is such that you don't have to worry about a mob coming after you for forking +the project and morphing it into something that serves your needs, nor do you +have to worry about being sued for an accidental violation of a license that +lawyers aren't even confident about getting right. + +You'll notice that those licenses, however, do not address the issue of +corporations controlling software development, people using software in ways you +may deem bad or harmful, or the existence of megasoftware. This is because those +are problems that cannot be solved or even effectively addressed by software +licensing. These are societal problems that must be tackled on a societal level. +Attempting to do otherwise simply harms and imposes more restrictions on small +teams, independent developers, and hobbyists who don't have the resources to +ignore your restrictions or buy your development team. + +In reality, by licensing your project under the GPL and participating in Free +Software culture, instead of limiting the harms that corporations inflict, you +end up limiting the good that the rest of us can do. Free Software has failed. + +<p class="note">If this post intrigued you and made you want to learn more, +consider checking out <a +href="https://unixsheikh.com/articles/the-problems-with-the-gpl.html">The +problems with the GPL</a> as well as <a href="/a-critique-of-free-software">A +Critique of Free Software</a> both of which inspired this post.</p>