Article View: gnu.misc.discuss
Article #73437Re: Patents
From: Craig Burley
Date: Sat, 07 Sep 1991 00:39
Date: Sat, 07 Sep 1991 00:39
1977 lines
112230 bytes
112230 bytes
In article <9260@cactus.org> ritter@cactus.org (Terry Ritter) writes:
SOFTWARE PATENT DEFINITION
>A patent that does not involve/require the transformation of matter,
>for example,
OK, lets see how it works:
How about a TELEPHONE; does *that* "transform matter?" Would the
Bell patent be a "software patent?"
A telephone transforms acoustical information to electrical signals and
back again. Remember e=mc**2; energy is matter, matter is energy.
What about microphones and loudspeakers, organs, FM modulation, the
Cathode Ray Tube, antennas, the transistor itself, and dynamic RAM
storage cells; do *they* "transform matter?"
Yes; their fundamental functions involve transformation of electrical or
acoustical information, or in the CRTs, photons.
On the other hand, I don't think Hayes cares whether someone implements
<one-second>+++<one-second> ("+++") in software or hardware, on an
RS232 line or RS422 (or whatever), as an emulation or a mechanical
device, they'll claim (and probably be backed up) that it's an infringement
of their patent. In other words, the nature of the matter being transformed
is basically unimportant in a software patent; in a non-software patent,
it's the raison d'etre. (Without the photons being emitted, CRTs would
be useless; and so on with all the other devices you mention. A video
camera would not infringe on a telephone patent because the former converts
between visual and electrical instead of acoustical and electrical; with
a software patent, however, the basic idea of such a conversion is patented,
and the material forms on the fringes of the idea are relatively unimportant.
What does "+++" do but go into command mode? What does that mean as far
as matter transformation? Substantially nothing, even though clearly there
must be some transformation of matter for it to be useful, the actual
transformation is unimportant and left to the particular implementation.)
THE SOFTWARE PATENT LITERATURE
It is only to be expected that if one is not familiar with the patent
literature one will also see no advantage to using it. Ordinarily
this would be called "ignorance."
Since I have looked up a few patents and seen a few listed here, I have a
little experience with it. I see no evidence that I'll find significantly
more useful information in a more readable form in the patent literature
than I already find in various publications to which I subscribe (i.e. are in
my home) or which I can access more easily (MIT and other libraries).
Thanks for recognizing my special situation as not an ordinary case of
"ignorance".
I think it was clear that I was not claiming expertise on the software patent
literature to date, but that I saw little evidence it'd be useful to me
and I've seen NO evidence (up until your post, though I still don't know
what you do for a career) that anyone involved in serious computer
programming uses the patent literature as a means for finding new ideas --
there's just too many superior ways to access useful information, at least
for most people I know.
Since the patent literature is little used by software designers, it
should comes as no surprise that there may be few cases where
specifically patent literature has benefitted a design. In order
for it to help, somebody has to make use of it.
Agreed that it is still a "young" body of literature. There are even
"younger" bodies that are heavily used -- various magazines and such.
Aside: software is often assailed for the NIH attitude, but this should
serve to indicate an important point. Most programmers tend to feel that,
given a simple idea ("use a hash table to map pointers between a disk file
and malloc'ed ones"), they can come up with their own implementation as
quickly as it'd take them to adopt the originator's implementation to their
own needs, understand it well enough to debug it, and so on. This would
rarely be the attitude with hardware, but the fact that it happens (heck,
I've done so many hash-table-lookup implementations I've stopped counting,
and I'm of fairly ordinary expertise in this area) shows that, in software,
implementation is not as big a deal as in hardware. You get the idea, you
bang it out, and you're done. In fact, studies show how comparatively
unimportant implementation is when weighed with designing the user interface,
coming up with the idea, testing, debugging, and so on. So having a body
of literature that gave you ideas plus implementations wouldn't be quite
as useful for software as for hardware, and in fact attempts to provide such
things commercially haven't met with much success from what I can tell.
It does explain why software patents have to protect ideas, not
implementations; the latter are, basically, dime-a-dozen. But patents were
never intended to protect ideas.
I have found the patent literature very helpful, even *dramatic* in
some instances although not for the reasons one might think. I have
never had an idea jump out at me and solve my problem (and, if it did,
it probably would be under patent). But I *have* used the flow of
patents as a clear indication of the direction of research and what
other researchers thought was important.
Like byte-ordering, backing store, and use of pauses in a communication
stream? Presumably you've seen much more interesting patents than these,
as they probably represent the worst of the lot. But seeing as the patent
process is so lengthy and expensive (before us outsiders get to read the
resuls), and seeing as most research info is published by faster means
such as ACM proceedings, magazines, and Internet newsgroups (and often in
clearer form), I still prefer the latter.
When the software patent process promises to itself take less time from
start to finish than the average implementation of a patentable software
idea, maybe I'll reconsider my views. Note that in all other fields I
know of, the amount of time it takes to go from idea to successful
implementation is somewhat longer than the patent process itself. If
I could type in code describing my idea and a sample implementation to
GNU EMACS, run ESC-X patent-this, and in five minutes or so have an
approval/rejection from the PTO and, if approval, an automatic post to
"pto.patents" of the new patent in software-machine-readable form so
everyone else's compilers could do an automated search of all their code
to find users so I could bill them -- well, then maybe I could be
persuaded. But I think this problem is NP-complete, yet it has to be
about that fast to keep from slowing software development down by more
than two orders of magnitude or so. (And somebody other than rms would
probably have to write the EMACS LISP code to the patent-this function! :-)
Although there is a lot of legal obfuscation in a patent, there is
also a certain *clarity* about it. Somebody is trying to define
<a machine> in a way which _cannot_be_misunderstood_. For someone
who designs <machines>, this is fundamental and important, perhaps
as important as calculus or matrix math is to a Physicist.
Ideally, yes, and I'd appreciate this if I felt it was due to patents.
But evidence suggests that some, perhaps many, software patents are
designed not to communicate, but to obscure, by making the patents as
broad as possible so the question is not "what is patented?" but "what
possible things can we declare as covered by this patent?".
And what better way to communicate an idea than to do it in a form that
can be read, checked, and implemented by a machine, which makes so few
assumptions and has so little common sense -- a computer, using a language
such as C, Prolog, Smalltalk, Haskell, ML, Fortran, ...? But then the
description is the same as the implementation (or AN implementation, with
which optimizers can do various things).
And, in general, a patent is *not* from somebody just sitting at a desk,
but is almost always from someone who has actually *done* something
at least arguably new (not yet another analysis of sorting).
Patents are often at least partially in the inventors' own words and
convey a certain understanding of the work, a view of the process of
innovation which never seems to be available in a journal article.
I'd hope that the abolishing of software patents, if accomplished, would not
do away with the likelihood of this useful information being published.
THE RANGE OF SOFTWARE PATENTS
>There are very many software patents issued, too many in fact. Did you
>know that the "pause-one-second, send +++, pause-one-second" sequence
>is patented by Hayes?
Yes. Although I do not *like* the protocol, I do think it was new at
the time, and not all that "obvious."
Well the particular sequence is "arbitrary", not "obvious", but the use
of a pause to signal control information in a constrained data stream
is as old as the spoken word. We do it all the time.
Let me ask you this: if a manufacturer built a modem that responded to
the following sequence:
<half-second-pause> ccc... <half-second-pause>
where c is a single character, and ... means as many more of them as
desired (up to, say, 10), would you consider this to infringe on the Hayes
patent?
If so, then this illustrates the difference between a software and a hardware
patent. The Hayes patent is not on a device that implements the sequence,
but on the sequence (the idea) itself, not even a particular rendering
of it. So generalizations and abstractions of the idea are potentially
infringing, which is what I object to -- as did our Founding Fathers, who
clearly never intended to allow the patenting of ideas, but implementations.
Software is the realm of the expression of ideas being equivalent to
their implementations, and in practice that is becoming more and more true
all the time.
If not, then the Hayes patent (and perhaps most or all software patents)
is fundamentally useless, because if someone can implement the above
protocol "instead of" the patented Hayes protocol, they've achieved
full practical compatibility with Hayes, since the Hayes sequence is a
proper subset of the sequence I show above. The same approach can
be taken with most any software patent -- it can be generalized to something
more permissive or apparently less efficient (though in the latter case,
optimizers can silently redo the optimizations, something that has never
been a concern with non-software patents).
Other questions worth considering: could a modem manufacturer get around
the Hayes patent by providing a modem that uses the BREAK signal (the earlier
and more robust means for getting the modem's attention, though I'm probably
using the wrong terminology), and handle compatibility (or let someone
else do it) by providing a software driver that intercepted and analyzed
data intended for the computer's serial driver, looking for the Hayes
sequence and translating it into the BREAK signal? If so, again the Hayes
patent is (nearly) useless except to get triple damages from companies that
already shipped modems thinking software patents were invalid (as has
already happened). If not, then again you see the difference between a
software and non-software patent -- emulating the idea entirely in
software being made illegal, even though the transformation of matter in
the device that recognizes and handles the "+++" sequence is entirely
different than in the Hayes device.
The upshot is that for the Hayes patent to be generally useful to them,
they have to own pretty much the entire concept of using a time delay
followed by an escape sequence (followed by another time delay), something
that has been done for years before the Hayes modem ever was invented.
This is probably a pretty easy patent to get around, technically.
The point is that it is a *standard*, and Hayes *established* that
standard. Why should they *not* get rewarded? If you want to do it
some other way and set up your own standard, then fine. Because they
got in early, made units, and established conventions, they earned the
right to benefit when society selected their work as standard.
I don't recall Hayes ever publishing "PATENT PENDING" on their communications
standard and/or on ads for their modems. If they had made it clear that
they would own some rights to any device that implemented their command
set, their modems probably would not have become a standard.
Meanwhile, the basic point is that they don't deserve a reward for "inventing"
this thing beyond their huge sales of the device that happens to implement
it. The patent mechanism is in place to encourage publication of processes,
and Hayes (properly, I understand) originally used it to publish how their
original modem was constructed, including (as an aside, apparently) the
"+++" sequence description. That allowed people to build different
implementations of the idea of a modem that implemented a command set --
Hayes'. Only after becoming successful (not wanting to squelch the
opportunity to become "standard" before it happened by stepping on clones'
toes too soon) did Hayes patent the "+++" sequence by itself, from what I've
read. Where was the necessity of the patent system on patenting something
that was inherently published -- an interface designed for use by humans and/
or computers? Answer: there was none, and that is largely the case for
software patents, especially ones involving interfaces (backing store,
XOR cursors, "+++", even canonical byte-ordering in a file).
>That is an example of a software patent -- even
>though it involves and can be implemented by hardware, it is entirely
>within the domain of algorithms and the passage of time, both of which
>are "laws of nature" according to patent terminology. Only since the '80s
Well, there *are* no inventions which escape the "laws of nature."
Obviously. But some reside fundamentally only in those laws; these are
software patents. Most accomplish something fundamentally involving the
transformation of matter (and energy); these are not software patents.
"+++" is patented as an idea; I have no objection to the existence of a
patent on a particularly clever (nonobvious) device that does the work
of detecting "+++", because that'd be along the intent of the patent system --
a patent on a process, not an idea, and it'd allow people to come up with
new and entirely different ways of doing the same thing -- recognizing
"+++". Even if they transformed matter to the same effect, they could
use a different implementation to do it -- just as modem mfrs. could and
did implement different machines to do the matter-transforming aspects of
the modem.
You could (and might) argue that the matter-transforming nature of "+++"
involves diddling voltages on RS232 lines, but as I suggest, Hayes probably
would not see the patent as that limiting, and in any case the objection
to software patents in this case would be that since Hayes does not own
the patents on RS232 lines themselves and they are used to transfer
arbitrary data whose interpretation is entirely up to the users of those
lines, Hayes should have absolutely no rights over what kinds of interchanges
happen over those lines. (I suppose that if Hayes built a combination
external modem/internal chip that communicated over a proprietary
physical connection, I'd accept a patent on the interface since it could and
would be entirely limited to and specified in terms of the voltage changes
across the connection among other things, i.e. matter transformations...but
then, they could have done that, but chose to get a wider audience by using
a more standard interface they did not develop, so where do they get off
being allowed to tell others for how much $$ they can build a device that
hangs off the same standard interface and recognizes time delays as meaning
something special?)
Binary codings (not cryptology), are a good example of "algorithm" and
"time". But codings have long been subject to patent; coding theory
involves a lot of expensive research, and the results are directly
applicable to improving information flow and reducing error rate.
Algorithms and time, but not new. This has been the way the PTO has
operated, probably since the 50's.
I don't know anything about PTO practices in this area, but again, while I
accept the idea of allowing patents on a device that does binary encoding
or decoding, I don't support patents on the codings themselves. For
example, RSA, BCD, ASCII, CRC, and so on. So they're hard to develop;
it hasn't been shown that patents were required for them to be developed.
From what I've read about RSA, the development was ongoing and would have
been completed anyway, but some university (MIT?) either got greedy or
suckered into allowing patenting away of some of the stuff, amounting to
a software patent, and ALREADY interfering significantly with the creation
of free software that implements it (to the point where the contributor
apparently had to withdraw an implementation of it). You'll say well he
pirated an idea, and perhaps the current law agrees, but I say what he did
should not have been considered piracy, since software patents should not
be valid -- just want to make that clear.
EXAMPLE OF SOFTWARE PATENTS
>All of the software patents I've heard of were well-understood throughout
>the industry before the patents were published. Please give me a counter-
>example of one where the patent truly published a brand-new approach to
>doing something and that was in the software/algorithm domain.
This question is inherently misleading. A patent is open literature,
but not widely read. *After* a person or company has decided to
publish the invention, they would be crazy not to try to publish
the idea in other forums as well.
That apparently is not the order in which things normally happen for software
patents. LZW was published, from what I've read, before the author decided
to seek a patent, to the chagrin of those who implemented compress. It is so
quick and easy to publish an adequate description of software ideas compared
to non-software that it makes little sense to wait for the patent process, so
the latter is done only as a means to secure rights to something that would
have been published anyway (in most cases) -- an abuse of the raison d'etre of
patents.
The reason the question is deceptive is that, to meet its requirements,
we must find something which was patented but *not* otherwise published,
and this would be crazy. And it is incorrect to then reason that "all
new ideas are in the open literature anyway," because it is the
patent which has *forced* the idea into the open literature. This
fallacy is called "post hoc ergo propter hoc."
I meant "effectively published before the patent was available". Again,
please give me a counterexample -- something that was quietly put through
the entire patent process and did not become published until the patent
was approved (or was published within a year, or whatever the legal timeframe
is, with the words "PATENT PENDING"). Apparently MIPSco may already be
creating a counterexample based on what I read in comp.arch -- perhaps as
a result of the huge flap over software patents. If so, it does mean they've
given everyone an opportunity to avoid, if they wish, making use of the
information they've published with that warning -- so people have no excuse
if they get stuck with files/machines requiring that patented idea (whatever
it is) to be useful and MIPSco either wants to charge them huge $$$ or
refuses to license it to them at all.
It is not possible to know whether if, without patents, an invention
would have been made public. But it does seem obvious that *someone*
thought each invention was "important," or no patent application would
have been made. Remembering our Capitalist system, one must wonder
whether that same person would have *released* the invention without a
way to profit from it. If not, then it would never have appeared in
the literature.
Again, most things for which software patents are obtained already were
published by the "owner" in one form or another, and in many cases, I suspect
the motivation for obtaining a patent was lawyer/bean-counter driven.
I can't imagine anyone thought canonical byte-ordering, backing store, XOR
cursor, "+++", were "important" to the software industry except insofar as
they allowed someone to make a lot of money off of it.
Remember, "+++", backing store, and so on, were released entirely
independently of their patentability. In fact, there probably was
significant question as to whether the patents would go through at the
time of release, due to the nature of the patent mechanism, but the
releases happened anyway -- there was not likely to be a chart showing
a major loss of revenue if the patents were rejected.
In fact, we have some evidence that this is true, for *most* software
is distributed under attempted license agreements. Some software is
distributed under license agreements with real teeth. These people
must think they have *something* to protect, and that Copyright and
object code alone will not do it. Maybe they are right.
"These people" usually are lawyers. Also, remember the main purpose behind
various protection agreements is to protect against the cheap copying that
is inherent in the software field and that distinguishes it from most any
other field. I think few such publishers really worry about their special
algorithms -- what is expensive about software is not the creation of new
ideas, typically, but the way thousands of millions of otherwise "cheap"
ideas are put together to make an application. It is the collection and
organization that represents the genius of a given application, typically,
and that is usually not patentable (or shouldn't be).
IMPACT ON HARDWARE PATENTS
>It is true that patenting a hardware logic mechanism that implements
>something realizable in software would be risky, given that once someone
>did it in software, they were out of the reach of patent-infringement
>charges. But that raises an interesting question: if the hardware logic
>is so simple that somebody can knock off an equivalent version in
>software, what's the point of letting it be patentable anyway? Remember,
>hardware that drives RAM, I/O busses, and the like, would still be
>patentable because software can't do it itself -- one always needs
>specific hardware to accomplish that.
Patents are only granted for *new* inventions, and "RAM, I/O busses,
and the like" have been around for a while. Incremental and/or
relatively non-limiting changes are still patented, but there is
less and less left which is new. Moreover, an I/O chip must work with
someone else's idea of an I/O interface, one long-established and
standardized. One does not have the freedom to innovate a new
I/O interface for a new peripheral chip.
Um, it is hard for me to give examples of why abolishing software patents
would not inherently destabilize all hardware patents and NOT use things
that have been around for a while. Is it not sufficient to use examples
as if this were 10 or 20 years ago but software patents were permitted?
In other discussion you (and the LPF) have said that software systems
can be *far more complex* than hardware systems (probably for the same
realization investment). That hardware is "simple" follows from the
assumption that software systems are generally "more complex." Thus,
we would expect that *most* digital designs could be "knocked off,"
when we have a fast-enough single-chip design. In this way you
potentially threaten the patent protection for many hardware designs,
not just a hypothetical one or two.
Perhaps, but I don't see why that is bad. It'll hardly prevent chip makers
from continuing to push the envelope of what can be done with chips, since
that very process (prior to the existence of software patents) is what has
made the computer industry possible: replacing specialized hardware systems
with general-purpose software-driven computers without having to worry
about licensing patented ideas. Now you seem to be arguing this line:
"Now that the computer industry has replaced a certain amount of the
non-computerized industry with software-driven equivalent machinery, and
without having to worry about patent violations, it is time to protect the
computer industry against this being done to itself." So it becomes
potentially illegal to build an emulator for an 8086 chip that runs on
an M88K if the "ideas" represented by the instruction set on the 8086
chip are patented? No way I'm going to support that notion, yet that is
inherently part of allowing software patents, as the "+++" patent proves.
The point is that information-driven aspects of research take as much
money (or more!) than hardware innovations. If someone can rip off
that research--EVEN WHEN IMPLEMENTED IN HARDWARE--the research may not
be made. I know this in my case, and my (second-hand) contact with
venture capital makes me believe it even more: If those guys can't see
a way to get their money *out* (5x investment in 7 yrs), they will not
put money *in.* That's Capitalism. This is the economic system we have
to work with. As bad as it is, it is at least arguably the best thing
around. If you want to challenge the system itself, OK, but make that
clear.
I strongly support the system. Believe me, when the VC guys begin to
realize that creation and shipment of software is slowed down 1K-fold or
more as software patents become more ubiquitous and thorny, they'll abandon
the whole field. Maybe that'll be the best thing after all? :-)
The other thing to realize is that patents tend to provide the most
protection several years after the shipment of the product and beyond.
It takes that long for somebody else to "productize" and build up sales.
The companies that most strongly argue (by word and action) for software-
patent protection and interface-copyright protection for their products
typically have done so only long after release and incredible success
(financially and otherwise) for a great product, but when they're no longer
succeeding at making future great products (or are worried about it -- Lotus,
Ashton-Tate, IBM, and Apple all come to mind). On the other hand, companies
(like HP as an example) that do a great job coming out with innovative
product after innovative product typically do not have time for and object
to the existence of such newly-created forms of monopoly, and often end
up victims of it -- so we punish the creative and reward those who are
leaning on money-making schemes instead of new creativity.
As an aside, Zabigniev Brezinski (?) was interviewed on MacNeil/Lehrer
tonight (91-9-5), and was asked his opinion as to the causes of the
collapse of Communism. The very first thing he mentioned was that
Communism had misunderstood the nature of the human being, in particular,
the relationship between creativity and the acquisition of goods.
The LPF claims that this does not apply to software. I claim that
they are wrong.
It's Zbigniew Brezinski, I believe -- you were very close!
I believe there have been studies showing that expectation of reward
actually retards the creative process, which sounds incredible to me.
Anyway, I don't see abolishing software patents as risking this -- more
like enhancing the expectation of being able to do a lot of good work and
get rewarded for it.
I know that software patents will greatly diminish the reward/effort ratio
for me -- but note that I count as "reward" things like doing good for
society as a whole, not just money, and as "effort" things like going through
piles of documents on software patents and fighting to preserve my livelihood
in court when somebody sues me for something I could not possibly avoid
doing.
CAN RELEASED SOFTWARE BE "SECRET"?
>...released software doesn't
>really contain secret ideas -- at least, not for long, if those ideas are
>valuable.
Well, I guess this is one reason that *important* software is almost
always sold under a license agreement. Often, that agreement specifies
that the techniques in the program are proprietary. The term "secret"
depends upon your particular definition, but if one is not allowed to
use the idea, *or* describe it in print, what would *you* call it?
Note that this is quite common, and is *not* an effect of "software
patents."
It is questionable whether any of this is held up in court -- I remember
reading that one case resulted in a judge saying that the prohibitions
against diassembly and such were null and void on the shrink-wrap
legal agreement. I don't know if this has since been overturned, but it
is kind of bizarre to accept that you can't read the object code of a
product you bought and now own a copy of -- it's like being told you can
buy a book but, if it has a license agreement saying so, you can't examine
the grammar and sentence construction used by the writer. It's the kind of
infringement on freedom that, like letting people sign up to be slaves, this
society ultimately has a revulsion against. (And I'm someone who generally
believes that if you effectively sign up for something, you should be bound
by it -- so people who buy and virtually accept license agreements shouldn't
disassemble, and I abide by this myself -- yet I can understand the revulsion
to enforcing this in court.)
However, released software is also *not* a "full and open disclosure."
It may be that a few lone hackers will know its secrets (along with
the disassembly departments in the major software firms). But most
individual programmers, most students, most professors will not
have access to that information. That is why object-code software
does not constitute "prior art."
More than "a few lone hackers" will know it. Especially since many of the
"patentable ideas" are blatantly obvious upon use -- even things like
backing store. The first time ever I used a Macintosh, within five minutes
it was obvious to me that while ordinary window occlusion does not save
bitmaps for the occluded portion of the window, pull-down menus did cause
the occluded stuff to be saved and later restored. I wondered right then
and there (in 1984 I think) whether this mechanism handled asynchronous
updates to the occluded windows and thus whether the saved stuff was
asynchronously updated or potentially out-of-date when restored. In other
words, based on only a little thought about windowing systems and a few
minutes observation, I "created" the idea of backing store. On today's
bit-mapped graphic systems, an implementation of that idea (which frankly
I'd thought about in other forms much earlier) would take only a day or so;
the non-software equivalent implementation time of such an idea might be
several years (as in "we need a light bulb"->"here is how to make a light
bulb"). That is why software patents need not and should not exist, while
non-software patents are needed (for now).
WHOSE PROPERTY IS IT?
>The courts will help you decide, if you are unable to do so.
>That is just the kind of thing I want to avoid -- having the courts decide
Our society is based on private ownership. It is up to each citizen
to *be able* to decide who owns what, and not violate someone else's
ownership. You may or may not *agree* with "software patents," but
you are bound to *respect* them, or find yourself in court.
Uh, the whole point of the discussion is whether software patents should
be abolished. In any case I am not "bound to respect them", because I am a
free citizen of a country that prides itself on its freedom. And until I
undertake the task of releasing software on my own (something I do not
plan to do until software patents are permanently abolished, in line with
the original purpose of patent law), I need take no action regarding software
patents except, in this case, political action towards abolishing them (as
in by joining the LPF). That is hardly "respect", and yet is hardly
illegal. (Interesting how you bring up Communist Russia in an apparent
attempt to paint my or the LPF's views on creating software in "red" ink,
yet your tendency to take my stated position against software patents as
an indication of some kind of criminal nature on my part is much more clearly
aligned with the way the Soviets and many other totalitarian governments
actually operate -- where they assume that someone who speaks out against
government practices, laws, whatever, are criminals. Just because I am
helping to abolish software patents does not mean I am a pirate, a criminal,
a bad citizen, or even a nerd!)
If your distributed program infringes someone's patent, they will let
you know. You can:
a) dispute the infringement,
b) dispute the patent,
c) negotiate a license, or
d) implement a non-infringing solution.
Option (d) is quite common in hardware design.
What does this mean for free software, where the program with the
infringing design continues to propagate, especially if I do not really
choose option d (or implement it effectively -- say by doing something
much slower) and as long as I personally no longer release new copies?
The answer, unfortunately, is that I possibly could be held liable for
all copies estimated to be in use. If you can assure me in a binding
manner (i.e. assume full responsibility if you are wrong), then I can
write all the (potentially) patent-violating software I want and release
it via making it ftp'able, and not actively ship a single disk or tape.
Yet this is hardly in the spirit of patent protection, and again highlights
the difference between software and hardware (i.e. I need expend no funds
to permit others to make additional copies of my work available, and they
can do it for next to nothing).
But in my heart even if this is permitted I cannot do something that is
not in line with the spirit of the law. If the intent of patent law, even
with the (IMHO, entirely unjust) inclusion of software patents, is to
prevent productive use of patented ideas (not just processes) without
prior license agreement, then I cannot personally release software, because
it might violate patents (and I have no desire to invest the time and
effort to determine if that is the case). Specifically, the major
package I left my last full-time job to write (GNU Fortran being really just
a warm-up exercise) will basically be, potentially, a major software-
patent violator in that it will greatly ease the transition from describing
an idea to obtaining a useful, reasonably fast implementation of it, and
greatly facilitate the description of ideas using canonical building blocks.
This package would end up making it so easy for people to unknowingly
violate software patents that I couldn't possibly ever release it and still
sleep nights. (This is assuming I can even build it.)
Hardware designers have long had the problem of respecting someone
else's rights, even when their designs were original. In my experience,
hardware designers don't complain too much about designing around
patents, probably because they expect others to respect *their*
designs and rights.
If I were a hardware designer, I'd feel the same way -- after all, just
getting the idea is the easy part, but then I have to spend 6 months
to a year (or more) to make a satisfactory implementation of it, and THAT
is what gets patented -- not the idea (except, these days, as a software
patent -- so why build the hardware at all, I wonder? Just patent a
software version of it, easy to implement, then wait for other people
to implement fast, usable hardware versions and collect license fees from
them!)
If software designers had the same competence in their field that
hardware designers do in theirs, they would have no trouble getting
around most patents. And the remaining patents which cannot be avoided
(after some study and work) really indicate how important they are.
Explain to me how you would write a program to read and decompress
gigabytes of files compressed by compress without infringing the LZW
patent (and no cheating by licensing it). That does not mean LZW is
important -- with software patents, often what is patented is largely
arbitrary ("+++" instead of "---", XOR cursor instead of flashing, and
so on) but ensconsed via the requirements for compatibility.
Since it is so critical for the viability of the software industry that
machines and systems become more and more compatible, I fail to see how
allowing firms to patent and thus control software and interfaces will
allow for the viability of the industry!
RESPECTING PROPERTY RIGHTS
> Respecting intellectual property rights is a hassle, and WILL
> ALWAYS BE a hassle. Shall we simply "say yes to piracy?"
> (I believe that the unlicensed use of intellectual property is
> commonly called piracy.)
>Respecting intellectual property rights in this case would mean I have rights
>to my own ideas even if someone else happened to come up with them first.
>You wish to deny me of those rights -- even when extended to the realm of
>my own thoughts implemented in computer programs I wish to distribute.
Independent invention has *never* been an acceptable reason for
patent infringement. This is *not* a "software patents" issue.
You may not *like* the idea, but it is hardly new. (It is probably
necessary because of all the "honest" people out there: "I invented
it independently. Yeah, independently, that's the ticket.")
Again, the point is that with software, the idea IS what gets patented,
not the implementation -- you said this yourself (pointing out, correctly,
that the implementation is protected by copyright; whereas with non-
software patents, the idea is not patented but the process is, and
(perhaps) the blueprints protected by copyright). Ideas often are fairly
easy to come by and almost (in my opinion, always) are the result of
"acts of God" and hence never should be considered "property".
Thus, when you re-invent a patented invention, it is *not* *your*
*invention.* From the get-go you *do not have* rights over something
someone else has patented. This is the state of your rights. You
cannot be denied rights which you do not have.
This is what I object to, and claim is a violation of the principle behind
the patent system as framed by our Founding Fathers. Again, remember that
for software, the idea IS the invention (or, if not, they are getting
closer and closer all the time as software development techniques and tools
are improving); that is not true with other fields. The IDEA of a lightbulb
should not have been patentable, and it wasn't -- the implementation of
using a particular kind of filament in an evacuated glass bulb was
patented, and properly so.
As far as the rest of your logic, by that logic we could deny everyone
freedom of speech by letting the government pass laws (without constitutional
review) preventing us from saying "the government is bad" or anything to
that effect. Then you could say "From the get-go you *do not have*
rights to freedom of speech. This is the state of your rights. You
cannot be denied rights which you do not have." I fail to see any true
logic in this -- especially surprising from one who quoted Latin at me
earlier (which I excised from this post because it didn't seem to contribute
anything to the discussion)!
The point is, I have always had the right to implement and release
any software I wanted to, at least until 1980 or so, and it remains to
be seen to what extent the new restrictions of my rights would hold up
in court (though I'm not going to be the one to test this).
>If
>software patents are abolished, it is not piracy for me to use someone else's
>software algorithm any more than it is piracy to give away a copy of
>GNU EMACS.
The operable word here is "if," but your sentence is in the present
tense. If you write software which infringes some else's patent and
then knowingly use it or distribute it, even "under the protection"
of an organization, the term "piracy" would seem very appropriate.
I think the sentence was clear enough, as was the original context. I
still resent your attempt to characterize me as a "pirate" apparently as
a means for getting "a leg up" in this debate. If you knew anything about
me, you'd know that committing any form of crime is the furthest thing from
my thought or intent, and I've lived my life largely in accord from this.
I've never used drugs, stolen stuff, and so on, yet you assume I'd decide
to be a "pirate" by misinterpreting things I say. You've committed more
illegalities (libel? slander? misrepresenting my own statements? calling me
a liar, effectively?) in these posts than I probably have in my entire
lifetime.
IF, in the future things change, well, former rum-runners have been
made ambassadors. But *for now* the issue is clear.
I'd appreciate a little less slander of my character and in place of it
a public apology for attempting to characterize me as a pirate or even as
a potential pirate.
>The point is that what you call "piracy", if you are indeed, as
>you seem to be, extending it to include cases where one simply has an idea
>that someone else had before and uses it in a product, happens all the time
>in software and far more often than in any other field where patents are
>permitted.
I have never said that, nor have I "seemed" to say that. IF someone
HAS A PATENT, *then* you are bound to respect it, at least with regard
to distribution or economically-significant use.
How do you know that a) they have it, b) that you're using it, especially
when you're compiler makes it up for you? I simply do not intend to waste
my life looking through the literature of software patents for things my
compiler and I might have done in a program -- so I choose, in the meantime,
not to release my own software. This cannot possibly make me a "pirate",
since those who release or use my software take full responsibility for
any patent violations therein. (And this puts me squarely in the same
position as 99.99% of all the other software programmers and contract
houses out there.) And, of course, looking through the existing patent
literature is entirely inadequate in determine whether you're "pirating"
someone else's idea, as you know.
It is worthwhile mentioning that this paranoia about all the other
patents which you may stumble into in the course of everyday programming
goes away if, as I believe, patents are rare. Knuth, and the other
programming references, and decades of scads of magazines and journals
has made *a lot* of material available. In my experience, it is *quite*
difficult to obtain a patent.
So Knuth, with all his genius, never would have come up with the idea
of canonical byte ordering; backing store; "+++", and other truly
ingenious things? Ridiculous. If we even began to collect a fraction of
what appears to be patentable in the software field and publish it, a
stack of CD-ROMs from earth to the moon would not be enough to contain it
all. Another distinction between hardware and software! Software is
infinitely interoperable, effectively, while hardware is not (due to
tolerances, physical-space requirements, power requirements, and so on).
I do not say that all PTO decisions are right; *they* would not say
that. Can you say "bureaucracy?" We are talking decisions by humans,
albeit under law, and they are as liable to error as other legal
decisions. With thousands of patents issued every week, some will be
turkeys. But, *on the whole*, the system seems to work.
By what assessment? I've yet to see any published or posted article in
favor of software patents that illustrates given cases where they "worked"
to an extent even remotely as detailed as the anti-software-patent people
have done by publicizing backing-store, "+++", and so on. So, I've
only seen cases where the system fails in the area of software patents.
Sure it fails occasionally in other areas, like medicine and such, but
despite those not being my fields, I'm aware of many more successful uses
of patent law. Software, my field, has yet to show me any cases where
software patents were truly useful.
>You are saying an idea I have is not
>my property just because someone else had it first. I am saying I can
>agree with this only insofar as it applies the way it has for a couple
>hundred years -- to matter-transforming machinery, but NOT to algorithms,
>because in the former case I can see an overall advantage to society for
>allowing such usurping of personal intellectual property rights, whereas
>in the latter case I can see no such advantage.
I am compelled to point out again that you do not get to pick and choose
which laws you will or will not obey--at least, not without risk.
I am compelled to point out again that I never said I did. I'm saying I
will avoid taking any actions (however constructive for the good of
society) that might be interpreted by the courts as illegal because I can
see no reasonable way of making an a priori determination on my own. I
refuse to support any laws that brand me a criminal (in a criminal or
civil sense) for taking some action I could not possibly foresee, without
undue effort, would so brand me. So in addition to not supporting those
laws and, perhaps, actively campaigning against them (and software patents
are NOT the most important case in my life -- the criminalization of the
use of spiritual healing for children is), to be a law-abiding citizen and
take the least risk I must avoid even getting remotely near any situation
where I might so infringe. If that ultimately means I cannot safely write
software (the likely outcome of software patents), so be it.
Perhaps you're losing the context of the discussion (easy to understand,
a few words have been exchanged :-), but the original post was my comment
on the concept of "intellectual property" and how I felt that to really
protect it, a person's own ideas should remain his or her own for his or
her use, and patents, which reassign "property" based on who implements an
idea first, should be abolished. There is a difference between "rights"
and "laws" -- "property rights" refer to the inherent rights people have
to their own property, while "property laws" might, for example, enumerate
cases where people give up those rights for various reasons. Laws typically
represent exceptions to fundamental rights. They don't (or shouldn't) be
considered as redefining fundamental rights -- you have the right to
free speech, but not the right (based on law) to yell "Fire" in a crowded
movie theatre as a prank -- yet most people agree that this does not mean
your rights to free speech are still entirely intact, just defined to not
include yelling "Fire", but that a special exception is made for a useful
reason, so your rights to free speech are impinged upon in certain cases.
So "intellectual property rights" is a phrase that should and, I believe,
does connote the inherent rights everyone has to think whatever they
wish to think, including ideas, fantasies, and so on -- and the further
rights allowed by the Constitution and the Declaration of Independence
allow, quite naturally, that these intellectual property rights include
the USE of ideas you have in your own pursuit of happiness.
Now, just as the framers changed from "property" to "pursuit of happiness"
so that property taxes and such could be assessed without constitution-
based challenge, they included the allowance for a patent mechanism, which
would naturally (and they knew this) occlude, or impinge upon, intellectual
property rights and the use thereof, as long as the impingements were
shown to be "useful to the promotion of the arts". This has never been
shown for software design, in fact it has been shown to be useful to its
demotion given the cases we already have, so I argue that the special case
of impinging on my own intellectual property rights, which for software
is already more severe than pretty much any other governmental impingement
(again, short of what I decide is the best method of healing for my
children) in that it literally invades and impedes my ability to execute
my career by impeding how I think about problems, is illegitimate in a
fundamental way, just as laws giving blacks only 3/5th a vote per person
were, and therefore must be undone.
By definition, all ideas in my head ARE my intellectual property. Law
may usurp my rights to use my ideas in certain cases, but this does not
change the definition of intellectual property, only the permissible uses
of it. So that is why I object to your saying ideas I have are NOT my
property just because someone else has them and especially your claim that
I am potentially a criminal for believing they are. (In case it isn't
obvious, ideas I have the someone else also has are BOTH our intellectual
properties. The whole concept of patent law and, in fact, all civilization
I know of, includes the idea that ideas are never owned by individuals,
or possessed by one individual to the exclusion of another. Patent law
used to recognize this more explicitly until the last decade.)
In the meantime, as I am not in the mood to engage in civil disobedience,
I instead must try and live within the confines of an unjust law. This
is hardly criminal behavior.
You may or may not "feel" that something is "yours" for any particular
reason. You may have had the idea, or known someone who sold it to
you, or inherited it from your grandfather. But societies' definition
of your "right" is a *legal* definition, which, in this instance, does
not correspond to your feelings. Saying that something "should" be
some way because you "feel" it, is really sort of silly.
I'm glad to hear that you aren't saying software patents "should" exist
because you "feel" they should. I have yet to see what you are saying
about why they should exist -- saying they should exist "because they
already do" is also a wonderful justification for various horrible laws
in various countries. It almost worked for slavery, denial of voting
rights to women and people of color, and other things in the past -- so
why not use it now, I guess? Me, I prefer to explain why something should
or should not exist from as an ideal perspective as I can muster, tempered
by current realities. I accept that non-software patents are still
legitimate while I reject the legitimacy of software patents (and hope and
pray the PTO sees the light and does the same for real). However, if
we get to the point in hardware where we nearly are in software -- to the
point where, for less than the cost of a new car, someone can have on their
desk a device that knows all the laws of quantum mechanics, have a data base
on the general state of the earth including the relative quantities of
various elements and the limitations on atomic processes with regard to
preserving life, and that does analysis across these domains relatively
quickly, so that someone can type (or mouse) a query for a device that
is easy to build, inexpensive to operate, and efficiently transforms lead
to gold, then at that point I (or, probably, others) will argue that there
no longer is a need for patents at all -- because there no longer is much
implementation time required for any invention, proportional to the scope
of the idea.
As for an invention not being yours if someone else had the idea first,
this is not, as you note, a "software patents" issue. But then you
go on to cloud the issue:
The invention is mine even if someone else had the idea first, unless they
invented the same machine (process) first. The idea for lightbulbs, planes,
and so on, had been "had" probably years, decades, or even centuries earlier;
the patents on devices like this were obtained by those who sweated out and
published information on the first inventions, or processes, that made these
ideas manifest in our experience. It is this latter phase that is
comparatively tiny in the software field.
In a limited sense, inventions and patents are, and have always been,
ideas. They are designs on paper. These designs do not operate.
Of course, machinery made to those designs *may* operate. Many such
designs did not "change matter" at all (e.g., player piano). And
computer machinery which functions according to those designs does
indeed make physical changes, at least in stored charge. Moreover,
it is obvious that a (complex and slow) *mechanical* computer could
be made to execute software.
I disagree with this and believe my earlier arguments successfully
refute it. Whether or not a particular machine can execute software is
beside the point -- the point is that the patent is on the software, not
a particular machine (implementation) of it, and this is substantially
a recent change (~10 years old) in the PTO. Previous to that, one could
get around patents by accomplishing the same effect with a totally
different machine -- that is no longer true, since it is the effect itself
that can be patented (effect being the useful outcome of an idea).
Software patents, had they applied to a player piano, would have covered
any device that reads musical information from any media and sequences
the resulting notes and time, independently of whether any sound itself
was produced (since obviously the piano itself predated the player piano).
Instead, the patent on a player piano would be on a particular mechanism,
but probably (and properly) not the coding of the rolls and certainly not
the very idea of a machine that converted parallel lists of notes to
musical content. Until now, when that can be patented.
This repeated attempt to imply that "software patents" are invalid
because the computer does not go through physical changes is clearly
specious.
That is never what I said, since the computer DOES go through physical
changes -- electrical ones at least. The fundamental distinction I have
been able to see in software patents is that they are fundamentally
concerned with no transformation of matter, but with transformation of
symbolic information (including information on the passage of time).
The backing-store patent is not fundamentally concerned with the hardware
of a video display, but with the idea of storing updates to an occluded
window in an area of memory (not fundamentally a piece of RAM) so that if
the window comes to the front it may be rapidly updated (an optimization,
basically, and completely hardware-independent). And here it is said that
X Windows infringes on it, even though X is a completely, totally, entirely
different implementation of a windowing system that itself looks completely,
totally, and entirely different to pretty much any ordinary person.
Saying that X infringes on AT&T's patent is at about the same level as saying
that that Japanese-built (?) robot that sits at a piano, (I think) scans
printed sheet music and plays it on the piano with mechanical hands
infringes on a patent for a player-piano. We know this is absurd, but in
the realm of software patents and their continued viability, it'd be
necessary.
DISTRIBUTION OF NEW IDEAS
>I'd like the opportunity to make
>a plethora of software-patentable ideas available quickly and easily without
>risking being sued because someone else happened to have thought of them
>first.
No, that is *not* what you want. Because you can do *that* with no
risk whatsoever. Publishing *ideas* and making *ideas* available does
*not* violate a patent. What *you* want to do is to be able to *use*
patented ideas. Please make yourself clear on this.
Why are you claiming I do not want what I say I want? When I say something,
I mean it, and I have little interest in anyone who than says I don't want
it.
When I publish an idea, I want to use the best form for communicating it in
a concise, expressive form. Currently, C and other languages are the closest;
perhaps LISP, Haskell, ML, or Prolog are better; ideally, I'd like to make
up my own language. Making general English-based statements leaves a lot
of fuzzines that not only makes other people find it hard to understand what
I'm striving for but also leaves me fuzzy about it. Using a computer language
instead of a human language greatly improves my ability to find gaps in the
explanation, test out the explanation as I fill in the gaps, check out how
well my ideas actually work, and then deliver the resulting description in a
way that everyone else can read. Unfortunately, because a computer can read
them too, I could easily violate a patent.
I choose to write my software ideas in a computer language, mostly, and there
should be nothing in the law of our land to disallow that -- but software
patents do so. Yet publishing in a clear computer language would be much
more useful than in English, as far as communicating (in your words, I
believe) in a way that cannot be misunderstood what the idea (or process)
is. Especially when the ideas are useful only as a huge number of them
are put together in a particular way, as is almost always the case with
software, and certainly with my ideas -- publishing little snippets of half-
baked ideas will do nobody any good, and perhaps a lot of bad if they
read and believed what I wrote in fuzzy English.
Further, even if I had published the following ten years ago:
"When designing software to run on a variety of platforms, rather than
redesign the file format for each machine, consider designing a single
file format that can be supported on all machines. Then each platforms'
port of your product must only make the translations necessary for its
current host when reading and writing this file, and the result is that
the file containing the user's data (or whatever) can be freely
exchanged between systems without special conversion procedures. Even
if binary coding is desired for speed, a standard binary coding of
data can be decided upon and used."
I doubt this would prevent the successful patenting and infringement lawsuits
on the canonical byte-ordering "idea", because I wouldn't have specifically
mentioned using the technique for integers, and software patents tend to
represent specific combinations of specific instances of widely recognized
concepts. This is why publishing is of little use and why I feel we can't
possibly begin to publish all the potentially useful (and software-
patentable) ideas we'll need over the next 17 years.
MORE ON INTELLECTUAL PROPERTY
> >If we are so willing to avoid unjust conviction in a
> >heinous case, why do you suggest it is ok for someone to be
> >convicted or otherwise taken for all the money he or she has
> >simply because they wrote and distributed compress or X?
>
> Well, that depends upon whether they have been properly warned that
> they are making use of intellectual property which does not belong
> to them. If so, and they continue, then I guess they made their
> own decision, and they should be willing to back it up in court.
>
>We ALL are making use of intellectual property that does not "belong" to
>us.
No, we are not. The key word here is "property." If it does not
belong to someone, it is not their property. Of course we stand on
the shoulders of those who have gone before, and in 17 years, a new
patent will be one more shoulder, and completely free.
Again, defining "property" in any way you (and the PTO) want makes it
easy to assail someone else's use of the term. If the IRS defined any
real estate held by a taxpayer as its own "property", would you consider
that just and agree that your house and land were no longer your "property"
simply because the IRS said so and nobody seemed to object for a few
years? Or would you get incredibly annoyed with people who, every time you
said "But I have a right to my own property!", responded with "The key
word here is 'property'. It does not belong to you, so it is not your
property, it is the IRS' property. Of course, if and when the IRS sells it
back to you in 17 years, it will be your property again." Even though you'd
been paying your taxes just fine! Now you have some idea of how you make
me feel with these constant distortions of my rights and my intellectual
property based on a spurious reinterpretation by the PTO of patent law
because someone in the Reagan administration said "make businesses more
happy by getting looser with patent guidelines".
My point was that we all are using ideas that, mostly, did not originate
with us, and to the extent that present patent law allows ideas themselves
to be patented, that means are are all using intellectual property that
does not belong to us by the PTO's definition. A field like software, which
depends crucially on the ease with which a programmer can draw on ideas and
bang them into a programming system, is clearly going to greatly suffer under
any law that makes ideas into intellectual property in the sense that one
person can "own" an idea to the exclusion of the use of that idea by anyone
else, even if they come up with it on their own.
The Founding Fathers accepted something they found basically repugnant I'm
sure, that a person could "own" the use of an invention (process) even if
somebody else came up with it independently, but they felt that because of
the long stretch of time needed to come up with the invention given the
initial idea (which they never intended protection be provided for), the
likelihood of concurrent invention was unlikely, and the alternative of
not publishing information on the process was even more abhorrent. Neither
of these qualifiers apply to the software field, as I've said many times
and have yet to see an adequate rebuttal in your posts. (I'll elaborate:
claiming that software-patent literature CAN be useful is insufficient,
because you have not shown it is substantially more useful than other
ongoing means of publication; and you have not succesfully argued that
implementation of an idea takes a long enough time in the software field
for patents to be necessary.)
>The originators of patent (and copyright) law made it plain that
>certain things belonged to nobody and everybody: laws of nature; obvious
>ideas; typefaces (fonts); and so on. Laws of nature has always included
>algorithms and software,
This seems *deliberately* deceptive. The phrase "laws of nature" clearly
has *not* always included "software."
Algorithms and software are indistinguishable.
>and the PTO never had any difficulty making
>the distinction, except that until the 1980s they took it to mean that
>no idea that even included a law of nature (algorithm) done in software
>as a critical element couldn't be patented, then they went too far in the
>other direction.
No. The PTO is now being consistent. Software which is not functioning
on hardware is subject to Copyright; it is a written work. Software
which is functioning does so *on hardware* and accomplishes real,
physical work, just like any other electronic machine.
Why then is the PTO asking for input on "software patents" if they can't
make the distinction, or if they see it as "being consistent" to lump them
in with other patents? In fact, they made a distinct change in their own
practices in response to a political/economic request, and they can undo
it just as quickly, easily, and quietly (well, except for us LPF members
who'll celebrate until we drop!).
The whole point of a computer is a generalized logic machine. The
machine was *designed* to be customized. It was designed so that any
possible memory state could be used. Software has not added one thing
to the hardware other than to select one of the many possibilities which
were originally designed into it. Software cannot make the machine
do *any* other instruction than was designed into the hardware. Software
can only *select* among *existing* hardware instructions, the way a
player-piano roll selects keys. Software is *not* separate from the
hardware; when "software" executes, *only* the hardware is present, in
one of its many possible states. Software, when it functions, is only a
state of the hardware. With respect to patents, "software" is a misnomer:
there is *no* *different* *thing* to which we can apply the term; the
only thing which is present is the physical machine in one of its
possible states. When it functions, software IS hardware. If the
machine functions in a patented way, it must infringe. Software
configures the machine; if it configures the machine to infringe,
then the configuration must infringe, so the software must infringe.
This is entirely wrong in my opinion, since software patents are capable
of being summed up in state-and-time transition diagrams without invoking
the laws of (quantum) physics and other such things (chemistry and the
like).
If software patents are not special, why weren't player-piano rolls
patentable? Are you arguing that, were they new inventions today, the fugue
and the canon would be properly patentable? (After all, they are to
player-piano rolls what software-patentable techniques are to executable
programs.)
Remember, what a software patent covers is NOT an executable program, even
if one is needed to secure charges of infringement. What it covers is
the idea, not the expression, as you yourself have stated (implicitly in
some cases). The distinction of hardware/software machinery is thus
unimportant, since we are talking about the patenting of ideas. You can't
build a machine that IS an idea, yet patents were supposed to cover
machines (matter-transforming entities, if you will). Yet software
patents do not ever cover machines per se, they cover algorithms that,
when performed by some machine (whether electronic or mechanical or
-- someday, if not already -- biological), have direct utility. However,
the distinction is that the software patents do not ever cover the
specific machinery performing the algorithm! Unlike non-software
patents, which always do. (That is why an electronic version of a
player-piano would not infringe upon a mechanical version, because the
machine itself would be different -- unless you permit software patents,
in which case any machine that happens to accomplish the same task by
whatever means would infringe.)
This is why patents "now" apply to software. In the sense you mean,
there *is* no software. Only hardware machines function. And that
is why patents apply to functioning software.
But they don't, or modem manufacturers could build modems that are, in
hardware, completely unlike Hayes' modems and yet implement Hayes'
command set (including "+++") without paying licensing fees.
>Based on what I've seen patents awarded on in software, I'm being
>conservative with this estimate.
>
> I would like to see YOU, or ANYONE, actually come up with, and
> SUCCEED IN PATENTING 20 ideas from 3 hours work.
>
>If I had the tens of thousands of dollars and significant time, I or
>any decent programmer could do it. Do you really think it takes time
This really shows that you simply do not have a clue about what a
patent is. No wonder you are so paranoid.
Thanks for setting me straight. I guess many hours of reading at the
library, and the ongoing discussion (for which I've received tens of
supportive email comments and NO unsupportive ones -- how're you doing?)
misled me to believe I have even a clue about what a patent is.
YOU tell ME: how much $$ does it take to go through the patent process
on a fairly straightforward patent? How much time? Multiply that by
twenty. Now you've got an idea of what it takes to deal with patent
issues on three hours of creative programming.
Patentable ideas are rare and precious, and would be so even if they
had only to be "new." Previously-disclosed ideas cannot be patented.
Canonical byte-ordering, backing store, "+++", and so on, are NOT rare
and precious. They are varying combinations of: obvious; arbitrary;
application of well-known techniques to a new problem domain (like
obvious but recognizing some fundamental insight prior to the techniques
being well-known); application of well-known techniques to a new performance
domain (backing-store becoming useful only when systems had enough RAM);
and so on.
These are counterexamples to the idea that software-patentable ideas
are rare and precious.
To say that you have "20 new patentable ideas" is to say that *no
other person* on the planet has seen fit to describe ANY of these
ideas in print. You may be smart, but *nobody* is *that* smart.
Have you looked through Knuth lately? Or the dragon book? Or the
rest of the huge literature of software ideas which now *cannot* be
patented? Relax; things are better than you think.
No, that is NOT what saying "20 new patentable ideas" means. It means
I can easily have "invented", according to PTO rules, 20 "new and nonobvious"
techniques in software, that might turn out to have already been thought of
and put into the patent process (or perhaps published without my seeing
them). The point is not whether I'm truly coming up with completely
undiscovered things (something I'm not about to claim I do 20 of every
3 hours) but that I'm likely to come up with 20 or so things that the PTO
might, based on the current body of software patents, consider patentable,
meaning that either:
- I must publish my source code right away (no waiting for release)
and hope I beat anyone applying for the patent
- I must apply for a patent right away, putting off important work
and spending money I don't have to document the 20 ideas I had
in those three hours (which would take me at least another 37
at least)
- I must forge ahead and hope I don't get sued for patent
infringement later on
(Note that scanning the existing patent literature is perhaps useful but
does not qualify as a replacement for the above three possible courses
of action, especially since the last one is still a worry if the patent
in question is pending.)
The alternative is not to release software myself, and hope the FSF or
whoever can withstand the inevitable patent-infringement charges long
enough for me to do what I want to do in software.
A "patentable idea" must ALSO be useful AND non-obvious.
It's wonderful you consider "+++" to be non-obvious -- really helps persuade
a lot of people that I'm right! Same with your implicit approval of other
software patents I've mentioned.
Non-obvious is the real kicker. Usually when this is discussed on
Usenet, every mother's son labors under the delusion that this means
that the examiner sits back and imagines whether it was obvious
or not. And few examiners are computer scientists.
Is it a delusion that the PTO considers a Comp.Sci. degree inadequate
for hiring an examiner for software patents, while in every other field,
it considers a degree in that field adequate?
In fact, "obviousness" is technical term in patent law and the
examination process. Obviousness can be (and probably *must* be)
legally argued by examining various indications, such as:
Unexpected Results,
Previously Assumed Unworkability,
Previously Unrecognized Problem,
Omission of Element,
Unappreciated Advantage,
Long-Felt and Unsolved Need,
Contrarian Invention,
New Principle of Operation, etc.
Again, this is getting so much more scary than we all imagined, that I
suspect more and more people who have waded through all your arguments are
becoming convinced that software patents must be entirely abolished. Up
until seeing this, I was willing to entertain the spark of a notion that
perhaps we could live with software patents if the rules for obviousness
and such were tightened, but your claims that they already are and that
examples given met them have persuaded me absolutely that software patents
must be abolished.
Clearly, if the invention under examination had previously been assumed
impossible (say, in papers in the field), and a way had been found to
make the invention work, that would indicate that the invention was
not quite as obvious as one might think.
Apparently "impossible" includes: not enough RAM on most machines (why
backing store didn't get done for a while); not a lot of file swapping
between different-architecture machines able to host equivalent versions
of a single product (why canonical byte-ordering didn't get done, probably);
and so on.
HOW FAST CAN *YOU* PROGRAM?
Rather fast. I once rewrote a data base cleaning program, debugged it, tested
it, and ran it on a copy of the primary data base while the previous one was
running on that primary data base (i.e. in about 5-6 hours). But then I'm
not the best programmer in the world by a longshot -- the only person I know
of who is widely considered the best (fastest, whatever) is Richard M.
Stallman, who earns several times per hour what I earn, writes only free
software, and -- surprise -- is even more against software patents than I am!
>I'm showing that, based on
>my experience in programming combined with what the PTO considers
>patentable, I can't possibly program at the same speed to which I am
>accustomed if I have to worry about possible patents (mine or somebody
>else's). The fact that you seem to think this is possible suggests you
>aren't well-acquainted with the art itself. It's no more an attack than
Stop putting words in my mouth. You may very well have to slow down.
Not respecting patents which apply to software is not, at this time,
an option. If you conspire to avoid the law, you may personally be
liable under it.
I'm not conspiring to do anything, where did I say I was? Sorry to put
words in your mouth -- I thought you were saying software patents could
be dealt with by programmers in a manner that left them still usefully
productive. I worded this as if you had meant "just as productive". But
I still disagree -- I don't think programmers and software companies
can be usefully productive and truly obey the effective requirements of
having software patents, and I have yet to see anyone show how this might
be done in any literature. With hardware, it's much easier and it folds
much more reasonably into the overall process of designing and shipping
hardware.
Most hardware designers work for a manufacturer, who is ultimately
responsible. If your program is to be manufactured and sold, you will
need some sort of sales/support organization. Patent issues are
just one of the many issues which the team must support.
Yes.
If patent issues are such a danger for software firms, perhaps you
would care to tell us about a few companies which have been forced
out of business because of patents. As compared to, say, the number
forced out because of "stolen" ideas which were *not* patented (or
obsolete software, or bad management, or the recession). Patent
problems are a minor part of the real problems which must be handled
in a real software business.
First, tell me how you think it is possible for a company (or organization)
to be forced out of business because of patents, yet not according to your
definition because of "stolen" ideas, since you consider any idea they may
have had and implemented and that turned out to have already been patented
to be "stolen" anyway?
AGAIN, WHAT *IS* A PATENT?
>TECO was an invention of
>sorts; most people who need to recognize it do indeed; we hardly need to
>reuse it; and it wasn't patented. Yet it was a super-hot piece of
>software in its day, especially MIT's version.
I seriously doubt that a whole program could be patented effectively;
by that I mean that if it were patented, the patent would be worthless
as a monopoly.
But given critical aspects of TECO, like Q-registers and other things,
could have been patentable as ideas, and possibly made even something like
EMACS (or LISP, had it post-dated TECO) guilty of infringing. Not knowing
the specifics of TECO well, I'm just guessing at this. Oh, here's one:
using special escape characters to delimit strings of inserted characters
instead of the old "two carriage returns" or whatever (TECO used the ESC
character). That idea alone, had it been patented and used to garner
large license fees, would have slowed down the software industry quite a
bit, especially in the area of systems software, and made lots of useful
free software (common in those days) unreleasable.
The patents you have to worry about are on small fundamental
mechanisms and processes. And none of the ones openly described
before in history count.
That doesn't help, since the software industry is so young that a huge
majority of the ideas that comprise it in 20 years will be discovered or
"invented", if you will, in those next 20 years. Except they'll all be
patented, and pretty quickly everyone'll be too busy patenting ideas to
spend much time implementing them properly.
>I know of very few cases of companies
>holding up releasing software until they can do a patent search and start
>applying for patents.
Well, if the software is released in object code form, that would not
constitute prior art and would not prevent a later patent application,
even in Europe or Japan. But someone might disassemble the code,
discover the trade secret, and try to patent it, so it could be risky.
After they get bit by this once or twice, I expect they will seek to
avoid that risk. Management does not always see new risks clearly.
Yes, but how will they avoid that risk? Pore through all the assembler code
generated by their optimizing compilers, OO environments, and so on? That'd
take months, even on a small (PC-sized) product.
SAY, CAN WE TALK?
>PUBLICATION
> OF YOUR IDEAS DOES NOT--AND CAN NOT--VIOLATE ANY PATENT!!!
>
>Sure it can, and does, quite often. compress was fully published, but
>turned out to violate a patent, and now people are (or at least were --
>I doubt I'm up-to-date on this) trying to abandon compress. X-Windows
>was freely and openly published, and turned out to violate AT&T's
>backing-store patent.
No, you mean that *actual working implementations* can violate patents.
As I said above, the way I choose to most effectively publish serves as
an actual working implementation.
If you argue I can and should use English, fine, but I'd use English in
such a precise way that someone (myself perhaps) could write a parser and
therefore a compiler for it. So I'd be back to violating patents simply
by describing them.
It would be a bit too cute, don't you think, if one were to argue that
a full working implementation was intended merely for "research," or
"not to be executed." And execution certainly could violate a patent.
This argument sounds legally contributory, and is unlikely to stand.
What is a "full working implementation" of compress? Of a bit of OO
design code to represent backing-store? It is "unlikely to stand" that
bothers me!! You're saying "go ahead and describe it or make it available
for research, but if someone manages to use it in production mode, you
could be liable for contributory infringement", right? Hardly effective
in solving my problem with software patents!
Let me get this straight: I'm arguing for the abolishing of software patents.
I believe you are arguing for their preservation -- yet instead of offering
me exciting, wonderful reasons for them to exist, you're giving me more and
more sound reasons to get rid of them? Is that really your intention? No
reassuring words from "my friend at the PTO" (given all you claim to have
learned about patents, I'd like to think you have one) as to how they're
going to clean up this mess and make software patents a great idea that most
anyone will support?
You might, however, distribute some small example code, and this would
probably cause no problems at all.
What makes code small vs. large? Especially with today's (and
tomorrow's) development environments?? It takes very few lines of
code to violate the canonical byte-ordering patent OR the "+++" patent;
those lines can be for research or production purposes.
But the main point is, that you *can* write an article about any idea
you have independent of whether somebody has a patent on it or not,
and they cannot sue you for doing so. An article could arguably be
as simple as a fully-disclosing post (with some source code) on
Usenet. And if nobody *does* have a patent pending, then the idea
will be free for use.
Unless I (or whoever does the post) quietly turn around, start a patent
process on it, wait while everyone uses my idea to make lots of useful
software and embed requirements for using the idea in a lot of their data,
then when the patent is approved, basically charge anyone for getting their
data back out again! No, thanks, to the ability to do this sort of thing,
yet that's exactly what happened with compress!
In contrast, the failure to publish can be quite costly. By waiting,
you may allow someone else to get the patent. You could try to argue
that "you had the idea first," but this will not cut much ice: you must
also move toward patenting the idea or disclosing it. If you sit on
it, hide it from society until it is finally found out, society will
not reward you with a patent.
Agreed, but I do not want to be rewarded with a patent. I'd much rather
work on my idea until it is in a useful, usable form (thus with not nearly
as much haziness as it now has), a higher form than many other might insist
for it (meaning they could patent/publish it much earlier), and publish it
then -- but then find out that my very publication infringes on a patent,
as I've explained above? No thanks!
By publishing you do risk that somebody may at some point inform you of
their patent; then you can try to work around it. But if your idea
*really is* new, the open description prevents an unwanted patent.
I can't work around a software patent when it is a patent on the idea
of accomplishing something instead of the how-to of accomplishing it.
You cannot get around the backing-store patent and still provide optimal
updating of occluding windows in certain cases of asynchronously updating
windows. You cannot get around the canonical byte-ordering patent and
still provide reasonably optimal fully interchangeable file formats (using
canonical low-to-high bit ordering not only wouldn't be as fast on some
machines, it'd probably still be considered infringement). You cannot get
around "+++" and still make a program that emulates an environment, like
an IBM PC, where standard telecommunications programs work properly even
though you're translating Hayes' modem command set to a different modem
configuration (or a network, perhaps).
But despite being a software and not a hardware guy, I can get around a
patent on a paper clip, player piano, and so on, without too much trouble
(compared to the amount of trouble in building and selling the item anyway;
since it's hardware, it's inherently more time-consuming to make copies of
it than software, in most cases), because I can implement a different design
for a piece of metal to hold paper; a different electrical or even
mechanical means for reading player-piano rolls and making sound out of
them; and so on.
By NOT publishing, you risk that somebody will *later* come up with
the idea you had first, patent it, and you will *still* have to
work around it. And if you sneak around deliberately hiding your work
to avoid any patents which might exist, this can't look good if you
ever *do* get to court. How can not publishing be a good option?
Because it doesn't get me sued for patent infringement, contributory or
otherwise.
MORE PIRACY?
>Why do you call me a pirate? If I have an idea and I implement it, I don't
>want to have my life-savings taken away from me just because somebody else
>happened to patent it first. I've had some of these ideas kicking around
>in my brain for 10-15 years without writing anything down because it was
>clear, based on existing PTO policies at the time, that it wasn't necessary.
>Now it's too late -- and I can't afford a patent search on all the possibly
Look, its a shame. I feel for you.
You still haven't explained why you slander me by calling me a pirate.
But that's the way it is.
You can "have" an idea for as long as you want. Maybe a lot of guys
"had" the idea. But if nobody openly discloses the idea, it is ripe
to be reduced to practice and patented by *someone else*.
The idea is not normally patentable. It is that effective reducing it
to practice that is. Except in software, the two effectively are
indistinguishable.
Why should the fact that you have had an idea kicking around in your
head for 10-15 years (without disclosing it to society) prevent someone
else (who is willing to disclose it) from getting a patent on that
invention? Is it in societies' interest to have designers keep their
ideas private?
It shouldn't, except insofar as ideas shouldn't be patentable. If someone
patented a machine that implemented my ideas, fine, I could still build
my own, different, machine (that might be a software/hardware combination)
to do it and avoid the patent infringement; but that is impossible with
most software patents, certainly with my ideas.
In fact, the 15 year value is rather interesting, for, if you *had*
disclosed then, EVEN IF someone did get a patent, that patent would
be about run out now, and you could soon freely use that idea. By not
publishing you screwed yourself; society did not do it to you. How
can you possibly argue that this is your best course for the future?
I could not describe the idea fully in adequate form then, and pretty much
cannot now; but a fairly fundamental, yet trivial, aspect of it can be
described, perhaps, and might be one I would never imagine would be
separately described (as in canonical byte-ordering -- why would someone just
do integers, and not include floats, character strings, in-file pointers, and
such?) but gets patented so I can't really use my own, greater, idea, without
$$ licensing (if I'm lucky to afford/get that), meaning my program can't
be free.
DISTINCTIONS
>To make a useful (I hope) sample distinction, a Turing machine is not
>patentable, while a particular implementation of one might be. A Turing
>machine is just an algorithm, basically. A physical machine that
>implements one is patentable to the extent it does physical ("matter-
>transforming") things, but the Turing nature of it, while it should be
>allowed (and didn't used to be) by the PTO, should not in and of itself
>be patentable (which it now is, if there were prior art).
If you write software for a non-extant hardware machine, software for
software's sake, that will not violate a patent. The violation occurs
when the software can be used to make a machine function in a patented
way. Then manufacturing, distribution, or use, could infringe.
Again, you have not shown a way to absolutely determine (in a legal sense)
the distinction between publishing an algorithm and distributing an
implementation of that algorithm.
> Why should a hardware-only machine be patentable, but EXACTLY THE
> SAME MACHINE, implemented with software and a CPU, NOT be
> patentable?
>
>Because the hardware-only machine might transform matter while the software/
>CPU combination might just transform representations of matter.
You are basically misstating the requirements; MANY patented mechanical
devices do not "transform" matter in the sense of working it.
Mechanical things move. Electronic devices change voltage. Same thing.
Yes, they all transform matter. Software patents do not fundamentally
involve the transformation of matter -- they are caught up with time, state
transitions, variables, and so on. They are ideas, not implementations,
even though ideas can be implementations of other ideas.
SOFTWARE INFRINGES?
>You said "patents are about the USE of software TO PERFORM HARDWARE
>ACTIONS. It is these actions which are patented" but now you say
>"simply DISTRIBUTING a program containing patented mechanisms violates
>the patent." How do you reconcile this with "Without hardware, software
>ALREADY does not infringe patents"? What do you mean "without hardware"?
>Code not typed in? Code not compiled? Code not running? I'm confused
>about what you consider to be a patent violation.
This was basically taken out of context. A patent protects the
manufacture, sale (or free distribution), and use, of an invention.
Yes, and software is distributed by virtue of publishing its algorithm,
and vice versa, unless the published form is vague, in which case why do
you want that? Your argument for patents includes how precise and
clear they are!
Distributing a full, working, program is certainly manufacture,
distribution, and also contributory to use.
On the other hand, distributing examples, snippets, which do not
accomplish anything is probably OK as research material. Writing in
a non-existent language (for which there was not hardware) would not
infringe (until somebody built hardware to execute it). (We could
get into a long discussion about how software could *suddenly*
infringe when a new machine becomes available, but this is not
real. Patents are *economic* tools.)
It IS real -- people write in new, more concise languages often enough just
as a means to more clearly state an algorithm, only to find the language
is "implemented" as an interpreter or compiler. Even writing in a
fictitious machine language does not prevent someone from writing a
simulator for that machine -- I can't remember the name of the fictitious
machine but there is one I've heard about that is used to teach students
compiler design and such (they generate code to run on the fictitious
machine), but the machine comes into existence simply when a simulator
for it is written (a natural tendency), making any algorithms implemented
in any code that happens to run on it suddently potentially infringing
on patents.
Software which is not "loaded," is only data, but it is just too cute
to say "How could I know my customers would execute that data?"
Agreed it is too cute. I am arguing that because the distinction cannot
be absolutely, reliably made between publishing a description of an idea
and distributing an implementation of it, software patents are inherently
a bad idea and should be abolished. At this point you seem to be
supporting one of my arguments.
Can the simple replication of data infringe? Well, we might ask how
you promoted it to your users. Are you selling random data? If so,
and it turns out to be a running program, that would be a bit cute.
And if you promote it to *be* a program, then you clearly knew what
you were doing when you manufactured it.
Again, thanks for helping me out on this argument. It shows that if I
describe my ideas in the best form I know how, I can be considered to have
many users of production versions of it even though I gave it away free,
and perhaps be made liable for retroactive licensing fees (perhaps even
treble damages).
>If this is what
>you mean, then you are proposing that it is ok for me to write free
>software as long as I don't distribute it or use it, unless I'm willing
>to incur the expense of a patent search or the risk of not doing one,
>correct?
I don't know what good this is. If you want to write it for yourself
and use it for yourself, just keep quite about it. Giving it to
your friends for *use* (as opposed to *testing*) would probably
infringe, but probably nobody would care. (If you own a large
factory and build infringing software for "your" use in "your"
factory, then you *might* have to worry about use infringement.)
Yes, but I might get sued for contributory infringement if my friend further
distributed copies (fine by me) and ultimately everyone made production use
of it, which is easy to happen in software but nearly impossible in
hardware. (A machine that makes paper clips might be able to make 20 or
30, but not 20 or 30 million, unless it was intended for production.
In software, there really isn't a clear correspondence to that notion,
especially since "machines" are so easily manipulated by the recipients
of them in software.)
I really don't see a problem. If you are talking about being in
business, it is likely that by the time the patent holder finds you
out, you will either have the money to handle this problem (among
the million other problems of a small business), or the product
will have failed, in which case you have no problem. If you want
to keep the product active, chances are 9 out of 10 that you can
find a workaround. In fact, the patent holder may even *help* you
find a workaround.
Workarounds are not likely to be viable in software as they are in hardware.
Meanwhile, I'm not talking about being in business for distributing
software, but for supporting it, offer consulting services, and so on.
>What is the difference between a program set up for research vs. production
>use on, say, a UNIX system?
If you are researching the infringing program (testing it, measuring it),
that would probably be OK. If you are *using* the program for research
work, that sounds like infringement to me.
I'm not the user -- but the courts might pull me in as contributing to
infringing if the user uses it, right? Again, this really isn't a problem
(to nearly the same extent) in hardware, but in software, it's practically
unavoidable.
FREE SOFTWARE
>And, again, do you really want most or all distribution of free software
>to halt, given that it very likely violates software patents but the writers
>of it cannot afford patent searches to make sure?
Software, by its very nature, requires maintenance. This happens both
because a program is static while the world changes around it, because
the design is generally incomplete, and because latent errors make
themselves known. Somebody *must* do maintenance, even on *free*
software. Thus, IF and WHEN the patent holder says you violate a
patent, then somebody must spend the effort to implement a workaround.
If a workaround is possible without totally crippliing the software: in the
case of compress (or a case like that), it isn't -- without abandoning the
user's vast stores of data.
As for what I want, well, I want everybody who has a software idea and
does not want to own it to publish that idea, and pretty soon we will
be in software where we are in hardware.
You mean we will have roughly the same access to new versions of, say, GNU CC
or GNU EMACS as we have to new i486 chips? Gee, I'll miss being able
to ftp copies of GNU and other software over to my system -- unless you
claim I can do this with i486 chips?
Note that the FSF and others already are engaged in a highly beneficial
widespread publication of software ideas AND their implementations, to
the extent the separation can be seen, and yet they all seem to want
software patents abolished. Funny, eh?
I would encourage programmers to patent, when they can. It is hard
to imagine anything which is more "power to the people" than for
individuals to *own* the work which they define and support
themselves.
Yes, except I can't afford to go through the process of getting a software
patent for even one of my ideas, as it's something I'm told is rather
expensive -- and I have lots of (apparently) patentable ideas. I'm hardly
unique in this regard, of course.
USERS LIABLE?
>By the way, I don't think that users of patent-violating hardware devices
>are ever liable. A lawyer responded to a post of mine about a year or so
>ago. I had been wondering whether I would be in any way liable or have to
>worry if I bought, say, a new kind of hammer, and it turned out it violated
>a patent. He said the manufacturer and distributor of the hammer could
>be sued for retroactive licensing fees, but I didn't have to worry -- not
>only would a house I built with the hammer be safe, but I wouldn't have to
>return or pay an additional fee for the hammer.
In that case, you must have missed all the brouhaha in '89 and '90 between
Motorola and Hitachi. As I remember it, Mot charged Hitachi with
infringement of (essentially) the 6801 architecture in the Hitachi "H"
series, and then Hitachi charged Mot with infringing a dual-port-RAM cell
on the 68030 and the 88200 RISK cache MMU. It got tense for a while, and
Mot actually had to hold up some shipments. As I recall, there was a
settlement after: 1) Mot re-designed the RAM cell (they may not have
actually taken it to mask), and 2) Mot threatened to ask customs to stop
the import of cars using the H chips (lots of cars)! The car manufacturers
were certainly *customers* of Hitachi, although obviously not end users.
I didn't miss it, I read a fair amount of it, and I fail to see the
comparison. Did Motorola or the courts go to any users (customers, whatever
you call them -- OEMs, perhaps) and force them to pay retroactive license
fees or return the chips they already bought? No, and that was my
point. With hardware, a user that buys an instance of the device is
apparently never liable for any subsequent patent-infringement action
regarding that device and may continue to freely use it. Of course, with
software, this cannot stand (it might at first, but it'll soon be
challenged) because, unlike hardware, it is rare for a piece of software
to be a purely end-user item and not, in some way, a tool in itself to
build another item and/or to incorporate in another item -- especially with
free software that comes with source.
Again, if you build something for yourself and use it for yourself,
that is not going to be a problem. Patents are *economic* tools, and
nobody is going to get much from you (unless you are rich, or have
infringement insurance).
If I get rich as a contractor and happen to have distributed free programs
that turn out to be patent-infringing, I can be taken to the cleaners?
No, thanks! Abolish software patents, as I keep saying!
But if, for example, a pirate manufactured an expensive infringing
program used by large corporations, and was eventually shut down,
the patent owner *might* ask users for reasonable royalties. But more
likely the patent holder would get the assets of the business and
"upgrade" the users.
If we abolish software patents, nobody can be considered a pirate for
"manufacturing" (distributing an executable image of) an expensive
infringing program, of course. Naturally, if they're just stealing a
copyright program, perhaps they should be treated as pirates, but if
they've written all the code themselves, even if they've purposely used
other's ideas (which we all do all the time), like "+++" or backing store,
I say they shouldn't be considered pirates -- they wouldn't have been back
in the '70s.
In general, none of this will happen. Nobody wants to go to court.
A patent is assumed valid. Most patents are upheld on appeal. There
will be a work-around or a license fee, and a license fee would
be just another business expense the same as disks, documentation,
boxes, employees, insurance, retirement, etc., etc., etc.
Yes, this'll kill free software of course, since there are and can be no
license fees.
FREE SOFTWARE?
>So if GNU C (gcc) incorporates a patent-violating algorithm, not only is
>the FSF liable for distributing it, but so is anyone who makes copies of it
>for friends, distributes it in turn, OR anyone who recompiles it (with itself)
>and/or pulls out the source code for sections of it (including the algorithm
>in question) to use in their own product. Just as people who run compress
>are considered liable for violating the LZW patent, from what I've been able
>to determine.
Yes, but this is really a bit much. The kind of *users* to go after,
from a patent-holder point of view, are big corporate users. Little
users, why bother?
Because "little users" have copies of a program they can freely distribute
and write their own programs around, thus becoming "big users" of the
patented algorithm that came from, say, gcc.
But wouldn't it be better to upgrade gcc to not infringe?
Not if it can't be done without crippling it. And that doesn't solve the
problem of the copies already in existence, complete with source code and
comments but no patent number -- at least not in the eyes of the patent holder,
who'll possibly decide to sue for retroactive license fees for all copies
estimated to be out there and even for estimated ongoing copying of those
earlier versions of gcc.
This might be harder for compress, but creativity is the reason that
designers are designers and managers are not. Programmers simply need
to recognize and respond to the legitimate property rights of others.
Why is it such a *disaster* to have to use a different compression
technique? Maybe you lose some efficiency (big deal), or maybe you
figure out something even better (hooray).
Yes, and you can't decompress gigabytes of existing data. Not a disaster
in your opinion?
Creativity isn't the issue -- patents have never really been about
creativity, but about protecting the sweat that goes into making a
creative idea into a practical one, something that is comparatively
trivial for software.
Why should we each implement a different compression technique, and thus
incompatible compressed files, when just choosing a particular
arbitrary (albeit effective) technique would be so much better for the
entire field? The technique was already published, but apparently (as with
so many software patents, I'd guess) the patent was pursued as an
afterthought.
>Again, software patents ultimately means no way for free software to
>continue, at least not without massive support by the proprietary software
>industry (not very likely).
The problem is not patents.
The problem is that even free software needs support and maintenance,
but there is no cash flow for it. Support is important. Even when
software is free, without support (and continued development) it's
almost worthless.
The problem is not "software patents." The problem is the lack of
a business basis for support.
Ah, you seem to know very little about the status of free software and
the extent to which business is supporting it (and to which Cygnus Support,
which provides paid-for support of only free software, is successful).
But in any case you seem to be arguing "it's dying, let's let software
patents kill it [free software] off", when I argue "it's thriving, business
largely supports it because it benefits from it, the computer industry
itself clearly is greatly benefitting from it, why permit software patents,
which inevitably will kill it off, to exist?".
Remember, if software patents end up thriving, then you probably won't be
able to get any more officially distributed copies of GNU EMACS, GNU CC,
GNU itself (when that exists), X, and so on, meaning they will, over time,
become fairly useless.
Tell you what: if you show us how to, say, work around the AT&T backing-
store patent by changing X Windows in a way that preserves its described
interface and functionality and maintains its performance (oughta be easy,
it's already so nonoptimal you could go crazy with it), we'll have a basis
for continued discussion as to whether software patents should even
exist. Otherwise, I feel you have nothing further to offer in terms of
viable arguments for software patents as they pertain to free software.
DO PATENTS SUPPORT THE INDUSTRY?
>My point is that before the PTO started allowing software patents in the
>'80s, development of the computer industry, especially items that could
>(and would) be later emulated in software, was already rampant. Talk to
>Intel about desirability of patents on microprocessor designs -- and that
>one isn't even a software patent!
The software industry is maturing. As it matures, power tends to collect
in large firms. Patents are one of the *few* tools a small firm would
have in competition with the large firms.
Yes, but apparently only small firms that do nothing other than hold
software patents and find violators, as in the case of the XOR cursor
patent. Since software patents require a lot of money and work and time
to obtain, three things small companies typically have precious little of,
they too will only collect in large firms -- which, as it turns out, can
use their muscle to just turn around and buy up any patents they see as
useful, or use lawyer muscle to defend themselves in court.
Compare the register-coloring patent IBM owns to the one some small company
finally got on, I think it was, natural-order recalculation when they
went to collect retroactive licensing fees from Lotus. How successful has
IBM been in strong-arming compiler vendors to show them their source code
or pay licensing fees? How successful was the little company that had the
natural-order patent?
In the hardware field, how's that guy doing on the microprocessor patent he
was awarded last year in his bid to collect fees from Intel (and Motorola
perhaps)?
Offhand, it seems the big companies get their ways with patents, while the
little ones basically don't. That's hardly unique to patents, and I have yet
to read anything other than evidence that patents in all fields accumulate
to the biggest companies at the ultimate expense of the little ones.
On the other hand, one characteristic of the software industry is that it
requires comparatively little up-front capital acquisition to become a
"giant-killer" -- one can, basically overnight, write the next killer app
or even a simple utility and become an important player in the field.
Software patents will kill this, no doubt about it, since these small
companies will have to spend an inordinate amount of time doing defensive
patent searches and/or defending themselves against infringement lawsuits
on things they themselves invented, just not "first".
As you pointed out earlier, object code is not much of a secret for a
determined hacker. (It is still not full, open disclosure, however;
not "prior art.") This means that the large companies can swipe
innovations and put more resources into any competing product, more
features, more marketing, and so on. Without a patent, a little guy
does not have much of a chance.
Little guys have been doing pretty well so far. The ones I know that are
doing great are pretty scared of software patents though. Despite the
recession, I think even small software companies have been doing
comparatively well, but you can kiss them goodbye when (and if) software
patents get into full swing.
It is not patents that are doing it. It is the changing industry.
I don't see how the changing industry, a fairly free market (interface
copyright and software patents aside), can "do something" that isn't
happening.
I do see how software patent licenses and search requirements are going
to inflate the prices of software packages significantly over time, making
even fairly trivial tools and games too expensive for most people, and
with less competition once free software finally disappears, the result
will be a few large companies getting ever-increasing shares of a basically
static market, instead of more and more companies fighting to preserve
market share in a rapidly increasing market. The result is an industry
in which I can have little interest -- a low-growth industry caught up mostly
in lawyering, as is already beginning to happen.
MY MIDNIGHT ENGINEERING ARTICLE
I think I have it somewhere as a text file, if email would be OK.
Yes, please send it!
--
James Craig Burley, Software Craftsperson burley@gnu.ai.mit.edu
Technical Details
Message-ID:
<BURLEY.91Sep6203934@churchy.gnu.ai.mit.edu>Path:
arc1-ca.pugleaf.net!gmdzi!unido!mcsun!uunet!elroy.jpl.nasa.gov!usc!snorkelwacker.mit.edu!ai-lab!life!burleyReferences:
<1991Aug26.210003.29553@sq.sq.com> <1991Aug31.184217.20959@aber.ac.uk> <BURLEY.91Sep3121001@churchy.gnu.ai.mit.edu> <9260@cactus.org>Show Full Headers
Complete Article Headers
X-Google-Language: ENGLISH,ASCII-7-bit X-Google-Thread: 1025b4,9434f7b17f215464 X-Google-Attributes: gid1025b4,public X-Google-ArrivalTime: 1991-09-07 03:08:29 PST Path: arc1-ca.pugleaf.net!gmdzi!unido!mcsun!uunet!elroy.jpl.nasa.gov!usc!snorkelwacker.mit.edu!ai-lab!life!burley From: burley@churchy.gnu.ai.mit.edu (Craig Burley) Newsgroups: gnu.misc.discuss Subject: Re: Patents Message-ID: <BURLEY.91Sep6203934@churchy.gnu.ai.mit.edu> Date: 7 Sep 91 00:39:34 GMT References: <1991Aug26.210003.29553@sq.sq.com> <1991Aug31.184217.20959@aber.ac.uk> <BURLEY.91Sep3121001@churchy.gnu.ai.mit.edu> <9260@cactus.org> Sender: news@ai.mit.edu Organization: Free Software Foundation 545 Tech Square Cambridge, MA 02139 Lines: 1977 In-reply-to: ritter@cactus.org's message of 6 Sep 91 07:17:34 GMT