オープンソース開発者が悪に走る時–意図的なライブラリー改ざん騒動から考える
今回は「オープンソース開発者が悪に走る時–意図的なライブラリー改ざん騒動から考える」についてご紹介します。
関連ワード (ソフトウェア等) についても参考にしながら、ぜひ本記事について議論していってくださいね。
本記事は、ZDNet Japan様で掲載されている内容を参考にしておりますので、より詳しく内容を知りたい方は、ページ下の元記事リンクより参照ください。
JavaScriptの開発者であるMarak Squires氏は、自ら開発したオープンソースライブラリーが収入を生み出さない点に不満を感じ、意図的にライブラリーを破損させた。これにより、他のプログラマーやエンドユーザーは使用していたプログラムが使えなくなってしまうという事態に陥ってしまった。
あなたがJavaScriptを使うプログラマーでない限り、「colors.js」や「faker.js」というJavaScriptライブラリーの名前は、オープンソースでありながらも耳にしたことがないはずだ。前者は、一般的なJavaScriptランタイムであるNode.jsを使用する際に、コンソール上のテキストを着色するものであり、後者はテスト用のダミーデータを生成するものだ。faker.jsは2500本を超えるnpmプログラムで使用されており、1週間に240万回もダウンロードされている。また、colors.jsは1万9000本近くのnpmパッケージで使用されており、1週間に2300万回ダウンロードされている。つまり、あちらこちらで使われている。ところがSquires氏は、自らで生み出したこれらライブラリーを破損させ、数万本に及ぶJavaScriptプログラムを正常に動作しない状態に陥らせたのだ。
開発者が自ら作成したオープンソースコードを意図的に使えなくするという事件は、これが初めてではない。2016年にはAzer Koculu氏が「left-pad」という17行のnpmパッケージを削除し、その機能に依存していた数千本に及ぶNode.jsプログラムに大きな影響が及んだ。当時の事件も今回の事件も、実際のコードはちょっとしたものだったが、あまりにも多くのプログラムによって使用されていたため、その影響はユーザーの予想をはるかに上回る規模になった。
Squires氏はなぜこのような行動に出たのだろうか。本当のところは何も分かっていない。GitHubで公開されているfaker.jsのReadme.mdファイルには、「実際のところ、Aaron Swartz氏に何が起こったのだろうか?」と記されている。Aaron Swartz氏とは、マサチューセッツ工科大学(MIT)の学術誌の記事を公開しようとしたという疑いで刑事責任を問われ、2013年に自殺した人物だ。
この件と今回の事件がどのように関連しているのか、筆者には判断できない。