The Art of Loosing Credibility

Politics as a method of software self-destruction and sabotage

Published 2026-08-25


Since the beginning of both open‑source and free-software movements, they've always been political. However in the last years, things have been taken to new levels never seen before. The typical arguments of whether someone should be allowed to fork and reuse someone's code and in what ways have been far outdone. Not even the heated debate around the introduction of the 3rd revision of the GPL licenses is anywhere close to the current state of the free-software and open‑source community.

The result, as expected, is a community always near its boiling point. Ready to violently explode and fracture itself with the slightest provocation and/or change of balance.

Trust and credibility

For someone to even consider using someone else's software, there is an inherent trust that the user has to give to the author(s)/maintainer(s). An author/maintainer gains credibility from past projects, interactions with the community around the projects and more. However another part of this delicate balance is the perceived chance of something bad happening with the project, besides a simple bug being added somewhere in a release. This is where the author's/maintainer's opinions outside the software come in.

In the not so distant times, it used to be that programmers in the open‑source and free-software community mostly cared about writing a good piece of software, that is functional and satisfies their and their user's needs. Who was behind the screen and what opinions they had beyond the project rarely mattered, as long as what they were doing was of good enough quality. We didn't use to share everything we do in our lives and everything we think either, which helped. However over the years, this mentality went significantly away. Here's example of this happening from 2024. (archived) This example isn't around the time where it all started. Far from it.

Beginning of the New Era

With world politics going mainstream in software development, including corporate and open‑source spaces, a lot changed. Code's of Conduct that previously didn't have a reason to exist before were getting added left, right and center in major big and small projects; who was behind the screen writing the lines of code suddenly started to matter. This brought us the era we currently are in, where what someone wrote doesn't matter as much as who they were.

And with politization of software came decisions by maintainers, where they would not only more strictly dictate who could be in their community. But also who can use their software, what opinions should their users have and even where can they live. Lest they might do something to those users. The irony of breaking the core principle behind free-software and open‑source software should not be lost.

These decisions would then be cheered on by crowds (politically) aligned with those decisions. And those impacted would at best move somewhere else. Usually after a GitHub issue that would be promptly shut down by the maintainer.

We can see this happening in most larger open‑source and/or free-software projects and the pace has only accelerated. A certain journalist has been the Voldemort of software for years. Not liking a certain windowing protocol makes you a Nazi. Promoting a certain windowing protocol makes you a Nazi. Liking a certain window manager makes you a Nazi. Being a contributor to other projects some crowd doesn't like makes you a Nazi.

All of the above is ground for being ejected from a community or contributing to certain projects. As was written in the example at the start of this post, code quality no longer mattered as much as who the contributor was. Who would want to associate with someone that is also part of a "hostile" (read: having a different opinion) community.

However what all this infighting also caused, is that maintainers indulging in these activities became much less trustworthy to everyone else, but the crowd cheering for their decisions. They've lost their credibility only because they couldn't resist bringing unnecessary politics to their own projects. They've sabotaged themselves and their reach only to appeal to a crowd that will stick a knife in their back, the same moment they don't like something.
Is it really worth it?

mastodon.social users explaining why having a code of conduct is necessary

What is too much?

What follows is a section of few examples in recent time, where the maintainer's actions were absurdly short-sighted and politically charged to the point of sabotaging their project and all future credibility they could have had.

jqwik

First is a recent case of protestware deleting user data, perhaps inspired by node-ipc. The author of a Java testing framework called jqwik went on a crusade against jqwik being used in context where there is an LLM agent writing and executing tests. Besides the funny way how the situation blew up thanks to a clearly LLM written GitHub issue, this case also has a side of legal questions that were brought up by it. It turns out that deleting user data of people that attempt to use your software with an agent doing some of the work isn't universally agreeable. And it turns out that purposeful deletion of data likely isn't legal in Germany where the jqwik author, Johannes Link, lives.

However in his own blog post, he still defends his actions. And makes the case that after consulting lawyers, the likelihood of loosing the case would be difficult.

PieFed

The Fediverse unlike most other social media sites was designed from the ground to be decentralized and near impossible to censor. This of course attracts many refugees that have been banned elsewhere, or that seek spaces where censorship isn't rampant. And some Fediverse developers/users don't like that, despite being on a network specifically designed for that purpose. Here's one way how a developer can deal with such people, while also making their software highly questionable to use and whether it is even safe (in the sense as lacking malicious features).

Some time ago some fascists took a copy of Mastodon and made Truth Social with it. Arguably the damage caused by Truth Social to the world is greater than the good Mastodon brought to a few of us.

This is my greatest fear, for PieFed. I can’t stop fascists from using software I made but I can make that software so repellent to them that they look elsewhere instead. So far, they have.

