Subject: Re: the walls have ears
From: craig@jcb-sc.com
Date: 27 May 1999 18:19:55 -0000

>On Thu, 27 May 1999, Richard Stallman wrote:
>>     Yup, and it's hard to get "more free" than BSD.
>> 
>> That depends on how you measure freedom.  You can measure by what is
>> permitted by the license of a specific release of the program, or you
>> can average the freedoms that the users of the program have.
>> 
>> If you use the former method, the BSD license is certainly more
>> permissive than the GNU GPL.  But if you use the latter method, you
>> will find in many important cases that the average user of the
>> non-copylefted program has less freedom.
>> 
>> BSD is an example of this.  When you think of "BSD", perhaps you tend
>> to consider only the free versions of BSD.  But there is also a
>> non-free version of BSD.  I don't know what fraction of the users of
>> BSD systems use the non-free version, but it could be substantial.
>
>Richard, this is FUD.

Could you please explain precisely how RMS was spreading Fear, Uncertainty,
and Doubt above?  I didn't see any explanation in the rest of your
email, though you did discuss issues that either were clearly not
relevant or had already been acknowledged by RMS (as just *part* of
the picture of overall freedom).

>The fact that there is a non-free derivative of the
>BSD line (one of several, actually) produced by a company that is using
>the "BSD" name in its business and products is completely separate from
>the question of the freedoms granted by the BSD license.  That fact that
>one company can do this in no way detracts from the freedoms associated
>with the original BSD code.

I didn't think Richard was talking solely about the "original BSD code"
in making his case.  He referred to "average users of the using the
non-copylefted program", which can also refer to BSD code that has been
modified even *slightly*, compiled by a very expensive compiler, and
distributed to many users as binaries with *no* access to the source
code or the information on how the thing was built, thus affecting
how much freedom users of that program have *on average*.

Users with *that* copy of the program indeed have "freedom" to obtain
the "original BSD code", but that does them no good if the *non-free*
version of that code, which they're currently using, is the only
version that runs on the hardware they're presently using.

For example, if such users discover they've contracted a software
virus in the binary of their program, and can't obtain support (e.g.
no virus-filtering software), they cannot just rebuild from source,
installing a "fresh" copy of the binary might be possible (it's
quite possible they have no *legal* access to it, even if they had
the money, within a small multiple of the original price, to pay for it),
and, lacking the source, they are unable to deal with the problem by
studying it in a cost-effective manner.  (Viruses spread far more easily
in binaries than in source, as I've been pointing out, to the
incredulity of some programmer-wannabees, for something like six
years now, off and on.)

Yes or no: everyone who has a program containing BSD code has the
*freedom* to modify the source code for that program and distribute
the modified program to others?  I assume it's pretty clear the
answer is "no".

