Computer Ethics, Spring 2012
CMUN 009; Mon 4:15-6:45, Week 11, Apr 9
Read
Baase Ch 4 §4.7 on patents.
Baase Ch 5, §5.2, §5.3, §5.5, §5.6 on hacking and crime
Some software patents
Natural-order recalculation in spreadsheets:
Patent 4398249
More below following Heckel's paper
Cell A depends on B if A needs B's value
in its formula
Rule: Before calculating A, calculate all cells A depends on.
Duh.
The algorithm is called "topological sort";
published in the CS literature in 1963.
Rene K. Pardo and Remy Landau filed for a patent in 1971: U.S.
Patent 4,398,249. This was an important case in allowing software
patents (initially their request was denied as an "algorithm")
Spreadsheets were a brilliant idea (Dan Bricklin, VisiCalc?),
but not order of recalculation.
MS has patented the FAT disk format. Here is a summary of the
events from the Public Patent Foundation, which had challenged that
patent:
In April 2004, the Public Patent
Foundation filed a formal request with
the United States Patent and Trademark Office to revoke Microsoft
Corporation's patent on the FAT File System, touted by Microsoft as
being "the ubiquitous format used for interchange of media between
computers, and, since the advent of inexpensive, removable flash memory,
also between digital devices." In its filing, PUBPAT submitted
previously unseen prior art
showing the patent, which issued in November
1996 and is not otherwise due to expire until 2013, was obvious and, as
such, should have never been granted. The PTO granted PUBPAT's request
in June 2004 and provisionally rejected the patent in September 2004.
In response to the rejection, Microsoft made amendments to the patent's
claims. The PTO proceeded to allow the
amended form of the patent.
PUBPAT had no right to appeal that decision.
The fact that PubPat can't appeal or even respond to the decision is
a serious due-process issue. If you are sued by Microsoft for using the
FAT format, you will be allowed
to respond to Microsoft's post-2004 amendments to the patent claims.
But you will probably not.
Microsoft is now actively licensing the format to flash-card
manufacturers. Why not switch to the free ext2 filesystem? Because that
just is impossible, that's why.
It is unclear which patents Microsoft is most interested in pushing.
While there are legitimate reasons for thinking that FAT itself might
not be patentable, Microsoft later introduced a strategy for supporting
both long filenames and also "8.3" filenames (8 char name, 3 char
extension). The patent that covers the dual-name strategyis less
vulnerable to "obviousness" or "prior art" challenges.
Microsoft sued the TomTom people (http://arstechnica.com/microsoft/news/2009/02/microsoft-sues-tomtom-over-fat-patents-in-linux-based-device.ars),
because TomToms, although they are based on linux, use the FAT
filesystem internally. The suit was settled
two months later, after TomTom agreed to cut the FAT.
FAT is a good example of an idea that is obvious to anyone presented
with the problem of how to
create a simple filesystem suitable for small devices. However, there is
the added problem of it's being standard
(although an unofficial one); you can't just implement a workaround.
1994: The Eolas patent on embedded applets, also known as the patent on "not clicking the mouse". More below
Photoshop and patents
It might seem reasonable that such a complex program as Adobe Photoshop
has been effectively protected by patents. However, I can find no
evidence that this is the case. I did
find the following:
Macromedia has sued Adobe for patent infringement over some
Photoshop options
(http://www.managingip.com/Article/1327272/Macromedia-claims-Photoshop-patent.html)
The leading open-source alternative to Photoshop, gimp,
may have had
more trouble with Microsoft patents than Adobe's. In general, there are
lots of notes out there from gimp developers discussing their patent
woes. (I lost my specific reference, though.) Gimp has had to struggle
with the LZW patent on the gif format (US expiration 2003, Europe
2004), and the possible jpeg patent.
PTO (Patent & Trademark Office) problems:
- researching "prior art"
- secrecy of the process
ignorance is no defense: "submarine" patents
The entire process is secret: you can be making good-faith effort
to be noninfringing and get hit with a huge verdict.
Infringement is considered willful
if you had advance notice of infringing. Your belief that
the patent was invalid is NOT a defense. Damages automatically triple.
Three groups of stakeholders:
- small inventors
- large corporations
- patent-holding companies
Where do we fit in?
Patent-holding companies are sometimes known as "trolls", as in
"the troll under the bridge, demanding tolls". They are often seen as
parasitic: they do not, for example, actually produce anything. Is this
a fair characterization?
How large corporations manage:
- patent banks
- legal departments
- cross-licensing
small inventors:
- market your invention yourself??
- sell to a holding company? (These are tricky places.
They produce nothing, they interfere with progress,
but they do produce a
market for new patents.)
Open source:
voip
From the flowroute.com FAQ (flowroute is a reseller of VoIP lines):
Most free or open-source PBXs are not packaged with the G.729 codec due
to licensing issues. We recommend that you install it for more efficient
bandwidth usage and route availability.
The nominal data rate for a voice call is 8kB/s (64kbit/sec). G.729
is an encoding/compression strategy that achieves excellent voice
quality at 1 kB/sec. From Wikipedia:
G.729 includes patents
from several companies and is licensed by Sipro Lab Telecom. Sipro Lab
Telecom is the authorized Intellectual Property Licensing Administrator
for G.729 technology and patent pool.
In a number of countries, the use of G.729 may require a license fee and/or royalty fee.
Legal advantages of small inventor: somewhat diminished with rise in
legal fees & increased ambiguity of patent claims
But small inventors can still
sell to patent-holding companies.
Legal situation of large corporations:
- hard for small inventors to sue them
- can cross-license
Patent infringement suits
Note that we do not generally
have much access to the judge's reasoning in these cases. There may be
a written opinion, but often not, and in any event we generally don't
have ready access to many of the documentsoffered in evidence.
(Some of the documents, though not all, are available from the Law Library.)
(In the link above, correct the spelling of "pdf")
Paul Heckel wrote Debunking the
Software Patent Myths for
the June 1992 Communications of the ACM. Heckel approaches software
patents as a small inventor who has sued Apple over Hypercard and is in
general very strongly pro-patent. He was actually faced with huge
software-development debts and no future market because Apple had
reproduced his idea. He makes several claims.
4197590
One is that the XOR patent, 4197590, is really about patenting what
Heckel calls "largely the invention of the frame buffer". However, the
concept of a frame buffer, or memory-mapped display (in which the video
screen is memory-mapped into a location in RAM, so that writing to the
screen is as simple as writing to memory) was apparently prior art. The
patent application claims that they invent a way for a small (eg
416x312) graphics window to allow viewing of a larger 2048x2048 virtual
display, and panning across. That is
a significant invention. However, there is a reasonable body of
evidence that Cadtrak attempted to enforce the XOR-cursor portion of
the patent alone.
From the patent abstract:
A computer graphics display system
including random access raster memory
for storing data to be displayed, a raster memory control unit for
writing
data into the raster memory, a video control unit for causing such
information to be displayed on a CRT display screen....An XOR
feature allows
a selective erase that restores lines crossing or concurrent with
erased
lines. The XOR feature permits part of the drawing to be moved or
"dragged" into place without erasing other parts of the drawing.
It seems to me that a major claim of this patent, and the only relevant
claim past the 1984 introduction of the Macintosh, is the XOR feature.
It is legitimate to try to enforce just a single claim; if the Patent
Office thinks any of your claims are too obvious, they are supposed to
say so. However, the XOR claim makes a lot of sense in the context of the original patent as a nonobvious part of the idea; it is more obvious as a standalone operation.
4398249
Another is the natural-order-recalculation patent, 4398249. This was an
invention of Rene K. Pardo and Remy Landau in 1970. Heckel claims that
what Pardo
and Landau really invented was the spreadsheet, although (apparently)
in primordial form not recognizeable by later spreadsheet pioneers such
as Dan Bricklin (VisiCalc); Bricklin is generally recognized as the
inventor of the spreadsheet. Heckel does not name any software product
Pardo and Landau produced. There was indeed an important legal case
regarding the
patentability of the idea;
initially their request was denied by the PTO as an "algorithm. It is
now considered to be an "early"
software patent. Here's the idea:
Cell A depends on B if A needs B's value
in its formula
Rule: Before calculating A, calculate all cells A depends on.
The algorithm is called "topological sort"; published in the CS
literature in 1963. The actual algorithm is:
Let Known_Cells be the set of all cells we can calculate initially, ie that do not depend on any other cells.
repeat
search the spreadsheet for cells which depend only on Known_Cells.
Calculate their value, and add them to Known_Cells
until there are no new Known_Cells
Spreadsheets were a brilliant idea (Dan Bricklin, VisiCalc?), but not
order of recalculation.
Pardo and Landau sold the patent to the company Refac, which Heckel
characterizes as "a white knight in the fight against the patent
pirates". However, note the following line from the appellate court in
Refac v Lotus, at
http://www.ll.georgetown.edu/Federal/judicial/fed/opinions/95opinions/95-1350.html:
The district court did not abuse its
discretion in holding that the '249 patent is unenforceable on the ground of
inequitable conduct. [emphasis added]
Apparently Pardo and Landau were told by the USPTO that their patent was
not fully disclosed; specifically
[T]he disclosure is not deemed of the
level which would enable one with ordinary skill in the art to make
and use the invention. The flow diagram which applicants represent in
figure 2 is not of the detailed level which a
programmer would need in order to write a program from.
They presented three supposedly disinterested witnesses who each
submitted an affidavit that, yes, they could implement the desired
program from the patent description. However, one of the three, Robert
F Bullen, had a previous business relationship with Landau, that
neither of them disclosed.
So much for "white knights".
There remains the broader concern that Pardo and Landau did not in fact
appear recognize that they had a "spreadsheet", and that Dan Bricklin
was the first to grasp that concept, and that what Pardo and Landau did have was just the idea of using
topological sort when evaluating a large number of expressions with
dependencies.
Here's the abstract of Pardo & Landau's patent, slightly edited,
for compiling a set of formulas when some formulas may depend on the
values of other formulas:
A process and apparatus (compiler
program) carried out on a digital computer for converting a source
program into an object program. The source program [consisting of a set
of formulas] is entered into a first storage area of a computer. ...
The compiler program then examines each formula to determine whether it
has been defined [that is, whether it has no dependencies on as-yet-undefined formulas]. If the
first formula has been defined, it is removed from the first
storage area;
placed in a second storage area; and marked as being defined. if
the first
formula examined has not been defined, it is retained in the first
storage
area. The compiler program repeats this process for each formula in
the
first storage area. After the formulas in the first storage area
have been
examined, the compiler program determines whether any formulas have
been
added to the second storage area. If so, the compiler program
repeats
the examination of the individual formulas still retained in the
first
storage area. The compiler program repeats the process until all
formulas
have been defined; added to the second storage area; and marked as
being
defined. The content of the second storage area is an object
program which
is executable by the computer.
2009 is a little later than 1972, and some of these ideas are now
somewhat standardized, but without being familiar with this specific
algorithm I was able to come up with it "on my feet" in class once. I
see
no evidence here of any
spreadsheet-like package; the application of the general
topological-sort algorithm to solve this particular problem seems to be
pretty obvious.
Heckel's own patent was 4736308.
It was described as covering the display of two or more strings
together on the screen (apparently scrolling with two or more
subwindows). The argument was made that if scrolling was prior art, and
subwindows were prior art, how could a trivial combination of them be
patentable? Heckel's claim is that his patent actually covers a
Hypercard-like product (hypertext plus button-activated scripts), though this is not clear from the patent abstract.
As in other software patent disputes, Heckel's idea to some extent fits
the model of the application of general software engineering principles
to solve a particular problem. However, Heckel's patent also has an
element of how to frame the programming environment for the user; this
would appear to be a genuine user-interface innovation. (Though note
that much of the innovation was done by Xerox in the development of the
Smalltalk environment.)
Some specific patents and cases:
- Eolas v Microsoft
- i4i v Microsoft: i4i patented a particular, straightforward method of storing files with markup tags. Microsoft used a method
of storing markup tags in Word documents. i4i claimed that MS violated
its patent; this appears to be a very expansive interpretation of their original patent.
- NTP v RIM: RIM developed the Blackberry system of wireless email devices. NTP claimed to have a patent on the idea.
Eolas v Microsoft
Patent 5838906: Distributed
hypermedia method for automatically invoking external
application providing interaction and display of embedded objects
within a hypermedia document, filed in 1994.
The alleged invention is about a way for running "applets" in a
browser window.
Is this really an "invention" at all?
Back in 1992, browsers just displayed images and static text.
However, it was clear by then that applications could display content in
windows created and "owned" by other applications; for example, MS Word
could at that time display an Excel subwindow.
What was not foreseen was that browsers would become universal
viewers of just about everything.
Microsoft v Eolas (+ Univ of California, as part of UCSF):
MS lost this case in 2004; was ordered to pay $521 million.
They then won the right to a new trial, but settled in 2007 before the
beginning of the new trial.
Patent covers
a system allowing a user of a browser
program ...
to access and execute an embedded program object [or small
computer program, often referred to as
"applets" or "plug-ins"]
Patent filed 1994, granted 1998, USPTO review 2004, upheld 2005
See http://cse.stanford.edu/class/cs201/projects-99-00/software-patents/hypermedia.html
"Viola" prior art: may or may not be
relevant: see http://www.viola.org
The Viola browser project was found by the district court to have been
"abandoned",
but the circuit court found that Viola version 1.0 was "abandoned"
only in the sense that it was replaced with version 2.0.
Part of the technical issue was about the meaning of the term
"executable application". The court allegedly gave this broad
meaning.
Microsoft claimed it only meant "standalone applications".
Eolas started by Michael Doyle, faculty member of UCSF.
UC Berkeley is apparently the owner of the patent.
Doyle certainly had some early ideas, that came before Java applets.
Had the Eolas patent been more aggressively enforced, it would have
been a huge impediment to the world-wide web.
2007: MS has claim they
invented it; this loses in Sept,
but Eolas & MS settle in August
October 2009: Eolas has launched a major lawsuit against just about
everyone: press
release. The list of defendants includes lots of sites that use
web-embedded objects: amazon, apple, eBay, and youtube.
View 1: Eolas developed some early web-embedding technology, and got
really lucky
View 2: Eolas patented Microsoft's 1990 Object Linking and Embedding
idea, and got a 20-year license to fleece us
View 3: Eolas may control a "critical" piece of the web standards.
Consider the actual Eolas patent claim again. They have allegedly patented
the idea
that an applet could be displayed automatically within a browser
window. In a sense, they have patented the idea that browsers can
display certain kinds of content.
(Actually, their claim oscillates between the idea of displaying an
applet, and the idea of displaying it automatically.
This is a tricky issue.)
Who had the idea that browsers could display any
content, and thus that that was all you really needed? One version of
VMware used a browser plugin to view your virtual machine's console!
Maybe the deepest problem with the Eolas patent is that the whole idea
of embedding one window in another is trivial.
The implementation might take some effort, but the conceptual idea does
not require any research or trial and error. Embedding an application
window in a browser window might not have been obvious back in 1994, but only because browsers weren't well understood.
Normally, if you patent a technique or machine, it will almost always
become at least somewhat obvious in retrospect, but here the issue is stronger. It's that the idea here was inevitable,
once browsers grew to the point that they were used to view all sorts of
things. It's as if someone tried to
patent a handful of general browser strategies, without developing
them, in the hopes that one of them would pan out and they could
collect licensing fees. (Eolas did generate a working version of their
embedding idea, but they didn't
do anything to popularize it as part of the web.)
To try to put it another way, advances in software often lead to
radical changes in how we use the software. Consider browsers, or
wireless, for example. Radical change in use patterns often leads to
demands for obvious new
features, that previously were either impractical or simply irrelevant.
Here's the PTO review
upholding the Eolas '906 patent in 2005.
One of the things to get out of this document is the sense in which the
PTO process favors the inventor; they are legally bound to interpret
the inventor's claims in the most favorable light. This is because the
assumption is (required to be) made that the PTO got the patent right
in the first place; thus, the appeal is not neutral.
See Page 3 (p 7 of the pdf) for a discussion of "obviousness".
See also Page 11 (15) for a discussion of the Toye reference, in
particular the discussion on Page 13 of an early X-windows version of
Object Linking and Embedding. The NoteMail viewer could display active
content: "any application that displays through an X-server can insert
its output ... dynamically onto a notebook page through an embedded
'virtual window'". The patent re-examiner then asks whether NoteMail is
"equivalent to" a browser.
Further on (Page 17/21) it is stated that
MediaMosaic does enable interactive
control and manipulation of objects embedded in what arguably may be
construed to be a "browser-controlled window," BUT ONLY AFTER USER
INTERVENTION, such as by making a selection with a mouse. [capitals in original -- pld]
In other words, Eolas apparently has a patent on having something happen
without
having to click the mouse; their patent is for "zero-click" operation
(one better than Amazon!).
This was an important issue in 2003 as well. It is not a triviality.
However, it is difficult to see how the invention of not
having to click the mouse can be seen as deep. We're no longer talking
about the idea of embedding applets; we're talking about automatically
launching them.
Is not clicking the mouse worth half a billion dollars? That's more than
the
cost of every mouse in the US!
State Street Bank case, and Business-Method patents
Patent
5193056
decided 1998; patent filed 1993
Basic outcome: financial-services software containing an algorithm is
patentable. From the 1998 Federal Circuit decision:
(...) the transformation of data,
representing discrete dollar amounts,
by a machine through a series of mathematical calculations into a final
share price, constitutes a practical application of a mathematical
algorithm, formula, or calculation, because it produces 'a useful,
concrete and tangible result' -- a final share price momentarily fixed
for recording and reporting purposes and even accepted and relied upon
by regulatory authorities and in subsequent trades.
For many decades, patents for business methods were generally denied (to be more precise, this "business-methods exception" to
patentability was an oft-stated maxim, but the courts had never ruled
directly on it). Even after the 1981 Diehr
case allowing some software patents, a claimed software invention that
also involved a business method might be refused a patent. By a decade
after Diehr, however, the USPTO had begun granting a fair variety of
software-related inventions of new business methods or business
processes. State Street Bank had been granted one such patent, and the
case
came as
SSB sued another bank which then tried to use the
business-methods exception as a defense. In its ruling, the Federal
Circuit established that there was no "business-methods exemption" as such, and that the USPTO had been within its rights to grant such patents.
The State Street Bank case introduced the rule that a
business method could be patented if "it produces a useful, concrete,
and tangible result". This "useful, concrete and tangible result" test for patentability stood until the Bilski case, below, in 2009.
For a while, business-method patents were only granted for
software-related processes. Once the USPTO began patenting software as
part of a business process,
it became too difficult to distinguish between
sofware-as-algorithmic-invention and software-as-business-method. So
the USPTO also reversed its longstanding refusal to grant patents
purely for software (until then, software patents had to list some
hardware involvement, although that was mostly a formality in practice).
This case opened the door to a huge influx of business-method patents,
including Amazon's "one-click" method (below). For a while, the USPTO
required business-method patents to involve computers (specifically, to have some connection to "the
technological arts"), but even that was eventually thrown out in 2005 as too hard
to enforce. However, there remains a great deal of overlap between
business-method patents and software patents.
Exhibit A: Amazon "one-click" patent, # 5960411, granted 1999.
Twenty-three days later, Amazon got an injunction against Barnes &
Noble, and eventually won their case. BN had to stop using their
"ExpressLane" shopping method.
The essential feature of the 1-click patent appears to be that you
don't have to go through the usual multi-screen checkout process; you
can just click "send me this stuff the usual way", and it will remember
all your previous entries.
Paul Barton-Davis, one of Amazon's founding programmers, called the
1-Click patent "a cynical and ungrateful use of an extremely obvious
technology" [emphasis added]. By "ungrateful", Barton-Davis apparently
meant that Amazon had benefitted enormously from public-domain software
ideas.
One-click shopping is obvious from a software-development perspective. It is not nearly so obvious from the perspective of online shopping, however.
Overall, there are many other more-mundane patents on online shopping carts. IBM[?] supposedly has a patent on suggesting new purchases based on past ones.
See the Bilski case (later) for more updates.
Patent ruling in Apple "Cover Flow" feature.

Graph of phone-patent lawsuits
Apple seems intent on suing Google for Android, apparently believing
Android to be a knockoff of the iPhone. However, history makes this
much less clear. Smartphones were introduced in 2001 and 2002 by Palm,
Microsoft and Blackberry. The iPhone did not appear until 2007. The
iPhone did introduce the multi-touch interface. Android was introduced in 2008.
Similar lawsuits have been filed by Apple against makers of products
competing with the iPad; the Samsung Galaxy tablet has been banned in
Australia. But most of what Apple has are design
patents, not software patents. Ironically, Apple already licenses
several Samsung patents for phones generally. And many observers have
commented that HTC seems to be introducing innovative features faster
than Apple right now.
Apple based the Macintosh interface on work at Xerox PARC, and then
failed to protect it from Microsoft (actually, the judge ruled that
Apple had licensed the
technology to MS). At least some of what Apple wants to protect in
their iPhone cases is the design, though much of the design basics came
from the work of Dieter Rams.
More on Apple patents
Here's patent 6122520 / RE 42927: System and method for obtaining and using location specific information
http://www.cbsnews.com/8301-505124_162-57325995/apple-gets-killer-location-services-patent/
RE42927
http://www.theverge.com/2011/10/31/2522418/apple-brings-proven-defense-strategy-to-its-u-s-case-against-samsung
http://www.pcmag.com/article2/0,2817,2387401,00.asp
Here's an amazing graph by Florian Mueller on Apple patent litigation relating to the iPhone:
http://www.scribd.com/doc/44759893/Apple-vs-Android-10-12-02
Here are some of the patents mentioned:
Apple v HTC before the International Trade Commission (ITC), filed March 2, 2010
5481721 Method for providing automatic and dynamic
translation of object oriented programming language-based message
passing into operation system message passing using proxy objects
5566337 Method and apparatus for distributing events in an operating system
5946647 System and method for performing an action on a structure in computer-generated data
5969705 Message protocol for controlling a user interface from an inactive application program
6275983 Object-oriented operating system
6343263 Real-time signal processing system for serially transmitted data
======================
Apple v HTC, US District Court, Delaware
5455599 Object-oriented graphic system
5848105 GMSK signal processors for improved communications capacity and quality
5920726 System and method for managing power conditions within a digital camera device
6424354 Object-oriented event notification system with listener registration of both interests and methods
7362331 Time-based, non-constant translation of user interface objects between states
7479949 Touch screen device, method, and graphical
user interface for determining commands by applying heuristics
7633076 Automated response to and sensing of user activity in portable devices
HTC counterclaims
5377354 Method and system for sorting and prioritizing electronic mail messages
6188578 Integrated circuit package with multiple heat dissipation paths
7278032 Circuit and operating method for integrated interface of PDA and wireless communication system
Apple has developed many very clever ideas for the iPhone. Many of
these patents seem rather broad, however, especially the location
patent.
Note that the strategy of Samsung/HTC appears to be to file
infringement counterclaims. This is why it's much harder for a
legitimate developer to sue for infringement than a troll. However, the
Samsung and HTC patents appear mostly
to be general patents on wireless technology that they had previously
agreed to license on Fair, Reasonable And Non-Discriminatory (FRAND)
terms.
Google and Microsoft sue GeoTag
GeoTag appears to be a classic troll. But the article mentions Skyhook, and suggests that is not a troll. Does this matter? What about i4i?
Here's the GeoTag patent: 5,930,474
How this compares with RE42927 I have no idea.
This patent is definitely an example of an idea, the implementation of which is obvious, given the availability of GPS. Should such things be patentable?
Stallman article: why software is
different
1. There's no advance warning (but isn't this true of any patent?)
2. There is no easy way to read them. They are deliberately obscure.
And, for software, this is directly tied to the fact that the
algorithms are very general.
3. Some patents are just plain inappropriate, but fighting them is
exhorbitant.
4. chicken-and-egg problem with converting from .gif to .png: how
can you get browsers to support this? (This is partially resolved by
browser plug-ins.)
5. "prior art" is very hit-or-miss; sometimes (often!) it was considered
too obvious to document. More specifically, ideas ruled by the PTO to be patentable were often "CS folklore" but too obvious to publish.
6. Software tends to use many
ideas per application, and so one software project might require
licensing of many diffferent
pieces. This makes incremental innovation difficult, for anyone. (Even microsoft.) This
problem exists for software because writing software is in some sense much easier than traditional
engineering, and so you can afford to put more ideas in.
7. Software licensing terms tend not
to take into account the fact that projects use many ideas, and a given
patented piece should be only a small part of the total.
8. Open source.
9. Patented standards are a
large social cost.
10. It is not possible to search the patent database before the patent
is granted
11. Tremendous software progress is
often made with negligible investment; we don't need patents to
encourage development.
12. Computing has a high rate of radical, as opposed to incremental,
change.
An issue that Stallman doesn't address directly is that 20 years is a very
long time in the software industry, and that locking an idea up for
that long has the practical effect of stifling growth, not encouraging
it. Software patents have had the effect of postponing adoption
until patent expires (cf James Gosling's first language) (hint: his
second language was Java).
And basic ideas are still being patented for a new use (eg the Steir hair
patent)
Finally, another issue is the obvious-in-context problem I mentioned
above, that does seem to be a special issue with software:
often an idea is an immediate, trivial corollary of some later
development, or of some more abstract way of looking at the situation.
However, some earlier out-of-context patent may still apply. The XOR-cursor and Eolas patents may be of this type. It's not that
embedded applets is an innovative idea, per se, it just takes a
critical mass of web sites to become relevant.
Is
software legitimately a special case?
A related issue is that weak patents can have significant social costs, by
blocking core technologies that everyone needs. Examples are not always easy to identify.
- XML-structured documents (because of i4i v Microsoft)
- RSA encryption (patent difficulties were the "other" reason RSA made little progress in the 1990's
- X-windows XOR cursor (but the workaround worked pretty well)
- natural interfaces for embedded applets [?], because of the eolas patent
It is more likely for workarounds to be found, or for a feature to be licensed and added to non-open-source software.
Paul Graham
moved to week 12