From: barmar@think.com (Barry Margolin)
Newsgroups: comp.org.eff.talk,misc.int-property,alt.suit.att-bsdi,comp.unix.bsd
Subject: Re: Patents:  What they are.  What they aren't.  Other factors.
Date: 5 Oct 1992 19:38:29 GMT
Organization: Thinking Machines Corporation, Cambridge MA, USA
Distribution: usa
NNTP-Posting-Host: telecaster.think.com

In article <1992Oct3.161033.12237@rwwa.COM> witr@rwwa.com writes:
>All of this hand-wringing about the number of <whatever> == number of potential
>patent infringements is largely absurd.  It is like claiming that one
>must, when building an airplane, patent-search every nut, bolt, washer, wire,
>shim, grease, and whatnot, *and* every *combination* of nuts, bolts, washers,
>wires, shims, greases, and whatnots.

Well, nuts and bolts have been around for a long time, so it's obvious to
everyone in the industry that any potential patents on them have expired.

Also, manufacturers generally don't make their own components at this
level, they just buy them.  The seller is the patent licensee, and some
portion of the sales price is earmarked towards license fees for those
devices that are protected.

Compare this with the software industry.  The equivalent of a nut or bolt
is a statement or maybe a subroutine (I think a subroutine is more
analogous to an IC chip than a nut).  But the difference is that the
software developer generally doesn't buy his statements and individual
subroutines from someone else, he "manufactures" them himself (except for
certain cases such as OS interfaces, language runtime libraries, and some
specialed packages such as databases).  Thus, every software developer is
in the position of having to deal with licensing issues.

Scott MacGregor has posted that he's been involved in software licensing
issues for many years.  I suspect most of this has involved licensing large
packages: specialized software libraries and self-contained application
programs.  At this level, I believe that licensing has some merit (based on
copyright issues, not patents); these are the software objects that it is
reasonable to deal with commercially.  In the physical world, I think these
would be analogous to engines and appliances, not nuts, bolts, and IC
chips.  On the other hand, I don't believe that individual statements and
subroutines are worthy of this level of protection, and the algorithms
behind them shouldn't be patentable.  As a software developer, I simply
don't need to buy these kinds of things.

Again, the above "nuts and bolts" analogy makes sense.  To the users of
nuts and bolts, it's important that the nut and bolt manufacturing industry
succeed, since it's impractical for everyone who needs nuts and bolts to
manufacture them themselves.  Patents on nuts and nut-making machines
allowed early nut-makers to be commercially successful, and this snowballed
into success for all the industries that depended on them.

But in software it's practical, and extremely common, to manufacture your
own "nuts and bolts".  There's no need to encourage an industry that
manufactures objects at this level.  It's easier to write a factorial
subroutine than it is to look it up in a catalog and purchase it.  In
software, if you can think it you can do it; in hardware, you can only do
it if you can find the appropriate components (unless you have the capital
to manufacture those components -- I've posted before on the difference in
capital costs between the software and hardware industries, and this is
also a major theme in the LPF's paper against software patents).

The stated purpose of patents is to encourage inventors to publish things
that would otherwise remain secret (presumably depriving other inventors of
the ability to license or build upon thme).  But software inventions don't
remain secret for long, even without publication.  The nuts-and-bolts level
of stuff is simply reinvented by most competent programmers (no one "buys"
an IF statement).  And many of the larger algorithms (backing store, XOR
cursors, natural-order recalc) can be deduced simply by observing the
behavior of the program and making educated guesses.  It's not until you
get to the level of complexity of something like LZW compression and RSA
encryption that you have algorithms whose originality and unobviousness
seem worthy of patent consideration.  However, I don't believe in patents
on mathematical algorithms, which is all they are (and given the knowledge
of these algorithms, the applications to communications and data storage
are too obvious to be worthy of patenting).
-- 
Barry Margolin
System Manager, Thinking Machines Corp.

barmar@think.com          {uunet,harvard}!think!barmar
Xref: sparky comp.org.eff.talk:6060 misc.int-property:1075