Anti-fascist PieFed features

First it includes a bundled in, seemingly opt-out to admins, website blocklist that has barely anything to do with the Fediverse. It can be easily disabled. What are the weirder features, is the included, and disabled by default, 4chan filter that scans attachments for screenshots of 4chan posts and reports them to the instance administrators. And the Rational Discourse Toolkit that can be disabled only by admins and whose only purpose is to constantly show users links to sites about resources about deradicalization, fact-checking, fake news, conspiracy theories, media literacy, and more.

I won't even argue the whole If you question the rule, it is about you. feeling of the post. But if I, as user, found out that the software I am using on a network made by people fed up with spying and privacy violations on mainstream platforms, also spies on me by scanning all attachments for 4chan posts of all things, made by someone who seems to be very much politically charged, I would stop using it immediately. Especially when it is not disclosed to me as a user. Simply said, I cannot trust someone whose brain seems to be mostly occupied by politics to not be malicious or become malicious at some point. Perhaps I'm the fascist the developer wants to get rid of, only he knows.

It should be no surprise what side of politics the PieFed author likes more either (pictured below). He does seem to have some problems with Belgians though for some reason. But I digress.

The Mountain of Code case

Now from a slightly different cup of tea. Codeberg is a German non-profit organization behind the software forge under the same name and a Gitea fork called Forgejo. To understand this case, a little bit of history is needed.

Codeberg used to run on mainline Gitea with some small modifications. That all changed in October of 2022 after Gitea's lead maintainer, Lunny Xiao, transferred the Gitea trademark to a newly formed company owned by Lunny and Matti Ranta called Gitea Limited. Concerns about the future of Gitea were raised, including a potential transition to a proprietary model thanks to Gitea's MIT license, a license it retained from Gogs when it hardforked. Eventually it led to Gitea getting dramaforked by Codeberg in December of 2022 and Codeberg fully transitioning to its own dramafork in April of 2023. Then a year and a half later, Codeberg pulled a LibreOffice with Forgejo, changed from a softfork to a hardfork and also started to license its own additions to Forgejo under the GPL v3 license to prevent any future cooperation with their previous upstream, Gitea. The whole dramafork came with a bunch of promises of making Forgejo simpler to host at scale, federation,... But at least in my opinion none were ever delivered (yet).

Along with the Gitea dramafork also went a year-long Gitea maintainer Gusted. The resignation from maintaining Gitea was announced on his blog. He would later become a Codeberg board member and eventually a Codeberg presidium member, being able to largely influence the direction Codeberg would be taking. Which brings us to the recent times.

Codeberg and the LLM question

With the dramafork also came to Forgejo many users that were politically charged even back then. As expected, those users attracted similarly thinking users, which with the proliferation of LLMs in software raised alarms about software written using LLMs being hosted on Codeberg. This eventually lead to a proposal being created by Gusted and Bastian Greshake Tzovaras that was submitted on Codeberg's TOS repo.

The proposed change to the Codeberg Terms of Service would prohibit publishing software that mostly consist of code written by "generative AI"-tools. While at least clearly defined, how would Codeberg be able to enforce this rule was of course never properly answered. Mostly because it is very hard to enforce, unless the code was attributed to an LLM by the committer. So enforcement will be basically based on vibes, which even the blog post announcing this change sort of admits at the end, after skipping all the fluf at the start.

This outcome came pretty quickly after the proposal was submitted and I think was mostly expected. Which brings me to another recent decision which has been brewing for a little longer.

Codeberg and the cryptocurrency question

It all started in late 2022 when an issue called "Taking a stand against cryptocurrency/blockchain" was created on Codeberg's community repo. The purpose of the issue is clear in its name and OP, ban cryptocurrency related projects just like Drew DeVault's SourceHut did at that time. From the start the biases were showing, arguments against such ban mostly ignored, legitimate use cases for cryptocurrencies ignored, thread being closed for being "too heated" while being far from that twice,... But eventually it resulted in no change.

That is until a new issue "Codeberg must take a stricter stance against cryptocurrency projects" was created 3 years later in the same repo. This one gained enough interest from Gusted to eventually take it to a Codeberg members vote. However unlike the first issue, this one has more positive attitude towards crypto, even mentioning a Fedi server Mitra as an example of a good use of cryptocurrency (Monero). It however changed nothing in the end and the proposal still passed despite not being welcomed by a large portion of the community.

The Content that harms the reputation of Codeberg. TOS clause was expanded to Content that harms the reputation of Codeberg, such as cryptocurrency related projects. Effectively banning anything even remotely crypto related besides having donation addresses in a readme. No blog was written on how Codeberg plans to enforce it, no blog announcing this change either besides a lie in the banner (pictured below). This expectedly lead to an exodus of users who previously thought that Codeberg was at least a slightly neutral/apolitical forge and maintainers mirroring their projects elsewhere.

