From alsa-devel-owner@alsa.jcu.cz  Mon Mar  1 11:19:54 1999
Received: from neutrino.kek.jp (root@neutrino.kek.jp [130.87.218.139])
	by marvin.jcu.cz (8.9.1a/8.9.1) with ESMTP id LAA01508
	for <alsa-devel@alsa.jcu.cz>; Mon, 1 Mar 1999 11:19:30 +0100
Received: from lbscissors.kek.jp (root@lbscissors.kek.jp [130.87.218.173]) by neutrino.kek.jp (8.8.8+2.7Wbeta7/3.4W3) with ESMTP id TAA32315; Mon, 1 Mar 1999 19:19:22 +0900
Received: from lbscissors.kek.jp (really [127.0.0.1]) by neutrino.kek.jp
	via in.smtpd with esmtp (ident sharkey using rfc1413)
	id <m10HPnG-000sLNC@lbscissors.kek.jp> (Debian Smail3.2.0.102)
	for <alsa-devel@alsa.jcu.cz>; Mon, 1 Mar 1999 19:19:22 +0900 (JST) 
Message-Id: <m10HPnG-000sLNC@lbscissors.kek.jp>
To: alsa-devel@alsa.jcu.cz
Cc: kduffey@inprise.com
From: sharkey@ale.physics.sunysb.edu
Subject: Re: Trident's contribution, a draft 
In-reply-to: Your message of "Sun, 28 Feb 1999 16:27:59 PST."
             <3.0.32.19990228162759.00967100@mail.inprise.com> 
Mime-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Date: Mon, 01 Mar 1999 19:19:22 +0900
Reply-To: alsa-devel@alsa.jcu.cz
Sender: alsa-devel-owner@alsa.jcu.cz
Precedence: list


I seem to have found another pair of pennies under my chair...

> >	Put it this way: what's the point of winning if you do it by
> >giving in?  What have we won if our Linux systems depend on proprietary,
> >non-free drivers?  We've got NT all over again.  Why bother in the first
> >place? 
> 
> Not really. NT costs money.

Money really has very little to do with the issue.

> These drivers wouldn't, even if you dont have
> source code.

That means they're not free, in the DFSG free sense.

> I am all for GPL for some projects..but I am not about to give
> out my source code on a project I have worked on for a year or two so that
> everyone who wants to can recreate the project slightly different and tack
> their name to it.

You may be surprised.  This very rarely happens.  First of all, I assume you
understand that if some one did this, they would be appending their name
to yours.  Any copyright notices you place in GPL code may not be removed.
Your name will still be attached to the code you have created.

Secondly, why should someone want to completely recreate your project?
If your code is good, but lacking some small feature, the person in question
would most likely mail their changes to you in the form of a patch.  If
they enjoy using your software, then they will want to see it flourish,
not compete with it.

