Archive for September, 2018

Recently a code of conduct for Linux kernel developers was adopted. The full text is also included below (except for headings), interspersed with my comments and with emphasis added. In the interest of (hypothetical) brevity, I am focusing on what I perceive to be the major issues with it, therefore I am refraining from commenting on at least a few lesser issues.

I don’t know how this document will be enforced of course. That is precisely the problem. Some leeway is understandable. This is just absurd. It is not just vague, but opens up more avenues for abuse than if there was no document at all.

It is relevant context that this document – except for some cosmetic changes relating to where reports should be made – is based word for word on the contributor covenant, a document written by Coraline Ada Ehmke, who as you can see on that page is a self-proclaimed “Social Justice Warrior”. This screams of a political power grab.

Let’s go through the Linux version:

In the interest of fostering an open and welcoming environment, we as contributors and maintainers pledge to making participation in our project and our community a harassment-free experience for everyone,

Stop, stop, stop. This sounds innocent enough at first, but who defines harassment? The Cambridge Dictionary includes the following definition: (emphasis added)

behaviour that annoys or upsets someone

If a maintainer says: “we appreciate your considerable investment in this code, but we are sad to say we will not include it because of X, Y and Z”, would it perhaps be considered annoying by the person receiving that feedback to see all their sweat and tears go to waste? If this aspect of the code of conduct is ridiculous enough to never be enforced, why is it included in the first place?

So: we’re not even a full sentence in, and we can already interpret the document as follows:

As a Linux kernel maintainer, you pledge to never reject anyone’s code, if you suspect it might annoy them.

It gets worse.

The sentence continues:

regardless of age, body size, disability, ethnicity, sex characteristics, gender identity and expression, level of experience, education, socio-economic status, nationality, personal appearance, race, religion, or sexual identity and orientation.

I thought the word everyone was pretty precise and inclusive. What is this doing here besides making an ideological statement?

Next come some “recommendations” of how to behave:

Examples of behavior that contributes to creating a positive environment include:

* Using welcoming and inclusive language

Let me guess – prefixing a mail to a group of people with “guys” is not “inclusive”? Basically: type like a bureaucrat, or we’ll come after you for not being inclusive. But if you do type like a bureaucrat, we’ll come after you for not being welcoming!

* Being respectful of differing viewpoints and experiences

Respect is earned.

* Gracefully accepting constructive criticism

How about just receiving constructive criticism? It may or may not be accepted.

* Focusing on what is best for the community

Who decides what is best?

* Showing empathy towards other community members

So if you have empathy but – according to someone else – don’t show it, that doesn’t count? A lot of the Linux kernel communication goes through e-mail, not exactly the best medium to show empathy. And what does that mean anyway? Do what you feel is right, but in a nicer way? Or do what you feel is wrong, just so that someone else might avoid taking offense?

Examples of unacceptable behavior by participants include:

* The use of sexualized language or imagery and unwelcome sexual attention or advances
* Trolling, insulting/derogatory comments, and personal or political attacks
* Public or private harassment

Who defines what an attack is?

See comment at the top regarding harassment.

* Publishing others’ private information, such as a physical or electronic address, without explicit permission
* Other conduct which could reasonably be considered inappropriate in a professional setting

Who decides what is inappropriate?

Maintainers are responsible for clarifying the standards of acceptable behavior and are expected to take appropriate and fair corrective action in response to any instances of unacceptable behavior.

So here’s where attack and inappropriate get defined I suppose. Isn’t this what is really setting the stage here? How about if the entire code of conduct is replaced with this single sentence instead of all this mumbo-jumbo?

Maintainers have the right and responsibility to remove, edit, or reject comments, commits, code, wiki edits, issues, and other contributions that are not aligned to this Code of Conduct, or to ban temporarily or permanently any contributor for other behaviors that they deem inappropriate, threatening, offensive, or harmful.

Never mind, here the “appropriate”, “fair” and “clarifying” part go out the window as well, as does the code of conduct itself. Now we’re talking about “other behaviors”! So now you can get into trouble based on the particular mood of a particular maintainer on a particular day.

