行動規範:Linuxカーネル開発者がコードを削除すると脅した理由-競合の理解

9月、Linux Foundation理事会は、Linuxカーネル開発者向けの新しい行動規範である行動規範(CoC)を採用しました。 著者によって考案されたように、彼は差別に関連する問題を解決し、開発者間の感情的な環境を改善することになっていた。



一部のプログラマーは、これを過剰規制の試みと呼び、書いたコードをLinuxカーネルから削除すると脅迫し始めました。 以下の状況の詳細をご覧ください。





/写真リアム・クイン CC



背景



先月中旬に、Linus Torvalds Linux開発の管理に休憩を取ると発表しました。 Torvaldsによれば、彼は人々とのコミュニケーション方法を熟考する時間が必要です(Linuxの作成者は同僚に関する厳しい発言で知られています)。 LKMLニュースレターは、彼の批判のためにコミュニティを去ったすべての人に謝罪しました。



Linusの「休み」の間に、カーネルの安定バージョンのサポートに従事しているGreg Kroah-Hartmanがリーダーシップを引き継ぎました。 彼新しい行動規範-行動規範採用を提案しました 。 彼らは、コミュニティのコミュニケーション文化を変えるために文書を実装することを決めました。



Code of ConductはContributor Covenant標準に基づいており、Ruby on Rails、Swift、Golang、JRubyの開発者も使用しています。 このドキュメントでは、他のプログラマーとの行動規則について説明し、差別の禁止を強調しています。



開発者と行動規範



多くの開発者は、CoCの導入に同意していません。彼らは、新しいルールが過剰な規制につながることを恐れています。 一部の人々は、コミュニティを去るだけでなく、彼らが書いたコードをカーネルに使用することを禁止することに同意しないすべての人々にさえ促しました。



すべてはプログラマーJoey Pabalinas から手紙で始まり、そこで彼はその文書を批判しました。 彼によると、このコードはコミュニケーションの文化に関する問題を解決するものではなく、それどころか、コミュニティの雰囲気を非友好的なものにします。 Joeyは、CoCが参加者を「良い」と「悪い」、および不当なコミュニティの除外に分割すると考えています。



特に不満なのはCoC手続きであり、これにより、参加者が作成者の身元が気に入らないと判断した場合に、開発者がコードをコミットすることを禁止することができます。 コミュニティのメンバーは、コード内の曖昧な表現も懸念しています。これはさまざまな方法で解釈できます(「軽“的なコメント」など)。 ただし、この文書には、加害者に対する処罰を決定するための明確な枠組みが記載されていません。



最後に、開発者の間で疑問を呈する3番目の理由は文化の違いです。 CoCは統一されたコミュニケーションスタイルを提供しているため、さまざまな国の人々(英語が公用語と見なされていない国を含む)が「正しい言語」を選択するのに困難を感じるようになります。



Linuxカーネルに脅威はありますか



「オープンソースコミュニティの伝説」であるEric Raymond氏は、不満を抱いている開発者は、コードがLinuxカーネルで使用されるのを本当に防ぐことができると示唆しました。



オペレーティングシステムはGNUv2 ユニバーサルパブリックライセンスの下でリリースされます。 行動規範の反対者は、コードの作者とオープンソースプロジェクトとの間の契約の終了を禁止する条項が含まれていないという事実を引用しています(GNUv3にはそのような条項があります)。 したがって、彼らはLinux Foundationにカーネルからコードを削除する義務を負う権利があると確信しています。





/写真マット・マッド CC



また、オープンソースコミュニティにも同様の先例があります。 2年前、プログラマーのAzerKoçuluは、Kikメッセンジャーの弁護士から、npmパッケージマネージャーで公開されている同じ名前(kik)でモジュールの名前を変更するように要求する手紙を受け取りました 。 アゼルは拒否し、Kikの代表者はnpm政権に手紙を書きました。 それらは主張を支持し、著者の許可なしにkikの所有者を変更しました。



これに対して、コチュルは自分が書いたすべてのnpmモジュールを思い出してGitHubにアップロードしました 。 しかし、その中には、11行のコードで構成される一般的な左パッドモジュールの1つがありました。 Node.js、Babel、および他の多数のシステムの操作に必要です。



これは、「discordモジュール」のコードのようです。



module.exports = leftpad;

function leftpad (str, len, ch) {
  str = String(str);

  var i = -1;

  if (!ch && ch !== 0) ch = ' ';

  len = len - str.length;

  while (++i < len) {
    str = ch + str;
  }

  return str;
}

      
      





.



GNU (Richard Stallman) , Linux . . GNU , , . .



Software Freedom Conservancy, GNU. , . , . .



, - , promissory estoppel. , . . Software Freedom Conservancy , .



, CoC , , , — . , . , , Linux .






P.S. IaaS — Telegram-:






All Articles