Subject: Re: Would people pay to choose what gets developed next?
From: Brian Behlendorf <brian@collab.net>
Date: Mon, 26 Feb 2001 17:40:10 -0800 (PST)

On 26 Feb 2001, Ian Lance Taylor wrote:
> Ah, but making the compiler harder to port by increasing the internal
> complexity would actually be an advantage for Cygnus, as it would
> raise the barrier to entry for direct competitors.
>
> This isn't purely theoretical.  I honestly think that the significant
> complexity of BFD and the GNU binutils, which derived mainly from the
> coding style and rather than anything inherent in the problem domain,
> actually did make it harder for people to compete against Cygnus.  BFD
> was written at Cygnus, and for several years every single person who
> really understood BFD worked for Cygnus.  (There are now a few other
> people, not at Cygnus and not ex-Cygnites, who have climbed the steep
> learning curve.)

Let me generalize - those who work a significant amount on the same body
of code will tend to (unintentionally) make it less easy for new people to
grok, unless they have a clear motivation (personal, or business) for
doing so.  In any contract-to-develop situation, that motivation is not
there, unless it's a specific requirement of the customer, true for either
open or closed-source development.  In a non-paid situation, that
motivation does not exist at all, unless the developer values clean,
readable, easy-to-learn code - a great example of a public-code (not open
source) developer who does *not* value this is Dan Bernstein, and qmail.

So, I see this issue as orthogonal to open-source/fsb, except that
morally, open source developers *should* try to make the software they
write approachable for people who are new to it, given that people expect
to be able to examine the source code, and it's a good software practice
anyways - those who have pride in their code will be motivated to do it.
But the introduction of money affects this to the extent that developers
who code for $$ can tend to not have pride over the code they write.

	Brian