Subject: Re: How accurate is Metcalfe's law? (Was: Ximian software)
From: "Stephen J. Turnbull" <>
Date: 08 Jan 2002 15:14:20 +0900

>>>>> "Ian" == Ian Lance Taylor <> writes:

    Ian> No, that is not the point I was making.  But since I've
    Ian> already given two explanations of what I meant, I don't think
    Ian> it's worth going over it again.  I'm not going to get any
    Ian> clearer.

OK.  I really need to collect some thoughts, write it down, and then
why don't you beat on _me_ for a while?  I'll post an URL.

    Ian> But I think most good programmers would think that they could
    Ian> implement Windows, with a sufficiently large team and enough
    Ian> time.  There is no secret which needs to be discovered.

Not any more.  But how many people have reimplemented Unix, more or
less by themselves, now?  Does that mean that all the accolades that
Ritchie and Thompson have received are undeserved?

Now let's consider what those accolades imply about resources.  What
they did is special, few programmers could have done "it," and
therefore whatever "it" is is a scarce resource.  But "it" is very
poorly connected to user value by any of the known socio-economic
mechanisms.  IP/software licensing has a pretty good claim to be one
of the best of a bad lot over the whole range of software development

What Apache/Emacs/GCC/GNU system/Linux kernel (as a "boxed set" :^)
have proved is that free software beats the tar out of licensing for
_maintenance_ of a certain class of existing ideas.[1]  This is due to
the efficiencies of completely eliminating an important class of
transaction costs of interdeveloper cooperation.  We have no proof
that this applies for the whole range of software, and pretty good
reason to suspect not.

    Ian> Yes, but I don't see how that contradicts my point.  I'm not
    Ian> saying that programming is trivial; I'm saying that it
    Ian> doesn't require being the one person to find a diamond.

Brooks doesn't say that only one person can find the diamond.  You do
have to find diamonds, though, and the first person to find a given
stone has done the world a service.  There are huge differences in
productivity in programming; I suspect it has a lot to do with
differences in diamond-finding ability at various levels of abstraction.

    Ian> We should keep trying to think of new ways, and not just
    Ian> accept blanket statements that it is the only way.

OK, I did make a blanket statement.  Let me gloss it a bit.

Note the way I phrased the footnote: "It is precisely the transaction
cost of dealing with software licensing on a bit-by-bit basis that we
all want to avoid, but if we make compensation cooperative/voluntary,
the essential part of that cost -- communication between developer and
user -- does not go away."

What I really mean by "licensing" is some way of enforcing
communication between user and developer.  The "ASP solution," for
pure software, is economically isomorphic to licensing---the
developers only get compensated _for the software_ if the software is
not distributed.

Note that your example of is very similar to Aladdin
Ghostscript, which is only non-free because rms chose to define it
that way (he could very plausibly considered that embedding the
software cuts the link between software-in-use and software-as-source,
and therefore the users are not really getting "machine-readable"
source, for the machine that most needs to read it).  In both cases
the software is not the core competence.  For Ghostscript, it's
"software as firmware" licensing, for it's the abuser

So I maintain that restricting distribution (a small generalization of
licensing IMHO) is the only general solution to linking user value and
developer compensation.  ASP + public distribution as free software is
only going to work for a small set of applications.

[1]  AFAIK the biggest software innovation of any of them is the Emacs
idea of writing a whole editor in a real programming language.  The
others are definitely incremental processes.

Institute of Policy and Planning Sciences
University of Tsukuba                    Tennodai 1-1-1 Tsukuba 305-8573 JAPAN
              Don't ask how you can "do" free software business;
              ask what your business can "do for" free software.