summaryrefslogtreecommitdiff
path: root/talermerchantdemos/blog/articles/en/free-software-rocket.html
blob: 6b58f453c5cfb71938a86c50a32845a83f750980 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
<!--#include virtual="/server/header.html" -->
<!-- Parent-Version: 1.94 -->
<!-- This page is derived from /server/standards/boilerplate.html -->
<title>Should Rockets Have Only Free Software? Free Software and Appliances
- GNU Project - Free Software Foundation</title>
 <!--#include virtual="/philosophy/po/free-software-rocket.translist" -->
<!--#include virtual="/server/banner.html" -->
<h2>Should Rockets Have Only Free Software? Free Software and Appliances
</h2>

<address class="byline">by Richard Stallman</address>

<p>Could there be a rocket that is totally free software?  Should we
demand that SpaceX liberate the software in its satellite launching
rockets?  I don't think the person who asked me this was serious, but
answering that question may illuminate similar issues about the sorts
of products people really buy today.</p>

<p>As far as I know, software as such is not capable of generating
thrust.  A rocket is necessarily principally a physical device, so it
can't literally <em>be</em> free software.  But it may include
computerized control and telemetry systems, and thus software.</p>

<p>If someone offered to sell me a rocket, I would treat it like any
other appliance.  Consider, for instance, a thermostat.  If it
contains software to be modified, all the software in it needs to be
free, and I alone should have the authority to decide whether to
install some change.  If, however, the software in it is not meant
ever to be altered, and it communicates <em>only</em> through some
limited interface, such as buttons on the control panel, a TV remote
control, or a USB interface with a fixed set of commands, I would not
consider it crucial to know what is inside the thermostat: whether it
contains a special-purpose chip, or a processor running code, makes no
direct difference to me as user.  If it does contain code, it might as
well have a special chip instead, so I don't need to care which it
is.</p>

<p>I would object if that thermostat sent someone data about my
activities, regardless of how that was implemented.  Once again,
special chip or special code makes no direct difference.  Free
software in it could give me a way to turn off the surveillance, but
that is not the only way.  Another is by disconnecting its digital
communication antennas, or switching them off.</p>

<p>If the rocket contains software, releasing that as free software can
be a contribution to the community, and we should appreciate that
contribution&mdash;but that is a different issue.  Such release also
makes it possible for people who have bought the rockets to work on
improving the software in them, though the irreversible nature of many
rocket failures may discourage tinkering.</p>

<p>Readers have pointed out that SpaceX has
received <a href="https://www.theverge.com/2019/6/18/18683455/nasa-space-angels-contracts-government-investment-spacex-air-force">important
financial support from the US government</a> to develop its rockets.
By rights, accepting this support should require SpaceX to release the
rocket software under a free license, even if it uses that software
only inside its own rockets.</p>

