GODI 終了宣言事件に関して

A rough summary in English which might sound too more direct than the original Japanese version. Sorry if you feel attacked: pro came in and did great jobs, while a volunteer felt burnt out. Probably this kind of things happens in the world everyday, in OSS, in football, in finance, or in everything. But if he had been excluded from the project for pro's quick market domination..., it would not be very fair to call him simply "burnt out". True or false, this sad event made me, who enjoys small OCaml tool development in weekends, reconsider my way of future contribution to OCaml community.

OCaml のパッケージシステム GODI の作者である Gerd Stolpmann が GODI の終了を宣言しました。

発端はあるユーザーが caml-list に投稿した GODI とそしてもう一つのパッケージシステムである OPAM の関係、違いに関する質問のメールです。

Gerd は当然 GODI の作者ですから GODI の利点を説明、ただし OPAM に関して「動機がわからない」などと少し厳しいコメントをし、それの反応として OPAM 陣営からたくさんの OPAM の利点が説明されました。Gerd はこれに対して FUD だと主張し、その後別スレッドにて GODI の終了を宣下しました。簡単に言えば「もうやってられない」ということです。

私は個人的には GODI は使っていなかったのですが、Gerd がかなりのエネルギーを GODI というエコシステムに投資していたのは知っていますし、ユーザーもいるのです。こういうことになってしまい大変残念に思います。実は OPAM が出てから、こんなことになるんじゃないかと危惧していました。その危惧が現実になってしまいました。

Gerd のメールの文面の端々から、 OPAM は GODI をパクッた、もしくは GODI を潰そうとしていると感じていることが伺えます。たとえば彼は、「俺が GODI ですごく時間掛けて開発したものを OPAM チームがやってきて刈り取っていった」と書いています。OPAM チームの Anil の反論は、「ソースパッケージシステムなんか OPAM や GODI 以前にも OpenBSD とかにもある」、つまり別に新規性のあるアイデアではないだろう、ブチキレはお門違いだ、というものです。

ただ…私は Gerd の気持ち、わかるんですよ。Gerd が GODI 一人で頑張ってたところに、 GODI を改良するでもなく、まったく別のパッケージシステム OPAM が出てきた。でよってたかって GODI は使えないと言われる。そら面白くないでしょう。その上、OPAM の元々の開発は OCamlPro という INRIA の中の人が創業した会社です。OCaml を使っている企業等からのスポンサリングで OCamlコンパイラの機能やツールを実装する会社です。ブランドも人も金もコネもありますから、ここが新しい OCaml ツール作ったよとなればそちらに流れる人は多いのです。

私自身「Pro にパクラれた」的経験があります(「」がついているのは、そこまで私は思っていないということです。そこんとこよろしくお願いします)。私の作った OCamlSpotter というツールに類似する機能のある TypeRex という IDE 環境を彼らは後発で出しています。TypeRex のリリースのメールを見たときはビックリしたと同時に悲しかったですね。協業する方向でコンタクトしてくれれば良かったのにと思いました。

ただその当時私はすでに OCaml を使う会社を辞めていて Haskell を使う今の会社に転職しており、あまり OCaml に関する開発もしていなかったし、 caml-list も全く読んでいなかったので、 OCamlSpotter ディスコンか?と思われても仕方なかった。さらに OCamlSpotter 自体私が使うために作ったツールであり、特に他人様が別の同様なツールを使っていても気にならなかったため、別にブチキレたりはしませんでした。(そもそも、私は OCamlSpotter リリースするまで知らなかったのですが、 OCamlWizard という同じような機能の別ソフトも OCamlSpotter より前に存在しましたし)

オープンソース活動ですから、コード自体をライセンス無視してパクッてなければ、別に後発が同機能の別ソフト出してきても構わないと思うんですが、OCamlSpotter と異なり GODI は単なるソフトではなくパッケージレポジトリでもあり、一つのエコを提供しています。彼は自分が使いもしないソフトウェアのパッケージングにもエネルギーを投入していたはず。何年もやってたボランティア仕事を横から盗られたと思ったら「燃え尽き」ちゃうのもしょうがないと感じました。どうして OPAM の人々は Gerd と一緒に仕事しなかったのか、残念です。

実は TypeRex 出現以降、OCaml 系のツール、こんなの欲しいかな、作って公開しようかしらんと思っても、Pro が後から「刈り取り」にくるんじゃないかと思って手を出す気が出ないときがあります。その中で、つい最近 OCaml◎Scope を公開しましたが、これは Pro が少なくともしばらくはこっち方目に手を出さなそうだと彼らの活動レポートを読んで確信してから始めたものなのです。

もちろん誰がどんなソフトウェアを出そうと構いませんし、それが私が楽しんで作っているものと機能的にぶつかっていても別に私はブチキレたりするつもりはありません。自意識過剰と言われればそれまでですが、エコシステム改良する会社が登場したことで私自身がエコシステム改良する事に慎重になってしまいました。その中でコミュニティに何か貢献できればと活動していたのですが、そこに GODI 終了宣言です。大変に、悲しく思いました。