/[www]/www/philosophy/trivial-patent.html
ViewVC logotype

Contents of /www/philosophy/trivial-patent.html

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.34 - (show annotations) (download) (as text)
Wed Sep 22 09:19:58 2021 UTC (2 years, 11 months ago) by th_g
Branch: MAIN
CVS Tags: HEAD
Changes since 1.33: +2 -2 lines
File MIME type: text/html
Only list copyrightable years.

1 <!--#include virtual="/server/header.html" -->
2 <!-- Parent-Version: 1.96 -->
3 <!-- This page is derived from /server/standards/boilerplate.html -->
4 <!--#set var="TAGS" value="essays laws patents" -->
5 <!--#set var="DISABLE_TOP_ADDENDUM" value="yes" -->
6 <title>The Anatomy of a Trivial Patent - GNU project - Free Software Foundation</title>
7 <!--#include virtual="/philosophy/po/trivial-patent.translist" -->
8 <!--#include virtual="/server/banner.html" -->
9 <!--#include virtual="/philosophy/ph-breadcrumb.html" -->
10 <!--GNUN: OUT-OF-DATE NOTICE-->
11 <!--#include virtual="/server/top-addendum.html" -->
12 <div class="article reduced-width">
13 <h2>The Anatomy of a Trivial Patent</h2>
14
15 <address class="byline">by <a href="https://www.stallman.org/">Richard
16 Stallman</a></address>
17
18 <p>Programmers are well aware that many of the existing software patents
19 cover laughably obvious ideas. Yet the patent system's defenders often
20 argue that these ideas are nontrivial, obvious only in hindsight. And
21 it is surprisingly difficult to defeat them in debate. Why is that?</p>
22
23 <p>One reason is that any idea can be made to look complex when
24 analyzed to death. Another reason is that these trivial ideas often look
25 quite complex as described in the patents themselves. The patent
26 system's defenders can point to the complex description and say,
27 &ldquo;How can anything this complex be obvious?&rdquo;</p>
28
29 <p>I will use an example to show you how. Here's claim number one
30 from US patent number 5,963,916, applied for in October 1996:</p>
31
32 <blockquote>
33 <p>1. A method for enabling a remote user to preview a portion of a
34 pre-recorded music product from a network web site containing
35 pre-selected portions of different pre-recorded music products, using
36 a computer, a computer display and a telecommunications link between
37 the remote user's computer and the network web site, the method
38 comprising the steps of:</p>
39
40 <ul>
41 <li>a) using the remote user's computer to establish a telecommunications
42 link to the network web site wherein the network web site comprises
43 (i) a central host server coupled to a communications network for
44 retrieving and transmitting the pre-selected portion of the
45 pre-recorded music product upon request by a remote user and (ii) a
46 central storage device for storing pre-selected portions of a
47 plurality of different pre-recorded music products;</li>
48 </ul>
49
50 <ul>
51 <li>b) transmitting user identification data from the remote user's
52 computer to the central host server thereby allowing the central host
53 server to identify and track the user's progress through the network
54 web site;</li>
55 </ul>
56
57 <ul>
58 <li>c) choosing at least one pre-selected portion of the pre-recorded
59 music products from the central host server;</li>
60 </ul>
61
62 <ul>
63 <li>d) receiving the chosen pre-selected portion of the pre-recorded
64 products; and</li>
65 </ul>
66
67 <ul>
68 <li>e) interactively previewing the received chosen pre-selected portion
69 of the pre-recorded music product.</li>
70 </ul>
71 </blockquote>
72
73 <p>That sure looks like a complex system, right? Surely it took a real
74 clever guy to think of this? No, but it took cleverness to make it seem
75 so complex. Let's analyze where the complexity comes from:</p>
76
77 <blockquote>
78 <p>1. A method for enabling a remote user to preview a portion of a
79 pre-recorded music product from a network web site containing
80 pre-selected portions</p>
81 </blockquote>
82
83 <p>That states the principal part of their idea. They put selections
84 from certain pieces of music on a server so a user can listen to
85 them.</p>
86
87 <blockquote>
88 <p>of different pre-recorded music products,</p>
89 </blockquote>
90
91 <p>This emphasizes their server stores selections from more than one
92 piece of music.</p>
93
94 <p>It is a basic principle of computer science that if a computer can do
95 a thing once, it can do that thing many times, on different data each
96 time. Many patents pretend that applying this principle to a specific
97 case makes an &ldquo;invention.&rdquo;</p>
98
99 <blockquote>
100 <p>using a computer, a computer display and a telecommunications
101 link between the remote user's computer and the network web
102 site,</p>
103 </blockquote>
104
105 <p>This says they are using a server on a network.</p>
106
107 <blockquote>
108 <p>the method comprising the steps of:</p>
109 <p>a) using the remote user's computer to establish a telecommunications link to the network web site</p>
110 </blockquote>
111
112 <p>This says that the user connects to the server over the network.
113 (That's the way one uses a server.)</p>
114
115 <blockquote>
116 <p>wherein the network web site comprises (i) a central host server
117 coupled to a communications network</p>
118 </blockquote>
119
120 <p>This informs us that the server is on the net. (That is typical of
121 servers.)</p>
122
123 <blockquote>
124 <p>for retrieving and transmitting the pre-selected portion of the
125 pre-recorded music product upon request by a remote user</p>
126 </blockquote>
127
128 <p>This repeats the general idea stated in the first two lines.</p>
129
130 <blockquote>
131 <p>and (ii) a central storage device for storing pre-selected
132 portions of a plurality of different pre-recorded music
133 products;</p>
134 </blockquote>
135
136 <p>They have decided to put a hard disk (or equivalent) in their
137 computer and store the music samples on that. Ever since around 1980,
138 this has been the normal way to store anything on a computer for rapid
139 access.</p>
140
141 <p>Note how they emphasize once again the fact that they can store
142 more than one selection on this disk. Of course, every file system
143 will let you store more than one file.</p>
144
145 <blockquote>
146 <p>b) transmitting user identification data from the remote
147 user's computer to the central host server thereby allowing the
148 central host server to identify and track the user's progress through
149 the network web site;</p>
150 </blockquote>
151
152 <p>This says that they keep track of who you are and what you
153 access&mdash;a common (though nasty) thing for web servers to do. I
154 believe it was common already in 1996.</p>
155
156 <blockquote>
157 <p>c) choosing at least one pre-selected portion of the
158 pre-recorded music products from the central host server;</p>
159 </blockquote>
160
161 <p>In other words, the user clicks to say which link to follow. That
162 is typical for web servers; if they had found another way to do it,
163 that might have been an invention.</p>
164
165 <blockquote>
166 <p>d) receiving the chosen pre-selected portion of the
167 pre-recorded products; and</p>
168 </blockquote>
169
170 <p>When you follow a link, your browser reads the contents. This is
171 typical behavior for a web browser.</p>
172
173 <blockquote>
174 <p>e) interactively previewing the received chosen pre-selected
175 portion of the pre-recorded music product.</p>
176 </blockquote>
177
178 <p>This says that your browser plays the music for you. (That is what
179 many browsers do, when you follow a link to an audio file.)</p>
180
181 <p>Now you see how they padded this claim to make it into a complex
182 idea: they combined their own idea (stated in two lines of text) with
183 important aspects of what computers, networks, web servers, and web
184 browsers do. This adds up to the so-called invention
185 for which they received the patent.</p>
186
187 <p>This example is typical of software patents. Even the occasional
188 patent whose idea is nontrivial has the same sort of added
189 complication.</p>
190
191 <p>Now look at a subsequent claim:</p>
192
193 <blockquote>
194 <p>3. The method of claim 1 wherein the central memory device
195 comprises a plurality of compact disc-read only memory
196 (CD-ROMs).</p>
197 </blockquote>
198
199 <p>What they are saying here is, &ldquo;Even if you don't think that
200 claim 1 is really an invention, using CD-ROMs to store the data makes
201 it an invention for sure. An average system designer would never have
202 thought of storing data on a CD.&rdquo;</p>
203
204 <p>Now look at the next claim:</p>
205
206 <blockquote>
207 <p>4. The method of claim 1 wherein the central memory device
208 comprises a RAID array drive.</p>
209 </blockquote>
210
211 <p>A RAID array is a group of disks set up to work like one big disk,
212 with the special feature that, even if one of the disks in the array
213 has a failure and stops working, all the data are still available on
214 the other disks in the group. Such arrays have been commercially
215 available since long before 1996, and are a standard way of storing
216 data for high availability. But these brilliant inventors have
217 patented the use of a RAID array for this particular purpose.</p>
218
219 <p>Trivial as it is, this patent would not necessarily be found
220 legally invalid if there is a lawsuit about it. Not only the US
221 Patent Office but the courts as well tend to apply a very low standard
222 when judging whether a patent is &ldquo;unobvious.&rdquo; This patent
223 might pass muster, according to them.</p>
224
225 <p>What's more, the courts are reluctant to overrule the Patent
226 Office, so there is a better chance of getting a patent overturned if
227 you can show a court prior art that the Patent Office did not
228 consider. If the courts are willing to entertain a higher standard in
229 judging unobviousness, it helps to save the prior art for them. Thus,
230 the proposals to &ldquo;make the system work better&rdquo; by
231 providing the Patent Office with a better database of prior art could
232 instead make things worse.</p>
233
234 <p>It is very hard to make a patent system behave reasonably; it is a
235 complex bureaucracy and tends to follow its structural imperatives
236 regardless of what it is &ldquo;supposed&rdquo; to do. The only
237 practical way to get rid of the many obvious patents on software
238 features and business practices is to get rid of all patents in those
239 fields. Fortunately, that would be no loss: the unobvious patents in
240 the software field do no good either. What software patents do is put
241 software developers and users under threat.</p>
242
243 <p>The patent system is supposed, intended, to promote progress, and those who
244 benefit from software patents ask us to believe without question that they do
245 have that effect. But programmers' experience shows otherwise. New theoretical
246 analysis shows that this is no paradox. (See <a
247 href="https://web.archive.org/web/20000815064858/http://www.researchoninnovation.org/patent.pdf">researchoninnovation.org/patent.pdf</a>
248 on web.archive.org.) There is no reason why society should expose software
249 developers and users to the danger of software patents.</p>
250 </div>
251
252 </div><!-- for id="content", starts in the include above -->
253
254 <!--#include virtual="/server/footer.html" -->
255 <div id="footer" role="contentinfo">
256 <div class="unprintable">
257
258 <p>Please send general FSF &amp; GNU inquiries to
259 <a href="mailto:gnu@gnu.org">&lt;gnu@gnu.org&gt;</a>.
260 There are also <a href="/contact/">other ways to contact</a>
261 the FSF. Broken links and other corrections or suggestions can be sent
262 to <a href="mailto:webmasters@gnu.org">&lt;webmasters@gnu.org&gt;</a>.</p>
263
264 <p><!-- TRANSLATORS: Ignore the original text in this paragraph,
265 replace it with the translation of these two:
266
267 We work hard and do our best to provide accurate, good quality
268 translations. However, we are not exempt from imperfection.
269 Please send your comments and general suggestions in this regard
270 to <a href="mailto:web-translators@gnu.org">
271 &lt;web-translators@gnu.org&gt;</a>.</p>
272
273 <p>For information on coordinating and contributing translations of
274 our web pages, see <a
275 href="/server/standards/README.translations.html">Translations
276 README</a>. -->
277 Please see the <a
278 href="/server/standards/README.translations.html">Translations
279 README</a> for information on coordinating and contributing translations
280 of this article.</p>
281 </div>
282
283 <!-- Regarding copyright, in general, standalone pages (as opposed to
284 files generated as part of manuals) on the GNU web server should
285 be under CC BY-ND 4.0. Please do NOT change or remove this
286 without talking with the webmasters or licensing team first.
287 Please make sure the copyright date is consistent with the
288 document. For web pages, it is ok to list just the latest year the
289 document was modified, or published.
290
291 If you wish to list earlier years, that is ok too.
292 Either "2001, 2002, 2003" or "2001-2003" are ok for specifying
293 years, as long as each year in the range is in fact a copyrightable
294 year, i.e., a year in which the document was published (including
295 being publicly visible on the web or in a revision control system).
296
297 There is more detail about copyright years in the GNU Maintainers
298 Information document, www.gnu.org/prep/maintain. -->
299
300 <p>Copyright &copy; 2006, 2021 Richard Stallman</p>
301
302 <p>This page is licensed under a <a rel="license"
303 href="http://creativecommons.org/licenses/by-nd/4.0/">Creative
304 Commons Attribution-NoDerivatives 4.0 International License</a>.</p>
305
306 <!--#include virtual="/server/bottom-notes.html" -->
307
308 <p class="unprintable">Updated:
309 <!-- timestamp start -->
310 $Date: 2021/09/22 08:25:59 $
311 <!-- timestamp end -->
312 </p>
313 </div>
314 </div><!-- for class="inner", starts in the banner include -->
315 </body>
316 </html>

savannah-hackers-public@gnu.org
ViewVC Help
Powered by ViewVC 1.1.26