Here's an example of that in a blog post form: https://thanosapollo.org/posts/deleting-codeberg/

A lie in the banner shown on Codeberg. Instead of "cryptocurrency related" the banner only mentions a ban on cryptocurrency projects. Missing the "related" part.

The "related" part from the actual TOS clause is somehow missing from the banner. Why would that be?

However this isn't the last recent case of Codeberg self-destructing itself under the weight of being unable to stop being political for at least a month.

Codeberg and the Israeli-Palestine war

There's a project on the Fediverse called "Gaza Verified" lead by someone who calls himself "Aral Balkan". It is surrounded by controversy for obvious reasons, including one where supposedly verified members tend to spam follow anyone they see on the timeline with zero prior interaction and ask for donations. Which of course sounds the scam alarm in most people's heads.

One such Fedi user that doesn't like this project is a Facebook moderator calling himself "LinuxIsBest", later doxed by someone close to Aral, with Aral reposting some info as well. But before all that happened, Aral decided that he would request a ban of his Codeberg account as an active Codeberg member. This all happened publicly on Fedi.

The Codeberg reply to that request came privately and was later posted by Aral in the same thread. To say the least, it wasn't satisfactory to him and getting scolded by a Codeberg presidium member to not make such further requests public in order to not harm Codeberg's reputation didn't go well with him. The Codeberg member who made the email reply later replied in the same thread a couple times. As of the writing of this post, the account is still alive.

Conclusion

Now after playing the Devil's advocate in some cases.
Instead of a testing framework with the possibility of intentional data loss, give users a good testing framework.
Instead of a Fediverse server that can be best described as My political opinions in a box, go elsewhere if you don't like that. Give users a functional, small and yet powerful Fediverse server where they are actually in control.
Instead of a software forge maintained by a team that seems to be jumping from one major source of dumb drama to another, give users an apolitical forge that just hosts software legal in its jurisdiction. Possibly asking their larger users to move elsewhere due to costs or pay some fee.

Give users what they actually want, something worth using. Not non-software opinions wrapped in a box masquerading as software.

To developers guilty of above and similar. Stop sabotaging your software and yourself, only to get backstabbed the moment you do something not liked by a vocal minority of your userbase. It isn't worth it to cater to those people, while annihilating the much larger userbase that just wants to use software that works, without politics and/or fear of something malicious happening with it in the future. Free/open‑source software was better and worked more when its developers barely cared about the politics of its contributors and users, be above such pettiness. Political infighting had a part in the death of FidoNet, don't let it kill free/open‑source software.

You can comment on this post on the Fediverse: https://fluffytail.org/objects/643a3d2c-61b5-4ade-9e24-8b7564a77692

— phnt

If you've read it all up to this point, reader, get some well deserved #cofe.

                                    o$$$$$$oo
                                 o$"        "$oo
                                 $   o""""$o  "$o
                                "$  o  "o  "o   $
                                "$   $o $   $   o$
                                 "$       o$"$  o$
                                  "$ooooo$$  $  o$
                        o$ """ $     " $$$   "  $
                      o$        $o    $$"   "   "
                     $$  $ " $   $$$o"$    o  o$"
                     $"  o "" $   $" "   o"  $$
                     $o  " "  $  o$"   o"  o$"
                      "$o    $$  $   o"  o$$"
                       ""o$o"$"  $oo"  o$"
                        o$$ $   $$$  o$$
                        o" o oo""  "" "$o
                       o$o" ""          $
                      $" " o"   " " "   "o
                     $$ "  "  o$ o$o "   $
                    o$ $  $  o$$ "  "   ""
                    o  $ $"  " "o      o$
                    $ o         $o$oo$""
                   $o $   o  o  o"$$
                   $o  o  $  $    "$o
                   $o  $   o  $  $ "o
                    $  $   "o  $  "o"$o
                    $   "   o   $   o $$
            $o$o$o$o$$o$$$o$$o$o$$o$$o$$$o$o$o$o$o$o$o$o$o$ooo
            $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$o
            $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$   " $$$$$
            $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$      "$$$$
            $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$       $$$$
            $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$       $$$$
            $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$       $$$$
            $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$     o$$$$"
            $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$ooooo$$$$
            $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$"
            $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$"""""
            $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
            $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
            $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
            $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
            $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$"
"$o$o$o$o$o$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$"
  "$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$"
    "$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$"""
       """""""""""""""""""""""""""""""""""""""""""""""""""""

                          Cofe of Conduct