This Code of Conduct applies both within project spaces and in public spaces when an individual is representing the project or its community. Examples of representing a project or community include using an official project e-mail address, posting via an official social media account, or acting as an appointed representative at an online or offline event. Representation of a project may be further defined and clarified by project maintainers.

More mumbo-jumbo. This does not put any effective limits on what “representing” means. We might as well assume that anything you do in your life could be considered “representation” if it somehow comes into contact with a Linux kernel developer.

Instances of abusive, harassing, or otherwise unacceptable behavior may be reported by contacting the Technical Advisory Board (TAB) at <tab@lists.linux-foundation.org>. All complaints will be reviewed and investigated and will result in a response that is deemed necessary and appropriate to the circumstances. The TAB is obligated to maintain confidentiality with regard to the reporter of an incident.

I.e.: you can get accused by someone who wants to be anonymous, without having the chance to defend yourself against that person or persons. Otherwise the TAB would be breaching their obligation to maintain confidentiality.

Further details of specific enforcement policies may be posted separately.

Maintainers who do not follow or enforce the Code of Conduct in good faith may face temporary or permanent repercussions as determined by other members of the project’s leadership.

This Code of Conduct is adapted from the Contributor Covenant, version 1.4, available at https://www.contributor-covenant.org/version/1/4/code-of-conduct.html


  • What “representing” the project or community means can be defined at any time, to mean anything.
  • “Inappropriate” behavior can be defined at any time, to mean anything. At a miminum, annoying someone on a single occasion qualifies.
  • You can get accused anonymously, without a chance to confront that person.
  • You can get banned for “inappropriate” behavior while “representing” the project or community.


If you, as a Linux kernel developer, anywhere in the world, at any time, in any context, whether you realize it or not, behave in some way that, directly or indirectly, results, at any time in the future, in some anonymous person, justified or not, claiming to feel at least slightly uncomfortable, be warned that you may be permanently banned from contributing to the Linux kernel.

Read Full Post »

Yesterday, the European Parliament voted in favour of the infamous “link tax” and to build more firewalls on the Internet, obsessed with censoring any material that might infringe on copyright. In so doing, perfectly legal uploads would most certainly become collateral damage of the nearsighted robots that are supposed to enforce this.

The EU is quick to point out that this will not affect “small” companies, in practice meaning ones with fewer than 50 employees. That is hardly any comfort, and WordPress.com for instance has 779 employees at the time of writing this. Should everyone with a blog now start looking over their shoulders?

Mozilla (the folks behind Firefox) has more details on the situation before the vote, and where we are after the vote.

As for Sweden, here’s how the voting went: (Socialdemokraterna form the current government here, together with Miljöpartiet)


Name Group in the European Parliament Group in the Riksdag
Aleksander GABELIC S&D Socialdemokraterna
Jytte GUTELAND S&D Socialdemokraterna
Anna HEDH S&D Socialdemokraterna
Olle LUDVIGSSON S&D Socialdemokraterna
Marita ULVSKOG S&D Socialdemokraterna
Soraya POST S&D N/A


Name Group in the European Parliament Group in the Riksdag
Fredrick FEDERLEY ALDE Centerpartiet
Jasenko SELIMOVIC ALDE Liberalerna
Cecilia WIKSTRÖM ALDE Liberalerna
Kristina WINBERG ECR Sverigedemokraterna
Malin BJÖRK GUE/NGL Vänsterpartiet
Lars ADAKTUSSON PPE Kristdemokraterna
Anna Maria CORAZZA BILDT PPE Moderaterna
Christofer FJELLNER PPE Moderaterna
Gunnar HÖKMARK PPE Moderaterna
Max ANDERSSON Verts/ALE Miljöpartiet
Jakop DALUNDE Verts/ALE Miljöpartiet
Linnéa ENGSTRÖM Verts/ALE Miljöpartiet
Bodil VALERO Verts/ALE Miljöpartiet

Abstentions: none.

Appears not to have been present:

Name Group in the European Parliament Group in the Riksdag
Peter LUNDGREN ECR Sverigedemokraterna



Read Full Post »

%d bloggers like this: