New Essay - "FOSS Licences Wars"

New Essay - "FOSS Licences Wars"

Shlomi Fish shlomif at iglu.org.il
Tue Sep 1 21:09:24 IDT 2009


On Friday 21 August 2009 19:58:13 Shlomi Fish wrote:
> Hi all!
>
> I have published a new essay about free software licences:
>
> http://www.shlomifish.org/philosophy/computers/open-source/foss-licences-wa
>rs/
>
> Any comments will be welcome.
>

Replying to myself (while de-CCing Perl-IL) I'd like to note that in my 
coverage of the reasons of why I prefer public domain licences instead of weak 
copyleft or strong copyleft licences, I probably missed the one that was the 
most important for me. So this is a GPL-vs.-BSDL post.

I'll start with a little history. Back when I got my first computer - an 8088 
PC XT with two 5.25" 360 KB diskette drives, and no hard disk, I started 
programming in BASIC - first the one that came on the BIOS and then BASIC.COM 
or GWBASIC. (BASICA wouldn't run on my computer, for some reason). Back then, 
I programmed mostly games and my friends and I shared tips and programs 
between ourselves.

I took a long break in programming, and then started programming BASIC again - 
this time QBasic. Then I got my father to buy a C compiler and he bought me 
Turbo C++, which I used for somewhat more "serious" stuff than BASIC (though I 
still used QBasic). Back then I wrote two libraries-of-sorts - called CCalc 
(for various mathematical routines) and CSee (for graphics) which I intended 
to distribute as shareware. I don't recall if I wanted to include the source.

I've now made them, and some other C code from that era, available as FOSS at:

http://www.shlomifish.org/open-source/nostalgia/

In any case, back then we were used to the fact that we have to pay for our 
software, so I probably thought that making these libraries public-domain was 
not worth it. 

After I started getting into the world of UNIX, Linux, GNU, and open-source I 
realised there was a lot of software out there distributed with the source, 
which I could download and compile. I used to think of prep.ai.mit.edu (the 
old primary FTP host for gnu.org) as a cool collection of source code, which I 
could download, read the INSTALL file, build and install (sometimes after 
fixing the source). I wasn't interested in the implications of its FOSSness or 
the GPL licence. I also downloaded other software. I did know the software was 
gratis, as opposed to MiniSQL/mSQL which was sourceware and shareware, and it 
was good enough for me.

After I became more involved and started playing with Linux for developing 
software on it, I learned even more and understood what "free (as in speech) 
software" or as it was later called open-source software was all about. One 
thing I understood back then, was that it took me a long time to fully get to 
the bottom of all the GPL's nuances, and that I thought the public domain was 
preferable, because I didn't care too much about people changing the licence 
to something else, or using it in their own non-free/non-GPL-compatible 
software. A lot of people I have talked with since have shown some mis-
understandings of the GPL.

In any case, I had initiated some FOSS projects under the public-domain which 
didn't amount to a lot. I also wrote a patch for GIMP (see 
http://www.shlomifish.org/grad-fu/ ) which I made available, but has since 
taken some other iterations and incarnations to be embedded. And then I 
released Freecell Solver (originally under the Public Domain - now MIT/X11) 
and did a lot of extensive work on it, and then started some other moderately 
successful MIT/X11 projects, or contributed to or adopted FOSS projects under 
various licences.

So why am I still sticking with the MIT/X11? The main reason I think is that 
as an open-source programmer, I'm not interested in worrying about how people 
abuse my code. I don't like Apple, and am not fond of many Microsoft products. 
But I'm not interested to prevent Apple or Microsoft or any other developer of 
commercial and/or proprietary software for Windows or Mac OS X or the iPhone 
or whatever from using my code in their projects. In fact, I would prefer them 
to use my code than to create a proprietary replacement. Not to mention that 
making my code GPLed may also make it inappropriate for some developers of BSD 
software, BSD distributions, some developers of non-GPL-compatible-but-still-
free software, etc. I don't want that - I want my code to be of the maximal 
use possible.

I should note that I'm more worried about my code being used for malicious 
purposes by evil governments, as I think no big corporation in history has 
been as abusive as some past and present governments that come to mind. But 
preventing internal use or "defence use" or government use or whatever will 
make it non-FOSS, (and non-GPL-compatible), not to mention that adding random 
restrictions ("cannot be used by Neonazis", "cannot be used by terrorists", 
"cannot be used by 'Zionists'", etc.) will fragment the software world as a 
whole. 

Back to the topic: I don't want to be bothered about legal issues with my 
software. If you want to use my code - use it. "Drive safely, the keys are 
inside.". If you encounter any technical problems with the code (bugs, 
documentation issues, etc.) then I'd be interested to hear about them, because 
that will improve the quality of the product, which will hopefully make it 
even more successful. But I'm not a FOSS developer, so I can sue people for 
violating the licences of my works. I have better things to do with my time, 
that bring me much more benefit.

Now, on to the issue of whether developing BSD-style code makes me a "sucker". 
I covered it earlier in:

http://www.shlomifish.org/philosophy/computers/open-source/gpl-bsd-and-
suckerism/

(short URL - http://shlom.in/gpl-bsd-sucker )

In short, I don't see why contributing to one's neighbour (or the public at 
large), willingly and on one's free time (which may be called "donation", 
"philantropism" or even "altruism") and for a non-harmful cause can be 
considered as being a "sucker". Everybody is able to use GPLed software of 
various originators too free-of-charge or put it into good use in many legal 
and legitimate ways and yet you don't hear that often that people who develop 
GPLed software are "suckers".

I don't see myself as a sucker, just by allowing people (whether individuals, 
corporations, governments or any other organisations) to use my software in 
non-free contexts, and don't think anyone should say that the GPL is the 
"don't-be-a-sucker" licence because BSD-style licences are by implications 
"be-a-sucker" licence. I hate selfishness. (And I don't mean "rational self-
growth" or acting-out-of-one's-own-best-self-interest, which is what Ayn Rand 
meant in the book "The Virtue of Selfishness" - I discuss it in the link 
briefly).

Another argument that you can often hear against the BSDL was that the Linux 
kernel was more successful than the BSDs due to its GPLed licence. However, 
this is:

1. A post-hoc fallacy - http://en.wikipedia.org/wiki/Post_hoc_ergo_propter_hoc 
- just because Linux is more successful than the BSDs, doesn't mean that the 
licence was the main reason for it, or the only reason.

2. In accordance to #1 - may be attributed to other factors such as Linus 
Torvalds' leadership skills, the kernel's adoption of the Bazaar-style of 
development, the willingness of Linux distributions to use the GNU project's 
software by default as run-time, the cooler name, the lack of initial legal 
limbo that the BSDs had, etc. etc.

3. One can find examples to projects in other niches that have been very 
successful despite their permissive licences - Apache, X-Windows, SQLite, 
PostgreSQL, Python, libxml2, OpenSSH, etc. So extrapolating from one instance 
(the kernel) to everything is not scientific.

4. The BSD-based kernels and operating systems are doing fine, despite not 
being as popular as Linux. Often, people use code from efforts by BSD 
developers in Linux (e.g: OpenSSH or some of the OpenBSD wireless drivers that 
were adapted and integrated into the Linux kernel). So it's not as if, they 
have completely "lost".

-----------------------

While I'm still using GNU/Linux (Mandriva Linux Cooker in my case) because 
that's what I've grown accustomed to using, I would still like to play with 
some BSD derivatives and OpenSolaris. I'm also not planning on switching to 
gNewSense or one of the Free Software Foundation's endorsed "100% Free 
Distributions", because Mandriva is free enough for me.

To sum up, I'm not trying to dissuade you from licensing your software under 
weak copyleft or strong copyleft licences, but I'm still happy with my code 
being BSD-style. I'm glad to learn of any use someone has been making of it, 
and in the few times it has been used in commercial or proprietary contexts, 
it did not make me regret that I released it as FOSS. I hadn't wanted it to be 
an issue in the first place, and so it wasn't. Hakuna Matata.

Regards,

	Shlomi Fish

-- 
-----------------------------------------------------------------
Shlomi Fish       http://www.shlomifish.org/
Stop Using MSIE - http://www.shlomifish.org/no-ie/

God gave us two eyes and ten fingers so we will type five times as much as we
read.



More information about the Linux-il mailing list