Code of Conduct has no place in software development

Return to home
寮、 2022/08/30 — technology, politics, webdev, internet

I see a massive increase of “Code of Conduct” (or COCK for short, which is what I will refer it to from here on) in the already heavily politicized western software development environment.
It got to the point that GitHub even has shows a COCK whenever a project has a “CODE_OF_CONDUCT.md” file inserted.
Not like it even matters, because COCKs always tend to be identical to one other anyway.

A COCK can be quite useful in big organizations, though back in the old days we just called it “rules”.
And that’s fine, because the scope is just limited to within the origanization.
A COCK in soyware projects and/or online soyvices on the other hand are meant to police everyone, whether you’re a developer or not, whether you’re a user or not, is none of the project maintainers’ concerns.

The better alternative is to hire people who actually belong to the organization, and kick out the bad actors when they start raising red flags (with a yellow hammer and sickle in the corner), or a rainbow flag, or a…cyan/magenta/white kind of flag?
Or another way out is to work on your projects independently, and never recruit anyone else in the first place, this strategy works for Slackware and Team Shanghai Alice (aka, ZUN).

It’s really sad that me as an experienced software developer have to remind other software developers to the fact their responsibility is to write code, not political bullshit.

People might tell me that they can just fork a project and then just remove the COCK.
It’s true, but I’d rather advocate for just writing your own alternatives from scratch.
Because even if you fork and remove the COCK, the upstream project is still calling the shots, you’re still subject to cancellation.
Well, you can be cancelled if you have nothing to do with them too, but at least they can’t fuck things up on the upstream project level.
This is what projects like Linux Mint always have to deal with for being an Ubuntu fork; Canonical keeps making bad decission after bad decission, so the Linux Mint guys keep having to undo those and replace with their own less bad than bad decissions, which is why it takes them longer and longer to release their versions.
If Mint would have been an independent distro, they wouldn’t have to deal with this bullshit at all.
And it only takes 1 line of code to fully destroy your downstream project, and if the upstream project is already bloated (which is the case with at least 100% of the projects with a COCK), good luck figuring out what causes your downstream project to break.

At 076 we’ve been using a couple of 3rd party projects like PeerTube, Pleroma, Gitea (previously it was GitLab, but that was way before I joined the team), Searx, and so on, but we’re in the process of replacing them with self written code, which will never have a COCK, and all contributors will have no say in politics or other irrelevant stuff (they can of course discuss it outside of software development, but not inside).
We have chosen for the approach of “Don’t like it here? The door is right there!”, which used to be the norm in the early 2000’s internet.
Whether you like Alex Gleason or not, him being cancelled from Pleroma by the wokies is a pretty bad sign.
Things like these is what inevidently leads to stuff like instating a COCK, wokeness, censorship, cancer culture, end users leaving en mass for more based alternatives (until these get woke), and eventually the collapse of a project as a whole, in this precise order.
A COCK is always the first step into the decline of a project or product.
At least, in western made soyware, because here in Japan it usually starts with “diversity and inclusion”, “anti-herASSment”, “anti-soyciety”, or similar public statements being published, but it leads to the same kind of decline, which ultimately leads to collapse.

Sometimes there’s a way out and you might earn yourself a second chance.
When you instate a COCK or one of the political statements, take them back as early as possible, admit it was a mistake, and resist any pressure you’ll get afterwards.
Don’t allow your userbase or valuable developers get apephatic, because as soon as they get apethy towards your project or service, your destiny is already sealed, there’ll be no way back.

If you have a development team, and there’s a based developer who’s singlehandedly keeping the entire project alive, and there’s a feminazi that maybe fixed 1 translation error somewhere and beyond that only sticks around so they can put name on their resume, and the 2 get into a drama or conflict, which one would you rather kick out?
If we would have lived in a sane world, the choice is clear: kick out the feminazi.
Unfortunately, we’re living in a clown world, so it’s typically the guy who keeps the entire project afloat who gets kicked out.

I have to give the Chinese credit for being the right example on how to appropriately respond to woke invaders: just ghost them, just block them and pretend like they don’t exist.