|
@@ -1,195 +0,0 @@
|
1
|
|
----
|
2
|
|
-title: Free software to save the world
|
3
|
|
-#date:
|
4
|
|
-#description:
|
5
|
|
-tags: [ 'free', 'software', 'foss', 'ethics' ]
|
6
|
|
-draft: true
|
7
|
|
----
|
8
|
|
-
|
9
|
|
-During the past few years, I've been focused on free software a lot. At first, it
|
10
|
|
-seemed to me like a weird thing for hippies and hipsters (which it still is for
|
11
|
|
-most people, let's not deny it).
|
12
|
|
-
|
13
|
|
-A couple of years later (which is around now), I've became quite involved in free
|
14
|
|
-software communities. I have a few diverse contributions to my counter, and I'm
|
15
|
|
-currently working at [CozyCloud](https://cozy.io), after a quick (but intense)
|
16
|
|
-internship at [Matrix.org](https://matrix.org) (as you might have guessed, both
|
17
|
|
-work on free software projects). And this world doesn't cease to amaze me.
|
18
|
|
-
|
19
|
|
-**Disclaimer**: In this post, I'll share my opinion and experience on free
|
20
|
|
-software. I'm not stating it as an absolute truth, and you're absolutely free
|
21
|
|
-to disagree with it. I'd even be glad to discuss it if that's the case, either
|
22
|
|
-on [Twitter](https://twitter.com/BrenAbolivier) or by email at
|
23
|
|
-<blog@brendanabolivier.com>.
|
24
|
|
-
|
25
|
|
-Now I guess some readers don't know what free software is, or might not understand
|
26
|
|
-some expressions I'll be using in this post (plus I'm really stubborn in my way
|
27
|
|
-to use them, ask my flatmate). So here's a quick recap. Please note that I'll be
|
28
|
|
-talking about free **software** in this post, but most of my points also applies
|
29
|
|
-to resources (images, videos, documentation, etc.) published in the same terms as
|
30
|
|
-free software.
|
31
|
|
-
|
32
|
|
-## Terminology
|
33
|
|
-
|
34
|
|
-* **Free software**: The "free" in "free software" is the same one as in "freedom".
|
35
|
|
-Free software is software distributed under a *free license*, which is a license
|
36
|
|
-allowing the software's user to run, copy, distribute, study, change and improve
|
37
|
|
-it.
|
38
|
|
-* **Open-source software**: There's a lot of discussion on the meaning of this
|
39
|
|
-expression. For some it's the same as free software, for others it's not. I call "open-source software" all software that isn't distributed a free license but
|
40
|
|
-allows the public access to its source code. Also called "OSS".
|
41
|
|
-* **FOSS**: An acronym meaning "Free and Open-Source Software".
|
42
|
|
-* **Proprietary software**: Usually refers to software that isn't free.
|
43
|
|
-<!-- Maybe add some stuff here as writing the post goes -->
|
44
|
|
-
|
45
|
|
-## A short history of free software
|
46
|
|
-
|
47
|
|
-There was a time, at the dawn of programming, where programmers and hackers,
|
48
|
|
-researchers and curious people, were all living and working in harmony (kind of).
|
49
|
|
-Everyone was discovering the powers of a computer and sharing their discoveries
|
50
|
|
-and source codes with the others.
|
51
|
|
-
|
52
|
|
-In the early 80s, however, this [hacker
|
53
|
|
-culture](https://en.wikipedia.org/wiki/Hacker_culture) was in decline, as
|
54
|
|
-programmers and manufacturers progressively stopped distributing the source code of
|
55
|
|
-their programs and started using copyright and restrictive software licenses.
|
56
|
|
-
|
57
|
|
-Meanwhile, in a MIT lab, a grumpy hippie named
|
58
|
|
-[Richard Matthew Stallman](https://en.wikipedia.org/wiki/Richard_Stallman), still
|
59
|
|
-found of [hacker ethic](https://en.wikipedia.org/wiki/Hacker_ethic), struggles
|
60
|
|
-with the lab's printer. It has paper jam issues, and lacks some cool features
|
61
|
|
-Stallman hacked into the previous one. So he emails the printer's manufacturer,
|
62
|
|
-Xerox, asking for the source code so he could add his changes to it, which Xerox
|
63
|
|
-denied.
|
64
|
|
-
|
65
|
|
-This made Stallman realise the hacker culture was disappearing, and made him
|
66
|
|
-realise he had to take actions before it was too late.
|
67
|
|
-
|
68
|
|
-In 1983, Stallman creates the [GNU](https://www.gnu.org/) project which aims at
|
69
|
|
-replacing the (mostly) proprietary [Unix](https://en.wikipedia.org/wiki/Unix).
|
70
|
|
-Shortly after that, he even quits from the MIT to work full time on it. A couple
|
71
|
|
-of years later, he creates the [Free Software Foundation](https://www.fsf.org/)
|
72
|
|
-with the mission to create a legal structure for free software.
|
73
|
|
-
|
74
|
|
-These two projects will serve as the base of what free software is today, by
|
75
|
|
-providing the [GNU licenses](https://www.gnu.org/licenses/), which are a set of
|
76
|
|
-free licenses, and by creating the GNU/Linux operating system (which is often
|
77
|
|
-[abbreviated](https://www.gnu.org/gnu/gnu-linux-faq.html#why) as only "Linux"),
|
78
|
|
-built on top of the Linux kernel, and which is currently the most used operating
|
79
|
|
-system in the world.
|
80
|
|
-
|
81
|
|
-Back to the present, free software are widely used all around the world, both by
|
82
|
|
-individuals and big corporations. For instance, I'm currently writing this post
|
83
|
|
-using [Atom](https://github.com/atom/atom), while listening to some music in
|
84
|
|
-[Rhythmbox](https://en.wikipedia.org/wiki/Rhythmbox) or
|
85
|
|
-[VLC](https://www.videolan.org/vlc/) and browsing the Web using
|
86
|
|
-[Firefox](https://www.mozilla.org/en-US/firefox/) and chatting with friends over
|
87
|
|
-[Riot](https://github.com/vector-im/riot-web). On the other side of the screen,
|
88
|
|
-most websites I usually browse are using free software as their Web server,
|
89
|
|
-operating system, sometimes even as their [content
|
90
|
|
-manager](https://fr.wikipedia.org/wiki/MediaWiki). Even this blog is [powered by
|
91
|
|
-free software](https://github.com/gohugoio/hugo).
|
92
|
|
-
|
93
|
|
-## The culture of freedom
|
94
|
|
-
|
95
|
|
-"But what exactly is free software", you might ask. As I mentioned above, a
|
96
|
|
-software is free when it gives freedom to its user. More precisely, it refers
|
97
|
|
-to four kind of freedom, as stated on [the FSF website](https://www.gnu.org/philosophy/free-sw.html.en):
|
98
|
|
-
|
99
|
|
-* The freedom to run the program as you wish, for any purpose (freedom 0).
|
100
|
|
-* The freedom to study how the program works, and change it so it does your
|
101
|
|
-computing as you wish (freedom 1). Access to the source code is a precondition
|
102
|
|
-for this.
|
103
|
|
-* The freedom to redistribute copies so you can help your neighbor (freedom 2).
|
104
|
|
-* The freedom to distribute copies of your modified versions to others (freedom 3).
|
105
|
|
-By doing this you can give the whole community a chance to benefit from your changes.
|
106
|
|
-Access to the source code is a precondition for this.
|
107
|
|
-
|
108
|
|
-On top of framing a legal setting for free software by being enforced by the
|
109
|
|
-software's license, these four freedoms also set the ethical dimension of the
|
110
|
|
-free software culture. Really close to the hacker culture, it promotes both
|
111
|
|
-transparency and respect of the software's user.
|
112
|
|
-
|
113
|
|
-And that's where free software differs from proprietary software: instead of
|
114
|
|
-forcing the user to only be a passive party to the software's life, it allows
|
115
|
|
-them to take an active part in it. The user can now know exactly what the software
|
116
|
|
-does and hack it, instead of enduring it as a closed and opaque box that only
|
117
|
|
-partly fits their needs.
|
118
|
|
-
|
119
|
|
-This ethical dimension is really important to free software communities. Most
|
120
|
|
-even use them in their project's design and management. That's how you usually
|
121
|
|
-end up using free software when looking for avoiding [mass
|
122
|
|
-surveillance](https://github.com/EFForg/privacybadger) or
|
123
|
|
-[censorship](https://github.com/NInfolab/website-mirror-by-proxy), or why discussion
|
124
|
|
-around most of free software projects can be found on public mailing lists or
|
125
|
|
-IRC/Matrix/XMPP/etc. channels.
|
126
|
|
-
|
127
|
|
-This second point also creates a unique relationship between the developer of a
|
128
|
|
-free software and its users. Instead of having to go through multiple layers of
|
129
|
|
-support/management/communication, a user can get in touch directly with the
|
130
|
|
-software's developer, which usually makes the software fit better with the people
|
131
|
|
-using it.
|
132
|
|
-
|
133
|
|
-Another benefit of such a relationship is the feedback you get from your work.
|
134
|
|
-You're not getting congratulations from managers happy because you helped make
|
135
|
|
-some money come in, but you're getting thanks from users because your hard work
|
136
|
|
-allowed them access to service they didn't have before, or with better conditions.
|
137
|
|
-And both when I'm working on free software as my paid job and when I'm doing it
|
138
|
|
-on my free time, reading this kind of messages always warm my heart at a point
|
139
|
|
-I can't describe:
|
140
|
|
-
|
141
|
|
-![](/images/matrix-dendrite-feeback.png)
|
142
|
|
-
|
143
|
|
-And while this culture of freedom, respect and transparency towards the user can
|
144
|
|
-be a constraint to some projects, some others are built from it. Having these
|
145
|
|
-obligations towards the product's end user is essential in projects orbiting
|
146
|
|
-around privacy or security: users don't **have to** trust the developpers because
|
147
|
|
-they are told to, but users **can** trust the developpers because they see exactly
|
148
|
|
-what the software does. "We are not evil" is replaced with "We can't be evil".
|
149
|
|
-Because if the developpers drift away from their promises, users will be able to
|
150
|
|
-notice it and use something else instead, which would kill the project.
|
151
|
|
-
|
152
|
|
-## The professionals of free software
|
153
|
|
-
|
154
|
|
-One very common idea about free software is that it's a somehow unstable thing
|
155
|
|
-developed by some hippies in a basement during their free time. But although this
|
156
|
|
-might have been true at some point of history, things have changed a bit since
|
157
|
|
-then.
|
158
|
|
-
|
159
|
|
-As I mentioned earlier, free software is getting a bigger and bigger place on our
|
160
|
|
-computers or servers. This also means that the allocated ressources to the
|
161
|
|
-development of such software has also gone bigger and bigger, because the people
|
162
|
|
-doing it usually want to turn it into a paid job, and because the companies using
|
163
|
|
-it usually want to ensure the software will keep getting updates.
|
164
|
|
-
|
165
|
|
-However, this goal can seem hard to achieve. How would you make money out of
|
166
|
|
-something anyone can access and use for free?
|
167
|
|
-
|
168
|
|
-Several kind of structures and scenarios of people turning free software
|
169
|
|
-development into a paid job already exists. The most obvious case is using a
|
170
|
|
-non-profit foundation structure, which will employ people to work on free software.
|
171
|
|
-This is the case, for example, of the [Mozilla
|
172
|
|
-Foundation](https://www.mozilla.org/en-US/foundation/), which develops
|
173
|
|
-[Firefox](https://www.mozilla.org/en-US/firefox/) and
|
174
|
|
-[Thunderbird](https://www.mozilla.org/en-US/thunderbird/), or the [Wikimedia
|
175
|
|
-Foundation](https://wikimediafoundation.org/wiki/Home), developping the software
|
176
|
|
-behind [Wikipedia](https://www.wikipedia.org/). These foundation usually live off
|
177
|
|
-donations from users or corporations, and promote their software as a solution
|
178
|
|
-to an ethical issue. To continue with the previous examples Firefox is introduced
|
179
|
|
-as a solution to mass surveillance and respectful browsing on the Web, and
|
180
|
|
-the Wikimedia Foundation works, (partly) by developping their software, towards
|
181
|
|
-providing free and reliable knowledge to the world.
|
182
|
|
-
|
183
|
|
-Another kind of structure that can be found in the free software ecosystem is a
|
184
|
|
-company. Because of the changes in the software industry pushing developers
|
185
|
|
-towards not selling the software they've created, but rather selling their expertise
|
186
|
|
-to use, host or hack it, companies are now able to get some money in while working
|
187
|
|
-exclusively on free software. Some companies are selling hosting of their service,
|
188
|
|
-such as [GitLab](https://about.gitlab.com/gitlab-com/), others are selling corporate
|
189
|
|
-support for companies using their software like [Matrix.org](https://matrix.org/)
|
190
|
|
-does. And it ususally works, because who can help you out with a piece of software,
|
191
|
|
-or host it for you, better than the people making it?
|
192
|
|
-
|
193
|
|
-Last, but not least, a few projects are also lead by independant developers working
|
194
|
|
-as freelancers. Examples are way fewer than for the two first structures, but they
|
195
|
|
-do exist. Take a look, for example,
|