taler-merchant-demos

Python-based Frontends for the Demonstration Web site
Log | Files | Refs | Submodules | README | LICENSE

rms-patents.html (15840B)


      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="speeches" -->
      5 <!--#set var="DISABLE_TOP_ADDENDUM" value="yes" -->
      6 <title>Solutions to the Software Patent Problem
      7 - GNU Project - Free Software Foundation</title>
      8 <style type="text/css" media="screen"><!--
      9 #content i { color: #505050; }
     10 --></style>
     11  <!--#include virtual="/philosophy/po/rms-patents.translist" -->
     12 <!--#include virtual="/server/banner.html" -->
     13 <!--#include virtual="/philosophy/ph-breadcrumb.html" -->
     14 <!--GNUN: OUT-OF-DATE NOTICE-->
     15 <!--#include virtual="/server/top-addendum.html" -->
     16 <div class="article reduced-width">
     17 <h2>Solutions to the Software Patent Problem</h2>
     18 
     19 <address class="byline">by Richard Stallman</address>
     20 
     21 <div class="infobox">
     22 <p>Speech given at the Locatelli Center, Santa Clara University,
     23 in November 2012&nbsp; (<a
     24 href="//audio-video.gnu.org/video/keynote-what-is-the-problem.webm">video</a>,
     25 &nbsp;<a href="//audio-video.gnu.org/video/#2012">metadata</a>)</p>
     26 </div>
     27 <hr class="thin" />
     28 
     29 <p><b>Andrew Chen:</b> Thank you, Eric.</p>
     30 
     31 <p>My name is Andrew Chen.  I teach patent law at the University of
     32 North Carolina, and I had a previous life as a Computer Science
     33 professor.</p>
     34 
     35 <p>I have the easiest job today, which is introducing two men who need
     36 no introduction.  Richard Stallman, we know, is the founder of the
     37 free software movement, co-founder of the League for Programming
     38 Freedom, lead software architect for the GNU Project and author of
     39 Emacs, which he's described as a text editor and also a way of life.
     40 Something that I can agree with, having written my doctoral
     41 dissertation using his program.</p>
     42 
     43 <p>Dr Stallman has decided not to participate in the live streaming
     44 facility for today.  He explains that use of the streaming online
     45 would require use of the Microsoft Silverlight plugin, which would
     46 pressure people to use proprietary software.  Dr Stallman considers it
     47 wrong to pressure people to do that.  He would like you to know that
     48 he plans to make a recording of his presentation available at a later
     49 time in either the Ogg Theora or WebM formats.</p>
     50 
     51 <p>Dr Stallman.</p>
     52 
     53 <p><i>[applause]</i></p>
     54 
     55 <p><b>Richard Stallman:</b> Can the tech people please confirm that
     56 the streaming is off?</p>
     57 
     58 <p>OK, I think that's confirmation.</p>
     59 
     60 <p>So, why are software patents bad?  Or, &ldquo;computational idea
     61 patents&rdquo; as I think we should really call them, because each one
     62 is a monopoly on a computational idea.  Most people, when you say
     63 &ldquo;software patents,&rdquo; they think it's a question of
     64 patenting a specific program.  I'm sure all of you know that that's
     65 not what those patents do, but most people don't know that, so, to try
     66 to avoid misleading people, I call them &ldquo;computational idea
     67 patents.&rdquo;</p>
     68 
     69 <p>So, anyway, the reason these are bad is that they deny people the
     70 freedom to use their computers as they wish and do their computing as
     71 they wish, freedom that everyone must have.  These patents put all
     72 software developers in danger, and their users as well.  A danger that
     73 there is no reason we should stand for.  So: we should protect
     74 software from patents.  Software needs patent protection: protection
     75 from patents.</p>
     76 
     77 <p>But most people don't know enough about what patents do to
     78 appreciate why patents that can restrict software are so harmful.
     79 Most people think that patents are like copyrights, which is not true
     80 at all.  The sum total of what they have in common is one sentence in
     81 the Constitution, and that similarity is so little and abstract it has
     82 nothing to do with the practical effects.</p>
     83 
     84 <p>So, the last thing we should ever do is use the term
     85 &ldquo;intellectual property&rdquo; that confuses not just these two
     86 laws, but a bunch of other unrelated, disparate laws, that don't even
     87 share one sentence in the Constitution with those two.  So that term
     88 spreads confusion whenever it's used and about eight years ago I
     89 decided I should never use it and I have never used it since then.
     90 It's surprisingly easy to avoid, because in general there's no reason
     91 whatsoever to use it except that it's chic.  And once you learn to
     92 resist that, it's as easy as pie, just talk about one law, and then
     93 you call that law by its name, and you're making a coherent, clear
     94 statement.</p>
     95 
     96 <p>So, I have to explain to people what patents do, and show them that
     97 it's not at all like what copyrights do.  An analogy is a good way to
     98 do this.  What can you say about programs?  Well, they're large works,
     99 full of details that all have to work together to get the desired
    100 result.  Well, what else is there like that?  A novel, or a symphony.
    101 <span class="gnun-split"></span>
    102 So, imagine if the governments of Europe in the 1700s had had the
    103 cockeyed idea of promoting the progress of symphonic music with a
    104 system of &ldquo;musical idea patents.&rdquo;  So, any musical idea
    105 statable in words could have been patented.  A melodic motif could
    106 have been patented, or a series of chords, or a rhythmic pattern, or a
    107 pattern of repetitions in a movement, or the use of certain
    108 instruments while the rest of the orchestra is silent and a bunch of
    109 other musical ideas that I can't think of, but maybe a composer
    110 would.</p>
    111 
    112 <p>So, now imagine it's 1800 and you're Beethoven and you want to
    113 write a symphony.  You're going to find that it's harder to write a
    114 symphony that you don't get sued for than to write a good symphony.
    115 Now, you'd probably have complained, and the patent holders would have
    116 said &ldquo;Oh, Beethoven, you're just jealous because we had these
    117 ideas before you.  Why don't you go think of some ideas of your
    118 own?&rdquo;<span class="gnun-split"></span>
    119 Of course, Beethoven is considered a great composer
    120 because he had lots of new ideas, and not only that, he knew how to
    121 use them effectively.  And that is: combined with lots of familiar
    122 ideas, so that his pieces were merely shocking for a while, but people
    123 could get used to them.  They were not so alien and incomprehensible
    124 that they got rejected.  They shocked people for a while, people got
    125 used to them, and now we don't see what's shocking any more, because
    126 we're used to those ideas.  Well, that's the proof that he used those
    127 ideas well.</p>
    128 
    129 <p>So, the idea that anyone could, or should have to, reinvent music
    130 from zero, is absurd.  Not even a Beethoven could do that, and it
    131 would be silly to ask someone to try.  It's the same with computing.
    132 Just as a symphony implements many musical ideas together, but the
    133 hard part is not picking a bunch of ideas.  The hard part is
    134 implementing them together with notes.  It's the same with software.
    135 A large program will implement thousands of ideas together.  But the
    136 hard part is not picking some ideas.  It's easy to pick some ideas.
    137 What's hard is to implement them all together and make it work
    138 well.</p>
    139 
    140 <p>So &ldquo;computational idea patents&rdquo; obstruct the hard and
    141 big job by promoting resources that we get plenty of anyways.  So it's
    142 a misconceived system.  Designed to give us help we don't want at the
    143 cost of tremendous problems.</p>
    144 
    145 <p>So what we need is to get rid of the problem.  What is the problem?
    146 The problem is: software developers and their users are threatened by
    147 patents.  They are in danger.  How can you prevent that?  Well, one
    148 way is: don't issue patents that could affect software.  That solution
    149 works if you apply it from the beginning.  If a country never issues
    150 such patents, then its patent system doesn't attack software.  OK,
    151 it's a good solution.  But it's not applicable if a country has
    152 already issued hundreds of thousands of software patents.</p>
    153 
    154 <p>Now, I've proposed that constitutions should explicitly say that
    155 patent privileges can be reduced just as they can be increased.  That
    156 they are not in any sense somebody's property; they are privileges
    157 given out by the government which can be changed at will.  After all,
    158 if you allow the government by legislation to increase them, it's
    159 absurd to make this a one-way ratchet.  But that's not in the US
    160 Constitution.</p>
    161 
    162 <p>So, what can we do?  Well, we can ask courts to rule that all those
    163 patents that restrict software were invalid from the beginning and
    164 always have been invalid, and that gets rid of them all.  However,
    165 that's not something that people can lobby for.  It's not something we
    166 can say to officials, &ldquo;do this because we want you
    167 to.&rdquo;</p>
    168 
    169 <p>So, if we're going to look for a solution that we can get
    170 implemented, what is there?  Well, the only way I can see is to
    171 legislate that software is a safe harbor.  If it's software, then
    172 you're safe.  Circuits to do the same computation would be covered by
    173 a patent, but if it's software, then you're safe.  But what does that
    174 mean?  What does it mean for something to be software?  Well, it runs
    175 on a general purpose, universal machine.  So first you make a
    176 universal machine and then you put in the program to say what it
    177 should do.  Well, if the machine's only function is to be universal,
    178 then the program is all that implements any specific, patented
    179 idea.</p>
    180 
    181 <p>So, that's the case I want to get at, and I'm trying to separate it
    182 from a case like that in <cite>Diamond v. Diehr</cite> where there
    183 was a patent for a system, a method of curing rubber.  The
    184 implementation involved a computer, but it also involved special
    185 purpose hardware, not a general purpose universal machine, and that
    186 special purpose hardware was crucial to carrying out the patented
    187 technique.<span class="gnun-split"></span>
    188 It wasn't actually a software technique.  And, actually, I
    189 read an article by Pamela Samuelson arguing that the CAFC twisted that
    190 decision and basically got the quantifiers in the wrong order.  That
    191 the Supreme Court said, &ldquo;the fact that there's a computer in
    192 there somewhere doesn't automatically make it non-patentable,&rdquo;
    193 and the CAFC twisted that into &ldquo;the computer makes it
    194 patentable.&rdquo;</p>
    195 
    196 <p>Anyway, we might have some hope with the courts, but I'm proposing
    197 a method that will separate the cases that we must protect from
    198 non-computational idea patents that affect systems that might be
    199 implemented  with a computer in there somewhere.  The precise words to
    200 use?  Well, the best I could come up with was: &ldquo;software running
    201 on generally used computing hardware.&rdquo;  We certainly want things
    202 like smartphones to be covered; we don't want it to exclude anything
    203 that has any kind of special-purpose hardware in there.
    204 <span class="gnun-split"></span>The portable
    205 phone obviously has specialised hardware to talk to the phone network,
    206 but that shouldn't automatically mean that if it's running on a
    207 portable phone, it's vulnerable to patents.  Because that is a general
    208 purpose computer and people use it for all sorts of things.  But my
    209 words, &ldquo;generally used computing hardware,&rdquo; they may not
    210 be the best possible words.  This is a subject that I think calls for
    211 study, because we've got to look at each possible wording that might
    212 be used and see which cases would be protected from patents and which
    213 would be exposed to come up with the right method.</p>
    214 
    215 <p>Now, every time I suggest a method to solve this problem, the first
    216 thing people try to look for is how to half solve it instead.  The
    217 idea of really solving the problem shocks people because it strikes
    218 them as radical.  They think &ldquo;I can't advocate something so
    219 radical as to really solve this whole problem.  I've got to look for
    220 some partial solution that will only protect some software
    221 developers.&rdquo;<span class="gnun-split"></span>
    222 Well, that's a mistake.  It's a mistake a) because
    223 it wouldn't do the whole job, but b) because it would be harder to get
    224 it passed.  There are lots of software developers and they are all
    225 threatened and if we propose to protect them all, they will all have a
    226 reason to support it.  But if we propose to only protect some of them,
    227 the rest will say &ldquo;well, this doesn't do me any good, why should
    228 I care?&rdquo;</p>
    229 
    230 <p>So, let's propose a real solution.  And, besides, partial solutions
    231 tend to be vulnerable to the problem that Boldrin and Levine have
    232 written about very effectively, that it's easy for the pressures for
    233 patents to stretch the boundaries if you give them any kind of
    234 boundary that they can stretch.  And this, by the way, is another
    235 advantage of applying a change to suing people, rather than to what's
    236 patentable.  Because there, the criteria are just &ldquo;what kind of
    237 situation is this?&rdquo;
    238 <span class="gnun-split"></span>
    239 It's harder to stretch those, and if they
    240 tried, it would always be in a case against somebody who's going to be
    241 fighting not to stretch it.  So it's less vulnerable to being
    242 distorted from an intended restriction of substance into an actual
    243 requirement of form of patent applications, which tends to happen to
    244 any kind of requirement about what patent applications have to look
    245 like.</p>
    246 
    247 <p>So, there I go.</p>
    248 
    249 <p><i>[applause]</i></p>
    250 
    251 <p><b>Andrew Chen:</b> Thank you, Dr Stallman.</p>
    252 </div>
    253 
    254 </div><!-- for id="content", starts in the include above -->
    255 <!--#include virtual="/server/footer.html" -->
    256 <div id="footer" role="contentinfo">
    257 <div class="unprintable">
    258 
    259 <p>Please send general FSF &amp; GNU inquiries to
    260 <a href="mailto:gnu@gnu.org">&lt;gnu@gnu.org&gt;</a>.
    261 There are also <a href="/contact/">other ways to contact</a>
    262 the FSF.  Broken links and other corrections or suggestions can be sent
    263 to <a href="mailto:webmasters@gnu.org">&lt;webmasters@gnu.org&gt;</a>.</p>
    264 
    265 <p><!-- TRANSLATORS: Ignore the original text in this paragraph,
    266         replace it with the translation of these two:
    267 
    268         We work hard and do our best to provide accurate, good quality
    269         translations.  However, we are not exempt from imperfection.
    270         Please send your comments and general suggestions in this regard
    271         to <a href="mailto:web-translators@gnu.org">
    272         &lt;web-translators@gnu.org&gt;</a>.</p>
    273 
    274         <p>For information on coordinating and contributing translations of
    275         our web pages, see <a
    276         href="/server/standards/README.translations.html">Translations
    277         README</a>. -->
    278 Please see the <a
    279 href="/server/standards/README.translations.html">Translations
    280 README</a> for information on coordinating and contributing translations
    281 of this article.</p>
    282 </div>
    283 
    284 <!-- Regarding copyright, in general, standalone pages (as opposed to
    285      files generated as part of manuals) on the GNU web server should
    286      be under CC BY-ND 4.0.  Please do NOT change or remove this
    287      without talking with the webmasters or licensing team first.
    288      Please make sure the copyright date is consistent with the
    289      document.  For web pages, it is ok to list just the latest year the
    290      document was modified, or published.
    291      
    292      If you wish to list earlier years, that is ok too.
    293      Either "2001, 2002, 2003" or "2001-2003" are ok for specifying
    294      years, as long as each year in the range is in fact a copyrightable
    295      year, i.e., a year in which the document was published (including
    296      being publicly visible on the web or in a revision control system).
    297      
    298      There is more detail about copyright years in the GNU Maintainers
    299      Information document, www.gnu.org/prep/maintain. -->
    300 
    301 <p>Copyright &copy; 2016, 2022 Free Software Foundation, Inc.</p>
    302 
    303 <p>This page is licensed under a <a rel="license"
    304 href="http://creativecommons.org/licenses/by-nd/4.0/">Creative
    305 Commons Attribution-NoDerivatives 4.0 International License</a>.</p>
    306 
    307 <!--#include virtual="/server/bottom-notes.html" -->
    308 
    309 <p class="unprintable">Updated:
    310 <!-- timestamp start -->
    311 $Date: 2022/06/11 13:47:06 $
    312 <!-- timestamp end -->
    313 </p>
    314 </div>
    315 </div><!-- for class="inner", starts in the banner include -->
    316 </body>
    317 </html>