オープンソースプロジェクトは残酷かつ残忍
自己紹介
すらーぷの妖精(本名:Ryosuke Asano)大学1年生。Ablaze のメンバーであり、Floorp ブラウザーのメンテナー
初めに
この記事は私が体験してきたオープンソースプロジェクトでの経験をもとに記載しています。オープンソースが如何に残酷であるか、期待してはいけないものであるかを語っているのでその部分を理解したくない方は読むのを控え、ブラウザバックしてください。
本編
Floorp というオープンソースプロジェクトの概要
Floorp は Firefox をベースに、私が開発し設立した(かっこいい言い方で言っていますがそんなに自慢できるものではないです)オープンソースのウェブブラウザーであり、現在は私がメンテナンスを行っている状態です。
そんな Floorp なのですが、Gigazine 様や窓の杜様に紹介されたり、フリーソフト 100 での高い評価やナポリタン寿司の PC 日記などでの詳細なブログによる情報提供などで日を追うごとに知名度を向上させています。おかげ様で近日中に 10,000人のアクティブユーザーを獲得しています。
オープンソースプロジェクトは魔法ではない
しかし、そんなオープンソースプロジェクトも私の負担は日に日に多くなっています。第一に言えることは、「オープンソースプロジェクト」は魔法ではないということです。
Mozilla が過去(正確には Netscape)Firefox のソースコードを公開したのは開発者以外のユーザーにも開発を求めるためであるといわれています。しかし、この目論見はうまくいかず、オープンソースプロジェクトであること=ユーザーが開発を援助してくれるということではないということを裏付けました。
数か月前は issue もあまり立たずに過ごしていましたが、最近ではバグ報告や機能リクエストが多く立つようになりました。私は「この調子なら、オープンソースプロジェクトを助けてくれる人も現れるだろう」と考えていましたが、現実は非情でした。実際は機能リクエストの数が増えただけで、助けてくれる人は比例しても2人程度。実際は私の負担が増えただけだったということです。
開発に協力してくれるといっても Firefox は複雑かつ要求されるパソコンスペックも大きいためそこまで協力はしてくれません。
ブラウザーの拡張機能の開発ではないため、要求されるコードを読む力も通常のスキルとは異なります。
開発に援助を求めるためにコードをオープンソースに変えることは誤った判断なのかもしれません。
フォークへの対応
知名度が上がればフォークも増えます。こっちはほぼ確実に比例するみたいです(ソースは一度きりの体験より)。フォークは開発の能力がある団体がフォークすることもあれば、個人が行う場合もあります。
その中にはコードベースについての理解が浅い人やフォーク元である Firefox の改造の手間を省くためにフォークする方がいます。
オープンソースですから、フォークは問題ありませんし、Pull request につながる可能性もあるので嬉しいことでしたが、Pull request はおろか、機能の自作発言などを行われたことで私はフォークを信用できなくなりました。
また、フォークの開発者が私の Discord に直接ダイレクトメッセージを送信し、自社の検索エンジンを搭載させようとすることも起こりました。ちなみに、相手に対しての質問はすべてシカトされています。泣きそうです。
この記事の公開と同時に連絡手段を断とうと考えています。もううんざりです。
ちなみにまだ話は続きます。とあるブログでフォークのソフトウェアが紹介されていたのですが、そこでの機能がすべて彼らが追加したかのように書かれていました。
(正確には Firefox をフォークしたかのように記載し、独自機能の追加に触れており、それらの機能が Floorp の追加機能であるという部分です)
これもブログ側の勘違いで済めばよかったのですが、まだ続きがあります。Floorp のユーザーがコメントに現れブラウザーの機能が Floorp 由来のものであると指摘しました。これに対してブログの著者は "Now that we know, this shouldn’t be an issue. Thanks for pointing it out :)" (引用元:https://news.itsfoss.com/midori-11/) と書き残しました。
世の中の基準がどうであれ、私としてはフォーク元への言及が無いことや問題ではないとの認識がされたことで本文に変更がないことが非常に苦痛でした。
ライセンスを遵守しているから問題ではないとの主張は性善説に基づき行われているものでそれを踏みにじる姿勢は決して私の中では良いものだと考えていません。
私は相手を責めているわけではありません。開発で行っていることはライセンスに従っており、Floorp もフォークでありフォーク元の Firefox の記載があればまあ問題ないと感じている部分も多いからです。(決して書かないほうが良いということではないし、書いたほうが良いのは間違いない)
まあ、、、、後複数回に分けて嘘をつかれたことも大きいでしょうか。フォークを手伝う代わりに代わりに寄付を行うという発言も受けましたが未だに受けていませんし、フォーク元はもう信用していません。
フォークされた時期以前は私以外の貢献者が開発することも多かったですが、この当時や現在は私がすべてほぼ一人でメンテナンスしているため、正直ただで働かせられた感じになって非常に嫌かつ複雑な思いです。
わかっていない場合、教えれば解決できる問題なのかなと思いましたが、(訂正された場合問題ではないですし)まあ、、、そうする気もないみたいですね。実際のところ、ライセンス表記の書き換えも存在していますが、これ以上介入してもしょうがないので泣き寝入りです。
今後はどうするのか
フォークに頼ることや協力することはほとんどあきらめています。実際のところ、信頼に値するかが難しく、善意をもとに成り立つオープンソースプロジェクトではなくなったのでもう協力などは絶対にしたくありません。(時間の無駄であり、自身のオープンソースプロジェクトをメンテナンスする人が私しかいない以上ほかに時間を割けないのも理由)
結論
オープンソースは踏みつぶされることがあるということを聞いたことがありましたが、まさか自分が経験することになるとは考えていませんでした。実際のところ、個人が行うのはあるとしても企業が全力で利用してくるケースは想定しておらず驚きを隠せません。
ライセンスを守れは何をしてもいいというのは事実ですが、そこを尊重するのもオープンソースのあり方ではないんですかね。結局ライセンスとはなんのために存在していて、どのような場所で有効なのか、オープンソースの作成者を尊重することとは従うことだけなのかという場所がよくわからなくなってしまったように感じます。
誤字脱字あると思うのでそのときはコメントにどうぞ。
Discussion