I strongly recommend that you read Eric S. Raymond's paper "Homesteading
the Noosphere" since it addresses some of these points in detail.  To quote:

  Nothing prevents half a dozen different
  people from taking any given open-source product (such as, say the
  Free Software Foundations's gcc C compiler), duplicating the sources,
  running off with them in different evolutionary directions, but all
  claiming to be THE product.

  In practice, however, such `forking' almost never happens.  Splits in
  major projects have been rare, and always accompanied by re-labeling
  and a large volume of public self-justification.  It is clear that, in
  such cases as the GNU Emacs/XEmacs split, or the gcc/egcs split, or
  the various fissionings of the BSD splinter groups, that the splitters
  felt they were going against a fairly powerful community norm.

  In fact (and in contradiction to the anyone-can-hack-anything
  consensus theory) the open-source culture has an elaborate but largely
  unadmitted set of ownership customs. These customs regulate who can
  modify software, the circumstances under which it can be modified, and
  (especially) who has the right to redistribute modified versions back
  to the community.

It's clear that you are new to the community.  It takes a few years to
understand these customs, and why they exist, and why they work.

> Its quite possible my app isn't the "best" the code could
> have been written, and if someone betters it, I lose. They win.

But that's not how things work.  When someone betters your code, they win,
but so do you, because you still regain control of your project.  You
incorporate their code into yours, if it is truly good, and if you choose not
to do that, then it must not be good code.

> Maybe they cant "sell" it

Actually, they can.  There's nothing in the GPL that prohibits the sale of
free software.  I once sold a piece of free software for $2600.

> However, I do
> believe a good OS should have FREE support for ALL hardware.

Me too, but we disagree on the definition of free.

> If that means
> that the driver does NOT come with source code for everyone to freely
> change and redistribute however they want, so be it. As long as the
> hardware is supported, thats whats important.

But that's essentially impossible.  Impractical at least.  It's just too
difficult to make enough binaries to cover the configurations users want.
With Windows it's easy, because everyone has the same configuration, but
Linux flexes to fit each user, and binaries just don't flex as well as
source.

Not to mention that I always end up feeling like the closed software I run
is complete crap.  It usually is.

> If the aim of ALSA is to also
> promote Linux as an OS with equal capabilities (or better) of other OSs
> that support hardware, then its going to have to compromise in some way to
> allow support for those vendors that are not willing to give up source code
> for their drivers.

That's a *big* "if" there.  Yes, I think it's valuable to promote Linux, but
only to a point.  I do not feel it is necessary for Linux to "beat" Windows,
or FreeBSD, or BeOS, or Solaris, or whatever.  If Linux were to stabilize at
10% market share, I think that would be fine.  Linux is the OS for me, but
it's not for everyone.

Microsoft's gross monopoly is causing many problems, but once that's broken,
and this silly assumption in the industry that everyone uses windows is
destroyed, then it's fine if MS keeps 40%, Be get 20%, Linux 10%, and 30%
to FreeBSD, Solaris, MacOS, and whatever else you want to throw in there.
That's my opinion, of course.

In case you haven't realized it, "World domination" is supposed to be tongue
in cheek.  Freedom of choice is what I want, and that includes the freedom
to choose something other than Linux.

> Or..ALSA can support only those willing to give up
> source to their drivers, and others such as OSS can support ALL of them and
> become the defacto standard for linux.

That's too high a price to pay.

> Current distributions claim only GPL
> software..

I don't know of any distribution that claims this.

> but it wont be long (if linux rises up to meet the MS challenge)
> before some will start shipping various bits of software that make the
> overall linux OS "sell" better.

If you're talking about Linux distributions, you don't need to use the
future tense for that.  Caldera's Open Linux boxed sets frequently include
commercial apps.  Even Debian has a "non-free" section on its ftp sites.

> Where ALSA could stand a big loss is if games start appearing
> in the linux OS and use OSS instead of ALSA.

ALSA has OSS compatibility for most applications.  I don't see that as such
a big loss.

> HOWEVER...that doesn't really
> matter because I assume ALSA is being developed "on the side" so to speak,
> like most linux GPL apps, and if it doesn't take off..who cares.

I do.

> I am starting to believe GPL isn't for me. :) In all honesty, I like GPL,
> because good stuff has happened because of it. Linux, GIMP, GNOME, ALSA,
> etc. However, I very much need to make a living with my software. I would
> like to run my own software company one day. So I should ask before I say
> the wrong thing..if my software is FREE, with source code, how do I make
> money?

That is a very good question.  One that can't be easily answered.  Since we
started this discussion about drivers, I'd say in that case, you make it
by selling hardware.  That should be pretty obvious.  If no one can use
your driver without buying your hardware, then you've got an obvious income
method.

For other apps that aren't as important as really critical apps like gcc,
that's a tough thing to do.

In my case, I worked for a consulting firm for a short time.  We had a customer
who needed software, so we did it in the most economical way possible,
by using free software.  We were paid by that client for our time, and when
we produced the software the client wanted we handed over full source and
all reproduction rights granted by the GPL.  They understood that anyone
they gave the software to would have to have the same rights, and that we
could still give or sell the software we wrote to other parties but they
didn't care.  They got the custom software they wanted, at a price lower
than if we had to start from scratch.  Contract work on free software can be
very lucrative.

If you don't have a buyer a prior, then you've got your work cut out for you.
You can try to sell support, or services.  There are a lot of people trying
to work this question out.  I think most free software folks are employed
by large institutions.

> How does Linus make his money?

He's employed by Transmeta.  http://www.transmeta.com  No one knows what he
really does there.

> Otherwise, I dont want to
> "share" my internal secrets with others who for the most part will take it,
> change it a bit, and then sell it themselves in some way and make money off
> of my ideas.

Any derivative work must also be free, otherwise you can sue.  If their work
is free, they'll be facing the same obstacles in acquiring funds that you
will be.  I don't see why they'd be making all the money and you wouldn't.
 
> I dont see what the hang up is on soundcard drivers
> and source code.

I hope this point has been made clear by now.  It's *much* more crucial
to have driver code than application code.

> I thought the intent of ALSA, its original intent was to
> provide a more robust API and more support than OSS, and make it free.

Yes, but DFSG free.  "Libre" not just "non-gratis".

> But..if every new architecture that comes out says "hey all you hardware
> vendors that are used to your freedom to HIDE your code..you now HAVE TO
> show the world your code or you cant be part of us". How does that work?

Let me draw an analogy.

Are you familiar with "cross licensing"?  That's where one firm gives one
technology to another firm in exchange for another technology from the second
firm.

Companies do this all the time.  Each company may hold patents or copyrights
on something, but they'll allow each other to use those technologies at no
cost to each other.  It's a kind of barter.

We're doing the same thing.  We are the GNU Organization.  If you would like
to use our code, you may, here it is, in exchange, we want yours.  What?
You don't want to give us yours?  You just want to take ours and then
charge us for using yours?  Hmm, let's think about that deal for a nanosecond.
Uh, how does "NO WAY!" sound?

If ALSA were a commercial driver suite and Creative Labs tried to build
a low level driver module using ALSA and asked to use this code giving
absolutely nothing in return, the ALSA CEO would be so busy laughing his ass
off he'd not even notice Creative Labs folding faster than a house of cards
in an earthquake.

The GPL is the biggest cross-licensing deal in history.  The freedom it
takes from people is necessary to get the creators something in return.
We want the driver source.  They want to use the ALSA library.  We swap.
They get what they want, we get what we want.  What's fair is fair.

They don't want to give us their code?  Fine.  They can't use the ALSA library.
They want an ALSA compatible Linux driver?  They can do it from scratch.

The GPL is the only bargaining chip we have with these companies.  They
want what we have at least as badly as we want what they have.  If we give
in and just let them take it for nothing in return, we're just a bunch of
pansies who deserve whatever we get.


Jeeze.  This is much more than $0.02.  This is at least a buck fifty.  I've
got work to do...

Anyway.  I realize that your thoughts don't constitute a flame.  It's pretty
clear that you've given this some thought and are discussing this rationally,
so I don't think this is in any way a flame war.  Flames are for kids.

I hope you consider these issues and maybe change your mind.  If not, well,
you're entitled to your opinion just as much as I am to mine.

Eric