<p>Given the experience of Tesla cars, which are full of surveillance and
tracking malware that Tesla can change but the owner can't, I suppose
SpaceX rockets have that too.  If someday rockets are sold like today's
cars and tractors, <a 
href="/philosophy/free-software-even-more-important.html">software in
them would be unjust</a>, and it would <a
href="/proprietary/proprietary.html">probably be malware</a>.  If the
manufacturer could install modified software in it but the owner could
not, that too would be unjust.  People are starting to recognize this:
look at the right-to-repair movement, which demands only the beginning
of these freedoms (much less than freeing the car's software) and
nonetheless faces a hard fight.</p>

<p>However, I don't think SpaceX sells rockets; I think it provides the
service of launching payloads in its own rockets.  That makes the
issue totally different: if you are a customer, you're not operating
the rocket; SpaceX is doing that.</p>

<p>The rocket that SpaceX uses is not like your own car or van, or even a
car or van leased to you.  Rather, it's comparable to a moving
company's van that is, for the moment, transporting your books and
furniture to your specified destination.  It is the moving company
that deserves control over the software in that van&mdash;not the
customer of the moment.</p>

<p>It makes sense to treat the job of transporting your things to Outer
Mongolia, or to outer space, as a service because the job is mostly
self-contained and mostly independent of the customer (&ldquo;mostly&rdquo;
does not mean &ldquo;absolutely&rdquo; or &ldquo;100%&rdquo;),
so the instructions for the job are simple (take these boxes to address
A by date D).</p>

<p>If SpaceX has released the rocket software under a free license,
that would give you the right to make, use and distribute modified
versions, but would not give you the right to modify the code running
in SpaceX's rocket.</p>

<p>But there is a kind of activity which a hypothetical future
spaceship might do, which should never be treated as a service: private
computational activity.  That's because a private computational
activity is exactly what you could do on your own computer in freedom,
given suitable free software.</p>

<p>When a program's task is to do computing for you, you are entitled to
demand control over what it does and how, not just that it obey your
orders as it interprets them.  You are entitled, in other words, to
use your own copy of a free program, running on a computer you
control.</p>

<p>No wonder there are companies that would like you to cede control over
your computing activities to them, by labeling those activities as
&ldquo;services&rdquo; to be done on their servers with programs that they
control.  Even things as minutely directed by the user as text
editing!  This is a scheme to get you to substitute their power for
your freedom.  We call that &ldquo;Service as a Software
Substitute&rdquo;, SaaSS for short (see
&ldquo;<a href="/philosophy/who-does-that-server-really-serve.html">Who
does that server really serve?</a>&rdquo;), and we reject it.</p>

<p>For instance, imagine a hypothetical SpaceX Smart Spaceship, which as
a &ldquo;service&rdquo; wants to know all about your business so SpaceX servers
can decide for you what cargoes to buy and sell on which planets.
That planning service would be SaaSS&mdash;therefore a dis-service.
Instead of using that dis-service, you should do that planning with
your copy of free software on your own computer.</p>

<p>SpaceX and others could then legitimately offer you the
non-computational service of transporting cargoes, and you could use
it sometimes; or you could choose some other method, perhaps to buy a
spaceship and operate it yourself.</p>


</div><!-- for id="content", starts in the include above -->
<!--#include virtual="/server/footer.html" -->
<div id="footer">
<div class="unprintable">

<p>Please send general FSF &amp; GNU inquiries to
<a href="mailto:gnu@gnu.org">&lt;gnu@gnu.org&gt;</a>.
There are also <a href="/contact/">other ways to contact</a>
the FSF.  Broken links and other corrections or suggestions can be sent
to <a href="mailto:webmasters@gnu.org">&lt;webmasters@gnu.org&gt;</a>.</p>

<p><!-- TRANSLATORS: Ignore the original text in this paragraph,
        replace it with the translation of these two:

        We work hard and do our best to provide accurate, good quality
        translations.  However, we are not exempt from imperfection.
        Please send your comments and general suggestions in this regard
        to <a href="mailto:web-translators@gnu.org">
        &lt;web-translators@gnu.org&gt;</a>.</p>

        <p>For information on coordinating and contributing translations of
        our web pages, see <a
        href="/server/standards/README.translations.html">Translations
        README</a>. -->
Please see the <a
href="/server/standards/README.translations.html">Translations
README</a> for information on coordinating and contributing translations
of this article.</p>
</div>

<!-- Regarding copyright, in general, standalone pages (as opposed to
     files generated as part of manuals) on the GNU web server should
     be under CC BY-ND 4.0.  Please do NOT change or remove this
     without talking with the webmasters or licensing team first.
     Please make sure the copyright date is consistent with the
     document.  For web pages, it is ok to list just the latest year the
     document was modified, or published.
     
     If you wish to list earlier years, that is ok too.
     Either "2001, 2002, 2003" or "2001-2003" are ok for specifying
     years, as long as each year in the range is in fact a copyrightable
     year, i.e., a year in which the document was published (including
     being publicly visible on the web or in a revision control system).
     
     There is more detail about copyright years in the GNU Maintainers
     Information document, www.gnu.org/prep/maintain. -->

<p>Copyright &copy; 2020 Richard Stallman</p>

<p>This page is licensed under a <a rel="license"
href="http://creativecommons.org/licenses/by-nd/4.0/">Creative
Commons Attribution-NoDerivatives 4.0 International License</a>.</p>

<!--#include virtual="/server/bottom-notes.html" -->

<p class="unprintable">Updated:
<!-- timestamp start -->
$Date: 2020/11/14 16:23:28 $
<!-- timestamp end -->
</p>
</div>
</div><!-- for class="inner", starts in the banner include -->
</body>
</html>