What's so important about the ethics of free software?

J.B. Nicholson jbn at forestfield.org
Mon Dec 19 05:48:29 UTC 2016

Charles Cossé wrote:
> Statements like "Free Software supports education, proprietary software
> forbids" [1] <https://www.gnu.org/education/> strike me as outrageous and
> counter-productive.

A proprietary program's license is designed to offer no permission for its 
users to learn how that program works. Thus proprietary software forbids 
that education. What should strike you as outrageous is that when schools 
deploy proprietary software they are telling a student that their education 
ought not include understanding how their computer (including the software 
on it) works.

> I understand that what is meant there is merely computer science
> education and not education in general, but even that goes too far.

I don't know how you came to understand that this is somehow restricted to 
"merely computer science education" nor do I see any such understanding 
conveyed in https://www.gnu.org/education/. Perhaps you were confused by 
the mention of reading and writing code.

Historically it was expected that anyone who wanted to scale up their 
effectiveness in using a program learned a little about how to make a 
computer repeatedly redo a desired action, hence many users (including 
non-technical users) would learn a little programming. This did not mean 
that they had anything to do with computer science education. RMS gave 
talks about the development of GNU Emacs in which he mentioned that a 
variant of Emacs written in Multics MacLisp by Bernie Greenberg "proved to 
be a great success — programming new editing commands was so convenient 
that even the secretaries in his office started learning how to use it. 
They used a manual someone had written which showed how to extend Emacs, 
but didn't say it was a programming. So the secretaries, who believed they 
couldn't do programming, weren't scared off. They read the manual, 
discovered they could do useful things and they learned to program." 

> If I want to put a new version of my FSF-registed
> <https://directory.fsf.org/wiki/TuxMathScrabble> education software
> online without GPL-ing it, that certainly isn't "forbidding" any
> education that it was ever intended for, i.e. kids to *use* the software
> to learn math.

Perhaps not (I can't say for sure without looking into the licenses of the 
program dependencies), but your intentions shouldn't limit what people can 
do with the software on their own computers. Also, the GNU GPL is not the 
only free software license. This license, when defended legally including 
court action if needed, does an excellent job of preserving a user's 
software freedom. But there are many other free software licenses from 
which to choose.

However if this new version were distributed as non-free software, users 
would not be able to trust that the program isn't doing something they 
don't want the program to do. Depending on the implementation details, the 
program might not even run when desired. The best way to ensure that 
programs do only what one wants them to do is to deal strictly in free 
software. Then any suspicious activity can be fully looked into and corrected.

> It's the same as saying that we should stop eating organically grown
> food because there's a Window's system involved in the food chain.

No, it's not the same. It's worth remembering that the first programs 
Stallman wrote for GNU were written on and intended to be run on non-free 
OSes because non-free OSes were the only available systems at the time. He 
couldn't wait for a fully-free OS (such as what's listed in the 
FSF-approved free distros at https://www.gnu.org/distros/free-distros.html) 
to exist so he recognized that a free Unix-like OS is built from free 
programs and he set out replacing non-free programs with free replacement 
programs. We have a better situation today than Stallman did when he 
started GNU because we have fully-free operating systems on which to do our 

> What if life on earth was in danger and couldn't be saved because of
> FSF-induced gridlock, i.e. because in order to save life on earth we would
> have to do something "unethical / immoral", namely use non-free software
> ... at what point does it become acceptable?  Why bother with the ethical
> arguments at all?  Just advocate for the transparency and more people will
> join the cause.

Apparently the ethical arguments are quite compelling and foresee problems 
excellently, offering potent time-honored responses to modern-day problems. 
Listen to any of Eben Moglen's speeches and you're sure to hear him say 
"Stallman was there first" or words to that effect. Perhaps Stallman's most 
well-known instance of this prescience is his dystopic short story "The 
Right to Read". We see this coming to pass with DRM-riddled eBooks and 
TiVOized hardware.

How we treat other people is always a critical concern. As modern society 
depends more on the computer, how we treat other people via computers 
becomes increasingly important. These days, it's a life-or-death issue 
whether people can retain their privacy (the US government uses tracker, 
aka cell phone, location data to know where to send drone-launched bomb 
attacks, for example), the Snowden revelations put a fine point on how 
urgent it is that we help people conduct their lives with more privacy. We 
all ought to have the freedom to control our own computers and collaborate 
to improve our society. Quite a lot of what the FSF mentions in 
https://www.gnu.org/education/edu-schools.html doesn't just apply to schools.

The first part of your quote above is ridiculous but it contains a small 
germ of a sensible question within it, so I'll try to address that: is it 
ever ethical to run non-free software? RMS's talks address this directly -- 
yes, to reverse-engineer it. There's great value in providing interoperable 
free software replacements for non-free software. Reverse-engineering file 
formats, communication protocols, and reimplementing programs so they can 
provide the same functionality (even if they're not drop-in replacements) 
are all very valuable in the free world so that users can cooperate with 
other systems without losing their software freedom.

More information about the Discussion mailing list