Replace "BSD" above with "GPL'ed", and the answer becomes "yes", to nearly
the maximum extent possible under current copyright laws (assuming they'd
be enforced as the FSF's lawyers apparently expect).

(For all this discussion, I assume we all agree the term "legally"
applies to all the actions, freedoms, and so on being discussed.
This is yet another of my overly verbose asides designed solely to
avoid encouraging anyone to go down a rat-hole of obscure corner
cases, sorry.  :)

>To illustrate this, let me point out that there is *no* such thing as a
>"non-free" "version" of Apache.  Unlike BSD, unlike Linux, we have been
>very tight on controlling use of the name Apache, even so far as to make

Excuse me, but my head is spinning now.  Could you please explain
how you managed to change from talking about "code" to talking about
the "name" of a product, and how that's pertinent to RMS's comments?

I didn't think "freedom" was defined solely in terms of whether one
is free to choose names for things one releases to the public, but
maybe I missed a message in this thread.  I thought it meant "code",
and you seemed to think so also, until about 120 characters into
that paragraph you wrote, so I'd appreciate some clarification.

Or maybe what you're saying is that it doesn't matter that I might have
contributed 10,000 lines of great new code to "free" Apache, only
to find I can't maintain it for some customers because they got
a *proprietary* version of *my code*, because those customers don't
happen to have gotten it under the *name* "Apache"??

If so, then I *totally* disagree with that, because that's what matters
*most* to me.  And not just pertaining to *my* code -- I believe the most
robust code possible results from the most programmers having, and
exercising, this particular freedom.  (But I'll continue using my
personal example, so as to avoid appearing to speak for others.)

I'm not quite sure to make of the various naming and pedigree
issues at this point, but one thing for sure: I value *my* freedom
to improve *my* code in any version of any program it ends up in at
a customer (or neighbor's, or friend's) site, e.g. to fix bugs.  I value
that to the point that, when I choose to give up that freedom by writing
code others (aside from the FSF, which I trust to not do so) can put into
proprietary products, I usually do that by changing my going rate from
"volunteer" to $100/hour.  (RMS, on the other hand, makes no such
concessions, being a true Saint.  Doggone if he doesn't get paid several
times more per hour anyway....)

Of course, that's just *one* measure of freedom, and RMS didn't imply
otherwise (nor have I done).  But it turns out to be one of the more
important measures, when it comes to figuring out just *who* is going
to be taking advantage of the availability of source code at a site
by actually modifying it, especially if that person is interested
in serving the public good by sharing his modifications.  GPL-style
freedoms, viewed from that particular perspective, stand at the
pinnacle of the licensing hill.  (Viewed from other perspectives,
like naming and pedigree, it doesn't, though I don't know offhand
what licenses *do*.)

And, my impression is, people interested more in *other* freedoms
(viz their preference for non-GPL licenses) manifest that by working
less hard to improve the public, "free" version of the product for
use and enjoyment by all than GPL enthusiasts do (the latter having
basically no choice, except when it comes to modifications for
"in-house" use only).  Certainly that "enthusiasm difference" is
balanced by the incentives involved in being able to publish less-free
versions, but I believe that shows how much *more* enthusiasm there
is, among people who really care about serving the *public, free*
versions of products, for the GPL model -- after all, *without* the
incentives claimed to be so crucial (which the GPL effectively nullifies),
GPL'ed products are at least holding their own, if not winning,
battles where there are reasonably competing products.

>the point to vendors selling servers based on Apache (or even simply
>including Apache + their own patches on their own systems) that they can
>not call it a "version" of Apache, because that implies that the Apache
>development team is responsible for it - only "based on" or "a derivative
>of".  We want to incent the companies to stick with the mainline code
>tree by using the strong Apache brand name - as IBM, Apple, and many
>others have agreed to do.

That's nice, and it (as well as pedigree, a *slightly* different issue)
are important concerns that aren't easily addressed, if at all, by the GPL.

But, of the products (defined as "programs" or "code" if you like) the
community as a whole ends up with, a vastly larger percentage of those
are *non-free* in *any* sense to those users when they contain BSD, AL,
and other-licensed code than when they contain GPL code.  *That's* what
RMS was referring to, as seemed quite clear to me.

In *this* particular context, I mean "non-free" precisely in the sense
of freedoms those *end users* have.  Because some of the programs they
received contained GPL code, they are *free* to obtain the source code
if they don't already have it, they are *free* to modify that code,
they are *free* to share their modified code with others, and, unless a
trademark is at issue, they are *free* to call it by the name of the original,
as long as they respect the source-documentation requirements of the GPL.

Because other programs they have do not contain GPL code, even though
it contains BSD, AL, and other-licensed (NPL/MPL?) code, they have *no*
right to obtain the source code (for a nominal fee, anyway), which they
might not have, they are *not* necessarily free to modify that code,
they are *not* necessarily free to share that (modified) code with others,
and they are *not* necessarily free to call it by the name of the
original.

Of course, as we all understand, they *might* be free to use that
BSD, AL, and other-licensed code in distributions they make to others,
to whom they deny the freedoms (pertaining to those new distributions)
they themselves had when obtaining the original distributions.

And, we also understand there are significant (at least perceived)
business/economic incentives that accrue from *those* particular freedoms
(the ones that allow subtraction of freedoms when distributing to others,
that is).  I certainly didn't see evidence in RMS's post that he didn't
agree such incentives exist, so that shouldn't even be an issue in an email
labeling his post "FUD".

But that doesn't mean it's unreasonable to point out the *other* freedoms
that accrue, namely, the nearly-100% assurance that anyone using a
program containing GPL'ed code has access to its source and the freedoms
to distribute the *entire* program, even if they modify it, under the
terms of the GPL.  (100% assurance is impossible to achieve, due to things
like simply losing the source code.)

>> X11 is another example; in its heydey, I am pretty sure that most
>> users were using non-free versions.  
>
>X11 wouldn't have made it at all had vendors decided to not use the code
>they were given for free.

That the timing of that hypothetical situation might have resulted
in X11 indeed dying, perhaps due to being an idea in advance of its time,
says nothing per se about the relative "freedom" of licenses like
the GPL and BSD.  ("In advance of its time" refers to the now-hilarious
disbelief people had about the viability of the GPL when I first
started reading online discussions about it in gnu.misc.discuss back
around ten years ago.  GPL opponents using, fundamentally, the *exact*
same arguments you're using, confidently predicted a future without
a GPL'ed Linux, a GPL'ed egcs/gcc, and so on as dominant players in their
categories.  X predates my reading of g.m.d by several years.  Haven't
read it for some time.  Last I checked, the GPL opponents had backpedaled
to something roughly like "of *course* it works great for operating
systems, compilers, text editors, toolchains, and the like, but it won't
work for end-user or vertical applications".  They might, finally, be
right, but their *fundamental* arguments haven't changed enough for me
to see that they've really learned anything, any more than the naysayers
of amazon.com's business plan did over the naysayers of Penguin Books
using Woolworth's as an outlet so long ago.)

After all, years ago, it was widely claimed (and taken seriously by
companies like IBM) that even *shipping* GPL'ed code (like Emacs) put
corporations at legal risk, so, clearly, X11 appearing out of the
blue under the GPL might have made for a different history, coming
out of the 1980s and its Gates of Proprietariness.

Put simply, there *was* no GPL competitor to X11, and there has been,
to my knowledge, none in the intervening years.  So we can only
speculate about what would have happened if there was one.

Yet, the GPL competitor to BSD came along with zero initial lines of code
some number of years *after* BSD had, what, several hundred thousands
of proven lines of code, and now "everyone" seems to think Linux is
the #1 great new OS, while BSD advocates have to resort to playing the
kinds of "flash the sign behind the TV commentator while he covers
Linux" games we normally see only on local news coverage or NBC's *morning*
"news" show.  (Yes, I saw this in CNBC's coverage at, IIRC, Linux World
Expo.  Didn't notice it at first, but did when I replayed the tape for
my wife.)

(Yes, I've heard the arguments about why Linux seems to have "won" over
BSD, despite "giving" it a big head start, but I find them less and less
convincing.  Ultimately, it seems there aren't vast hordes of people
who're willing to voluntarily contribute improvements to a code base
that MS or anyone else could release widely in a proprietary version
those contributors couldn't then work on, whereas Linux seems to attract
just those sorts of people.  That might also explain why Linus is a
better project leader than the BSD leaders -- e.g. he's probably spending
no time trying to wangle being hired to create a proprietary version
of Linux out of the version contributed to by so many, and his supporters
don't have to worry that he'll "sell out" in that way, thanks to the
GPL and widespread holding of copyrights.  That leaves him free to
make Linux sufficiently good to achieve his goal of Total World
Domination, and his "followers" more willing to sign onto that goal
without worrying of a takeover that'll leave them out in the cold,
in terms of improving/fixing their neighbor's copies of Linux, in whatever
form it is distributed.)

(Another aside, you'll note I'm not really saying anything about the
*name* "Linux".  Aside from the trademark issue, it matters not one
whit that Microsoft might someday release "Microsoft Linux with Windows"
as 100% proprietary code containing, presumably, *zero* actual Linux,
aka GPL'ed, code, when it comes to the freedoms RMS was specifically
pointing out and to which I've been referring.  If my mother ever called
me saying "hey, my MS Linux system stopped working, can you help?",
I'd have to say "no, because it's not really Linux, so I don't know
anything about it", but I wouldn't have to do that knowing that, in
fact, her system *did* have code I wrote, and which MS "broke", that
I couldn't legally touch.)

>> Non-copyleft license don't directly take away anyone's freedom, but
>> they reduce the community's commitment to freedom, by encouraging
>> business to tempt all of us each day to give up some freedom for some
>> added convenience.  To resist the temptation takes strong will, which
>> not everyone has.  I think it is a mistaken strategy.
>
>I can't see how your argument above, which is to take away freedom of
>choice between alternatives, is consistant with your use elsewhere of the
>term "freedom".  

I couldn't see how his argument was to "take away freedom of choice
between alternatives".  Please explain.

        tq vm, (burley)