Subject: Re: The term "intellectual property" considered useful
From: Ian Lance Taylor <ian@airs.com>
Date: 29 May 2006 14:14:13 -0700

"Stephen J. Turnbull" <turnbull@sk.tsukuba.ac.jp> writes:

> 1.  Software developers (as individuals and as organizations)
>     generally suck at reuse.
> 2.  Arch is not a solution to this suckage; it's not a technical
>     problem, it's an incentive problem.  Unsurprisingly, programmers
>     would rather be programming than assembling Lego blocks (and they
>     probably justifiably fear obsolescence due to "automatic
>     programming").[1]
> 3.  Patents provide both incentive and framework for formalizing
>     reuse.
> 4.  The transactions cost problem posed by patents can be solved by
>     Awiki[2] technology.

I think the reuse problem has several characteristics, but certainly
one problem is that it is not in practice assembling Lego blocks.  I
think many programmers are very happy to assemble Lego blocks, and
that is why things like Ruby on Rails take off.  The problem is that
most cases of reuse, in my experience, are more like mixing together
Lego and Meccano while finding out that your hex wrench is calibrated
in inches but the bolts are in millimeters.  And, of course, in the
usual programming project you're building a fire hydrant while your
house is on fire.  In these circumstances, it's not surprising that
many programmers just throw away those damn bolts and quickly build
new ones that fix their hex wrench.

Effective reuse requires a well-explained standard and a sufficiently
efficient, sufficiently available implementation(s).  Where those
things happen, there is lots of reuse--e.g., the standard C++ library.
Where they don't, there isn't.

Viewed from that perspective, I don't see the patent system as
significantly helping reuse.  The incentives are all wrong.  Nobody is
going to reuse your patent unless the costs for using it are really
really low, almost free; or, unless they can't avoid it.  I don't see
the patent system are hurting reuse, it just seems different.

Ian