Subject: Re: Economics of software distribution
From: ghost@ALADDIN.COM (L. Peter Deutsch)
Date: Thu, 18 Mar 93 08:23:23 PDT

> > As far as I know, the vast majority of free software was developed
> > with subsidized funding.  This includes university funding, either
> > direct or indirect, indirect government funding, and private funding.
> As far as I know, the vast majority of commercial software was developed
> with subsidized funding.  This includes university funding, either
> direct or indirect, indirect government funding, and private funding.

Please substantiate this statement.  Outside the Unix world, I simply
don't believe it; it certainly isn't true of any of the PC software that I
use every day (Borland C++, UULink, Epsilon, Commence, SatisFAXtion, MS
Windows, MS-DOS, ProComm, PKZIP), or any of the small software companies
that my friends and acquaintances work in.  If it's private funding that
was motivated by the expectation of a return to the funders, it isn't
"subsidized", it's investment, as you point out just below.

> In the commercial software world, private funding is called "investment".
> It's still an investment, whether the result is free or proprietary.
> The question is:  what result does the investor expect from their investment?
> In the "mass market software" realm, the logical conclusion is that
> they expect to get profit from selling the software.  I think that this 
> conclusion is wrong.
> If you draw a box around just the companies that produce software for
> distribution and sale, well then sure, *all* of them are investing in
> development so that they can distribute and sell the product.
> But most of the investment in programming occurs among *users* of
> software.  As Richard puts it, how much investment has been put into
> the Lotus 1-2-3 interface by Lotus, versus how much investment has
> been made (into learning it, trainings for it, books about it, etc) by
> all the users put together?

This is specious reasoning, a twisting of the word "investment".  Yes, the
users invested time and money, but only in their own ability to use the
software: None of those things the users did caused the software to get
written or improved.  What cause the software to get improved was the fact
that the users paid Lotus for it.

> All of Cygnus's customers are users of the software.  None of them
> distribute and sell it (except sometimes as an advertisement for their
> real business).  But they invest money (in Cygnus) to make development
> and ongoing support happen.  When we occasionally talk to a software
> *vendor*, they think we're crazy.  But there are a lot more software
> users than software vendors, and we're foxlike crazy.

As I've said before, this doesn't work in the mass market.

> Why does every shop have its own homegrown source-code control system,
> and its own homegrown bug tracking system?  Its own tweaked sendmail
> config files?
> I think it's because nobody freed the one they wrote (til Tichy freed
> RCS, then Prisma built and freed CVS).  And this is what Tiemann was
> trying to say about coordination rather than wasted effort.  (Defense
> industry programmers wouldn't have had to charge such high prices to
> begin with, if they had bothered to share their software around rather
> than reinventing every wheel from scratch.)

I think it's because none of the free ones come with same the quality of
code, documentation, and user-orientation as the commercial ones.  And
that's because the effort required to build software that actually solves
users' problems well is much higher than the effort required to build
software that just sort of does the job.

> The beauty of Richard Stallman's idea is that the most of the software
> we need is already written -- it just needs freedom and distribution.
> The global networks provide the distribution, the GPL provides the freedom.

Let me share a story with you.  Yesterday I was visiting a company where a
friend of mine works as the system administrator.  We were talking about
SLIP and PPP, which they were just starting to install.  I don't remember
how the topic came up, but he said that he'd looked at 3 or 4 different
freely available PPP packages, and he'd given up on all of them, and gone
with a commercial package instead.  He said that what happened with every
one of them was that they didn't really quite work, and after fiddling
around trying to get them to work, modifying the kernel, etc., etc., he
just decided it wasn't worth his time.

I'm sure that somebody can make those packages work, and that many Unix
hackers at universities would be willing to spend the extra time.  But by
the standards of "real users", they don't work.  I've had similar
experiences.  I got the freely available source code for `compress', but I
had to tweak it and diddle it and patch it to get it to compile on my PC.
Because the authors have/had no incentive to make it actually work for

To say that RCS, for example, is `free' because I can get a copy of the
source code without paying for it is a real distortion of the word free.
The cost in my time to figure out how to compile it, install it, etc.,
etc. is likely to be much higher than the cost of a commercial package.
Of course, that depends on how I value my time.  For university hackers,
the cost of time is very low.  Maybe that's one of the key issues here:
`free' software that makes users complete the development process on their
own is a reasonable approach if users put a low value on their time.

> Christopher Maeda said:
> > But what started this thread is the question of how to bootstrap
> > "mass-market" free software.  This is precisely the kind of software
> > that universities and research institutions will *not* do because it's
> > not interesting.  No university research project is going to write
> > (eg) personal calendar managers that run under Microsoft Windows.
> And that's precisely wrong.  I bet there are fifty personal calendar
> managers that run under Microsoft Windows -- each one written by a
> bored or hyperactive programmer in some company somewhere.  They're
> kicking around among the local users and their friends, in slightly
> buggy binary versions.  And none of them know about each other, and
> none of this software will either be made commercial or be made free.

Oh, it'll be made commercial when someone decides they can make money
starting a company.  And if it's made free, the same thing will happen --
it'll kick around the net in lots of slightly different, slightly buggy,
source and binary versions.

> Unless we get the word out that it's more fun and less work if you
> share your sources and distribution rights.

It might be more fun, but if you want to actually get the software to
evolve, it's a lot MORE work.  If the author doesn't take responsibility
for the evolution process, you get what I mentioned in the previous
paragraph.  If the author *does* take responsibility, it takes a lot of
time, and most of the code that comes back to you is of much lower quality
than the original, or creates a jumble of styles that makes the result
less readable than the original.  This happens to be something I do know
about from experience.

L. Peter Deutsch :: Aladdin Enterprises :: P.O. box 60264, Palo Alto, CA 94306, ...decwrl!aladdin!ghost ; voice 415-322-0103 ; fax 322-1734
	    "Implementation is the sincerest form of flattery."