xmpp-site/articles/foss-socialism.md
2022-03-28 18:59:21 +02:00

606 lines
28 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# 21st Century Digital Marx #
## Why FOSS is Socialism ##
In this text we would like to explain why **Free and Open-Source Software** **FOSS**
for short is the closest thing we currently have to widespread **Socialism** and
outline what that means for leftist endeavours in the 21st century.
## What the fuck are you even talking about? ##
Let's start by clearing up what the hell **FOSS** and **Socialism** even are.
**Free and Open-Source Software** is software distributed under a [free] or
[open-source] license. There are some minor distinctions, but it *always* means
that anyone with access to the internet and a computer theoretically able to
run the software in question can get its [source code] for free to read, build,
run and modify it to their hearts content.
In the case of [free] licenses, it also means that any commercially used
modification of the [source code] has to be published, adding a *legal* guarantee
that things based on it stay in the technological commons the **FOSS** movement
has built.
Another outgrowth of the **FOSS** movement is **Free and Open-Source Hardware**,
bringing many of the advantages of **FOSS** into the physical world.
> Whether [free] or [open-source] licenses are better is a long-standing feud
> within the **FOSS** community. We have differentiated views on this, but those
> are outside of this articles scope.
[free]: https://simple.wikipedia.org/wiki/Free_software
[open-source]: https://simple.wikipedia.org/wiki/Open_source
[source code]: https://simple.wikipedia.org/wiki/Source_code
**Socialism** has many competing definitions, but at their core, they all boil down
to one central thing, the *public ownership of the means of production*.
This is the meaning we will use in this article.
## The digital means of production ##
A whole range of software qualifies as *means of production*.
This is the most obvious for the tools to produce digital products like all
the [video essays], [anarchist agitprop], podcasts and music you can find online
as well as the all the tools involved in software development.
But it is also true of many of the tools needed for physical manufacturing.
Machine design tools ([CAD]), control logic for industrial machinery, resource
allocation and monitoring solutions like [ERP]s are all software.
Production has become digitized and with **FOSS**, the ability to both *use* and
*shape* a huge swathe of the *means of production* has become available to anyone
willing to wield a keyboard.
[video essays]: https://yewtu.be/channel/UC6DbLEHgTj6VK7LvtzoGSIw/videos
[anarchist agitprop]: https://phryk.net/tag/propaganda/
[CAD]: https://en.wikipedia.org/wiki/Computer-aided_design
[ERP]: https://simple.wikipedia.org/wiki/Enterprise_resource_planning
## Global Collaboration ##
Software benefits from the fact that in the digital world with exponentially
increasing storage capacities and network bandwidth a couple of decades ago,
we suddenly found ourselves in a post-scarcity economy concerning the
transmission and storage of data.
Storing and distributing software is *dirt. cheap.* This basically eliminates
any technical cost to collaboration and led to people collaborating on ever
more ambitious open technology projects. And even tho corporations have long
since joined in the fray, the roots of collaboration between individuals of
all classes and creeds still runs strong in the movement.
Anyone with a computer and at least occasional access to the internet can
collaborate on **FOSS** development and you don't have to be a programmer to
do that either community support, writing documentation and translations,
testing and reporting issues are all essential parts of tending our
technological commons.
Deserving of a special mention in the context of public participation and
control are *forks*. A *fork* is a split in the development of software (or hardware) where a new team starts
maintaining their own version of the software, mostly or completely
independently from the original project.
This most often happens because the new team has major disagreements with
the direction a project is taking and can be used as a counter to malicious
actions like corporate takeovers or the introduction of antifeatures like
built-in trackers exposing all users of a piece of software to surveillance.
This participatory nature of **FOSS** grants an amount of control to everyday
people not found in most other places, least of all traditional capitalist
production.
## Trust ##
Another advantage of **FOSS** is that it's the only software you can trust from
an information security standpoint. This is thanks to the fact that the
source code is freely available and viewable by anyone.
In particular by infosec researchers, for whom the ability to read the
original source code makes their research *much* easier and who are always
eager to find new and interesting vulnerabilities to publish.
These days, many projects even offer bounties to anyone finding a
vulnerability in their software.
> Many of the same points might also be made about "source available"
> software, but this kind of software is still pretty rare and often
> involves jumping through hoops to get the source code. These hoops
> can involve signing a Non-Disclosure Agreement that barrs anyone
> viewing the code from speaking publicly about problems they found,
> which at least partially invalidates this argument.
*Closed-source* software in contrast has a huge barrier to entry for security
researchers, greatly hampering their work. On one side by having to analyze
machine code, which is harder and often illegal (you ever read those ToS or
EULA things?). On the other by only being allowed to view the source if you
happen to be hired by the Owner™ of the software to do an audit of their code,
which then hampers independent verification of the findings and might also
involve signing an NDA prohibiting you from publishing your findings in the
first place.
Thus **FOSS** gets a lot of positive attention from infosec researchers,
the vast majority of whom depend on **FOSS** for their security needs in
turn meaning it enjoys a big edge security-wise when compared to
*closed-source* software, which can and does contain all sorts of nasty
things.
## The biggest commons in human history ##
**FOSS** is **BIG**; It's *fucking everywhere* this is *not* overstating things.
Are you perchance visiting this site on an Android device?
Then your Operating System is based on the *[Linux]* kernel,
which is **FOSS**.
No? An Apple device like an iPhone or a MacBook maybe?
That's built on *[Darwin]*, Apples **FOSS** operating system base, which in turn
takes a lot of its code from *[FreeBSD]* the **FOSS** OS we run this service on.
<img src="/resources/dank-memes/programming-communism.jpg" alt="When you program open source, you're programming COMMUNISM" title="When you program open source, you're programming COMMUNISM" />
The vast majority of the internet is, in fact, run on **FOSS** Operating Systems.
Hell, even Microsoft, one of the [strongest] [antagonists] of the **FOSS**
movement since decades, runs its own infrastructure [on a Linux-based OS].
And the main product of those asshats is a *closed-source* **Operating System**
of which they even *sell a server version*! Just think about that for a minute:
Microsoft itself prefers a **FOSS** OS over its own OS!
We're sure there's nothing to worry about here. 🤪
[strongest]: https://www.zdnet.com/article/microsoft-free-and-open-source-software-violates-235-microsoft-patents/
[antagonists]: https://www.linux-magazine.com/Online/News/New-Anti-Linux-Propaganda-from-Microsoft
[on a Linux-based OS]: https://www.tomshardware.com/news/microsoft-released-cbl-mariner-linux-distro
Are you actually on a Windows machine and think there's no **FOSS** involved?
Well, your browser is definitely built on top of **FOSS**. All of them are.
Chrome, Opera, and even Edge are all based on the [Blink] browser
engine which is **FOSS**.
Safari is built on WebKit, which is also **FOSS**
And Firefox is of course completely **FOSS**.
[Linux]: https://kernel.org/linux.html
[Darwin]: https://en.wikipedia.org/wiki/Darwin_(operating_system)
[FreeBSD]: https://freebsd.org/
[Blink]: https://www.chromium.org/blink/
In addition to all that, this technological commons holds tools for the
production of every kind of digital good out there. To name just a few
great examples from the staggering diversity of tools this ecosystem offers:
### neovim ###
<a href="/resources/shots/neovim.png" target="_blank">
<img src="/resources/shots/neovim.png"
alt="neovim with plugins editing our version of the Prosody E2EE enforcement module"
title="neovim with plugins editing our version of the Prosody E2EE enforcement module" />
</a>
[neovim] is a modular text editor to do all of your writing and programming in.
### Inkscape ###
<a href="/resources/shots/inkscape.png" target="_blank">
<img src="/resources/shots/inkscape.png"
alt="Inkscape with one of our propaganda pieces opened"
title="Inkscape with one of our propaganda pieces opened" />
</a>
[Inkscape] is an extremely powerful vector graphics editor to create your
[anarchist agitprop] with.
### OpenSCAD ###
<a href="/resources/shots/openscad.png" target="_blank">
<img src="/resources/shots/openscad.png"
alt="OpenSCAD showing the unfinished skeleton of our foldable FOSH tiny house"
title="OpenSCAD showing the unfinished skeleton of our foldable FOSH tiny house" />
</a>
[OpenSCAD] is a [CAD] tool for the design of industrial objects in a truly
parameterizable fashion.
### Ardour ###
<a href="/resources/shots/ardour.png" target="_blank">
<img src="/resources/shots/ardour.png"
alt="Ardour with a synthesizer and filter plugin from calf opened"
title="Ardour with a synthesizer and filter plugin from calf opened" />
</a>
[Ardour] is a complete Digital Audio Workstation which can easily integrate
lv2 plugins like the [calf] and [guitarix] collections for synthesizers and
effects.
### Blender ###
<a href="/resources/shots/blender.png" target="_blank">
<img src="/resources/shots/blender.png"
alt="Blender with two viewports showing the unfinished double-barrel pump-action shotgun for one of our game projects"
title="Blender with two viewports showing the unfinished double-barrel pump-action shotgun for one of our game projects" />
</a>
[Blender] is a huge creative suite for the creation of 3D Models including
rigging, animation, texturing and even a complete video editor.
### Godot ###
<a href="/resources/shots/godot.png" target="_blank">
<img src="/resources/shots/godot.png"
alt="Godot running one of our terrain erosion experiments"
title="Godot running one of our terrain erosion experiments" />
</a>
[Godot] is a complete, easy to use game engine. It's progress has been
downright stellar and we expect it to become one of the larger players
in the video game market within the next few years.
### Mastodon ###
<img src="/resources/third-party-logos/mastodon.svg"
alt="The Mastodon logo"
title="The Mastodon logo" />
[Mastodon] is a decentralized **FOSS** social network that's easy to use, free
of advertising and *doesn't* use algorithmic distortion or filtering like all
the commercial social networks do. Anyone can run their own instance and
connect it to the wider [fediverse].
### Prosody ###
<img src="/resources/third-party-logos/prosody.svg"
alt="The Prosody logo"
title="The Prosody logo" />
[Prosody] is the **XMPP** server we use to bring you this service and…
### Nginx ###
<img src="/resources/third-party-logos/nginx.svg"
alt="The nginx logo"
title="The nginx logo" />
[nginx] is a powerful webserver we use to deliver this website to you.
[neovim]: https://neovim.io/
[Inkscape]: https://inkscape.org/
[OpenSCAD]: https://openscad.org/
[FreeCAD]: https://www.freecadweb.org/
[Ardour]: https://ardour.org/
[calf]: https://calf-studio-gear.org/
[guitarix]: https://guitarix.org/
[Blender]: https://www.blender.org/
[Godot]: https://godotengine.org/
[Mastodon]: https://joinmastodon.org/
[Prosody]: https://prosody.im/
[nginx]: https://nginx.org/en/
[fediverse]: https://simple.wikipedia.org/wiki/Fediverse
## Caveats ##
Of course, it's not all sunshine and black roses, so we should look at what
problems within and adversaries without **FOSS** faces.
### Corporatocracy 3.0 ###
The central one, from a leftist perspective, is definitely corporate control.
Corporations have become major actors in the development of many critical
components of the wider **FOSS** ecosystem. Often, this had arguably positive
impacts on projects, for example with [Linux] and [FreeBSD]. But it also
opens the door for corporations that have acquired a controlling interest
in one form or another to take projects into a direction not reconcilable
with the goal of a free and equitable society.
A good example of this process in motion is the World Wide Web, the part
of the internet you reach through your browser which incidentally is
also one of the places where this is felt most.
The development of the contemporary web is completely dominated by corporate
interests primarily Googles. How did it come to that? Let us explain…
Back in the early days of the internet, internet-based businesses were way,
*way* less consolidated. Everybody had to do some stupid shit on the web and
call it a business. That's what we now know as the [dot-com bubble].
Accordingly, the corporate part of the internet was made out of a great many
companies that were independent from and often competing with each other.
Most of the players with any real pull based on sheer size and market share
were those who were already big *before* the internet came around. [Microsoft],
for example.
Then of course, the bubble burst and thus began the first big wave of
consolidation. Over the next couple of years, a new order of things began
to crystallize as the losers of the bubble either disintegrated or where
bought up by the winners. After the dust settled, five corporations stood
tall, we call them *GAFAM* short for *Greedy-Ass Fraudsters And Megalomaniacs*.
By name, these are:
* [Google]
* [Apple]
* [Facebook]
* [Amazon]
* [Microsoft]
[dot-com bubble]: https://en.wikipedia.org/wiki/Dot-com_bubble
[Google]: https://www.nytimes.com/2021/11/03/technology/google-pentagon-artificial-intelligence.html
[Apple]: https://www.theregister.com/2021/10/15/clientside_side_scanning/
[Facebook]: https://yewtu.be/watch?v=sIrNZ0ioYe8
[Amazon]: https://edition.cnn.com/2021/12/11/business/amazon-deaths-warehouse-tornado/index.html
[Microsoft]: https://en.wikipedia.org/wiki/United_States_v._Microsoft_Corp.
By and large, these act in different markets with little overlap. And so, most
of the tech sector was carved into five big Thiefdoms. Amazon had the retail
market, Microsoft the market for operating systems, Facebook monopolized
online social interactions and Apple yuppies with too much money.
Google meanwhile increased its control on the technological basis of the web.
Involvement of Google Engineers in the standards that make up [the web] as well
as [the internet] itself ballooned.
This already gave Google the capability to dictate the direction the web went,
we mean, like, **all** of it. Big G oogle had pretty much gained majority control
over the standards that define the basic technologies the web is built on.
HTTP, HTML, CSS and most importantly JavaScript: The technology bringing
you all the fancy dynamic app-like websites and, critical for Google, most of
the invasive tracking and other surveillance features marketing dipshits
came up with.
Then Google® Chrome™ was released and became a major player in the browser
market over night. Basically you went to sleep one day and after waking up,
this happened:
<video title="In the future, everything is Google® Chrome™!" src="/resources/videos/chrome.mp4" controls />
Chrome quickly became the dominant browser, meaning Google could now also
dictate the direction the web took directly because Chrome does as Google
says. So, by deciding which parts of the standards to honor, which not to
and what to just do outside of any standards, Google began to steer the
underlying technological framework of the web in a direction befitting
its corporate goals. And as the monetization scheme Google settled on[^1]
was advertising targeted through invasive surveillance, it was only natural
to make JavaScript, the technology enabling the most fine-grained ways to
surveil people on the web, an ever more central piece of the ecosystem.
[^1]: Google was actually having problems in figuring out how to make money
with their search engine and this was *after* it was already being valued
as a multi-billion dollar company. Some techbros just winged it and *we*'ve
had to pay the price with our privacy ever since.
You see, previously to this, probably *the* most common security advice for
the web was to *turn off JavaScript* in your browser. Today, the majority
of all popular services on the web simply *don't work* without JavaScript.
The result was a web that became increasingly conducive to surveillance.
[Google Analytics] alone is in all likelihood the largest surveillance
system in history with Facebooks combined surveillance on Facebook,
Instagram and WhatsApp being a strong second contender.
Over the years, most major browsers moved to Googles browser engine,
including Microsoft Edge. The only notable holdout being Mozilla Firefox.
Firefox has been the champion for privacy on the web since its inception,
but even *it* has begun incorporating surveillance and other antifeatures
years ago. One of the earlier ones was their "user studies" feature,
which allows Mozilla to add arbitrary code to the browser, *after* the
installation and *without* any interaction from users, with the explicit
goal of finding out more about their users. They initially even planned
on anonymizing the data they got… by just handing it straight to Google!
A little weird for an organization championing privacy on the web, but
not at all surprising when you consider that Google is providing the
absolute majority of Mozilla's funding. The same Mozilla that in 2020
[fired a full quarter of its employees] and decimated the team for the
development of their *actual browser*.
[fired a full quarter of its employees]: https://www.theverge.com/2020/8/11/21363424/mozilla-layoffs-quarter-staff-250-people-new-revenue-focus
Thus concludes the saga of how Google conquered the web.
As we already mentioned tho, even Googles browser engine is **FOSS**.
So if we're dissatisfied with the direction taken, we could *fork*
it, right? In principle, yes with just the little hitch that
browsers are by far the most complex pieces of technology everyday
people ever have any contact with.
This is not hyperbole. Realistically, it is an impossible task for any
organization without billions of dollars to develop a properly working
browser from the ground up in a reasonable timeframe. This is largely
due to Google ballooning JavaScript. Maintaining a new fork of a browser
engine may or may not be easier (depending on how strict your goals are),
but is still a monumental effort.
Theoretically, we still have the advantage of us and security researchers
having easy access to the source code to check for malicious features and
vulnerabilities, but even with malicious features known, nobody can really
challenge Google on them because the [Chromium Project] which governs the
development of the [Blink] browser engine is [directly controlled by Google].
[Chromium Project]: https://chromium.org/Home/
[directly controlled by Google]: https://en.wikipedia.org/wiki/Chromium_(web_browser)#Contributors
Additionally the ballooning of JavaScript also greatly increased the attack
surface of browsers, making it much harder for vulnerabilities to be found
and much easier for them to be there in the first place, especially when we
consider how much of a moving target both web standards and browsers have
become due to constant change on many fronts.
The previously mentioned direct control is probably the single biggest
deciding factor in whether a project benefits capitalists or the public.
Corporate-owned **FOSS** projects like Chromium have a pronounced tendency
to work against public interests and should be met with scepticism.
[FreeBSD] is trustworthy because it's independent Android is less
trustworthy because it's "owned" by Google.
As we can see, some (tho not all) of the advantages of **FOSS** can be cancelled
out or diminished by corporations either by literally "owning" a project,
or by less direct means like throwing people or money at a project but all
is not lost.
Forks are still a working defense in most cases. In fact, there even *are* forks
of modern browsers (*not* browser *engines*) that remove antifeatures like built-in
tracking [LibreWolf] for example but they're usually either light on actual
modifications, chronically outdated, or both.
Forks still work because "ownership" of a **FOSS** project does not infer the
level of control we usually refer to when talking about *owning* something.
What makes **FOSS** special in the context of ownership is that it transfers
a sizable chunk of what we usually refer to as ownership the right to
access, modify and distribute it to the public and this is very much
*by design*.
> Kinda ironic that *collaboration* is such a powerful force that it's
> profitable for capitalist organizations that are supposedly based on
> *competition* to engage in it, isn't it? 🤔
[the web]: https://www.w3.org/
[the internet]: https://www.ietf.org/
[Google Analytics]: https://en.wikipedia.org/wiki/Google_analytics#Popularity
[LibreWolf]: https://librewolf.net/
### Undue benefits ###
The fact that **FOSS** can be used by *anyone* can be a bit of a double-edged sword.
Corporations are getting a **lot** of mileage out of the results of free labor,
often without sharing back at all and always without sharing back as much
as they gain otherwise they wouldn't be profitable. From Operating Systems
to server software to development tools the vast majority of the software
tech giants use for their everyday operations is **FOSS**. Or to put this into
marxist terms: The **FOSS** movement is being *exploited*.
Capitalists aren't the only antagonists of a free society benefitting from
**FOSS**, tho literal fasciscts are, too. One example of this would be *Telegram*,
which has quickly become one of the most important gathering space of modern
fascism.
Another would be [Mastodon], which is used by far-right social networks
[Gab] and Trumps ["Truth" Social]. Both were promptly blocked by the
operators of virtually all other Mastodon (and compatible) servers, so
their ability to propagandize and spread their hatred in the broader
network has been practically eliminated still, the point stands that
**FOSS** enables not only persecuted minorities and public interest groups
but also literal fascists to build online spaces, produce media and more.
> Another kinda ironic thing: Fascists using software written by someone of
> jewish heritage. It's almost as if the ideologies of capitalism and fascism
> were inherently contradictory… 🤔
Much of this would also be true in a completely socialist economy, but still
bears mentioning in the context of **FOSS** because we have to plan ahead in our
struggle for a better world.
[Gab]: https://blog.joinmastodon.org/2019/07/statement-on-gabs-fork-of-mastodon/
["Truth" Social]: https://blog.joinmastodon.org/2021/10/trumps-new-social-media-platform-found-using-mastodon-code/
### Undersupplied niches ###
Niches, by definition, are comprised of comparatively few people. This usually
translates to less available labor for the creation of **FOSS** solutions for them.
This has lead to a bunch of niches where **FOSS** has a definitive disadvantage.
**FOSS** does most assuredly exist in these niches, but often not as powerful
and almost always not as easy to use as the commercial alternatives, this
is especially true in niches that need extremely complex production tools.
Examples of this would be [CAD] as well as video and audio editing. The latter
two having powerful, usable tools on the horizon just now (early 2020s) with
usable professional-grade [CAD] still seeming a ways off.
### Representation ###
**FOSS** has a demographic problem. The majority of the movement are white
middle-class men. This means important voices aren't part of the conversation
and important needs aren't met this is true for both the software that's
produced as well as the social spaces collaboration and exchange happens in.
As far as we can tell, this has been improving, but is still far from actually
representing society at large.
In general, the **FOSS** movement is progressive and at least left-*leaning*.
It contained a large queer community pretty much from the start and
this community contributed a *lot* to the improvements the movement has seen.
We think *right now* is a great time to add more voices to the movement and
ensure the technological commons not only continues being based around
the leftist values of public access and control, but strongly integrates
the perspectives and needs of underprivileged people everywhere.
## Outlook: apocalyptic, with a chance of Utopia ##
So the question still remains: Is **FOSS** really **Socialism**?
Or, asking more specifically, is **FOSS** *publicly owned*?
By definition, the public can freely access, use and modify it on that
account we have to answer with an emphatic *yes*.
We do, however, see limitations in that control over the direction the
technological commons takes is, like many things, an ongoing struggle.
But it also seems like the inherent advantages of **FOSS** make the public
much more successful in this sphere than in pretty much all others.
This struggle to keep the commons under public control is a natural
outgrowth of everything in it being available to *everybody*, including
corporations, and will persist at least as long as capitalism still exists.
**FOSS** enables us to take control of our digital lives and produce all sorts
of digital goods. To build digital spaces for fun and collaboration that
are humane instead of predatory.
**FOSS** enables journalists, whistleblowers and dissidents to protect
themselves from surveillance and persecution. A big part why Edward
Snowden for example managed to leave the US before the NSA got wind
that he blew the whistle on them is that he used **FOSS** to protect his
communications with journalists.
But this commons also already contains large pieces of what's needed to
build a functioning alternative economy as well as at least functional,
if not easy to use, tools for the development of everything else that's
needed. As such, we consider the **FOSS** ecosystem to be the seedling for
an alternative economic system based on *Free & Open Source* Hard- and
Software a whole *industry* in the commons. Hacker- and Makerspaces
are already a step in this direction.
We have **Socialism** in the digital realm, let's bring it to the physical. 🌱
## Get in on it ##
Okay, so **FOSS** is great, **FOSS** is **Socialism**, what now?
Well, first of all **use it**. The more you use **FOSS**, the more you can
eschew corporate control in your digital life.
Also, tell other lefties about how **FOSS** is inherently socialist and that this
is something we should lean into not only to build our digital spaces but
also to get *production* itself under public control.
If you already produce digital goods of any kind but with a commercial tool,
look for **FOSS** alternatives to that tool and try those. If you're super nice,
you can also release the source files of the things you produce for easy
remixing especially if you create soft- or hardware, but *we* also do that
for our [anarchist agitprop] so people can easily remix it. 😉
If you currently don't produce anything, that's of course okay, but
if you do feel so inclined, think about what sort of thing you want
to create and play with the **FOSS** tools available for it.
If you have an account on this service and are using it with a **FOSS**
client (all the [clients we support] are **FOSS**) or have an account on
another *XMPP* server, we are also hosting a chatroom on the intersection
of **FOSS** and **Socialism**: [FOSSoc] feel free to join if you have any
questions. If you're now interested to learn how to create *free* soft- or
hardware, hit us up, and we'll see what we can do about getting you some
mentoring. 🤟
[clients we support]: /clients
[FOSSoc]: xmpp:FOSSoc@conference.phryk.net?join