将棋 AI の開発者として有名なやねうらお氏のブログ記事「羽生先生の発言は何が開発者の反発を招いたのか?」について、一人のプログラマとして思うところがあったので書く。
火元(?)になったのは以下の記事だ。
上記の記事で取り上げられている羽生先生の発言は、以下の公文のオウンドメディアに記載されたインタビューからの引用である。
結論から言うと私は、開発者目線ではやねうらお氏の意見に一定の合理性があるものの OSS の "文化的精神" が現れているのは羽生先生の方ではないかという印象を受けた。
自分は将棋 AI の開発者でもなんでもない無責任な立場だし、やねうらお氏のように身銭を切っているわけでもない。単に自分が賛同しないというだけだ。
やねうらお氏は「OSS はコラボレーションと共有の文化」と述べている。以下に冒頭の記事を引用する。
繰り返しになりますが、OSSとは、単なる無料のソフトウェア以上の意味を持ちます。
多くのOSSプロジェクトには、コラボレーションと共有の文化が根付いています。ユーザーは、ソフトウェアの使用だけでなく、コードの改善や新機能の提案に参加することが奨励されます。
(中略)
羽生先生に悪気がないことは重々承知していますが、今回のこのあたりの発言が「将棋が好きなんだから将棋AIの開発を無償でやって当然」と考えているように見えかねないというのと(羽生先生がそういう意図で発言されていないことはもちろん理解しています)、また、上で書いたような(よくある)OSSの文化的精神を理解せず、ただの無料のソフトウェアと矮小化し、コミュニティに還元する意志を持たないように見えるので、開発者から反発を受けるのです。
羽生先生のような莫大な影響力を持つ方が、そのへんの事情を丸っと無視して(無視しているように見える)、「無料」の部分だけを切り取られて発言されると、将棋AIやOSSの発展の妨げになりかねないのです。
2つの記事でのやねうらお氏の主張を要約すると、以下の3点になる。
将棋 AI を OSS にすることで、ユーザーと開発者とのコミュニケーションによって将棋 AI の開発が進む。ユーザーは開発に参加することが奨励される
将棋を愛しているから無償で貢献するのではなく、開発競争の中で OSS にせざるを得なかった経緯がある。好きだから無料でやってるわけではなく、結果的にそうなっただけ
羽生先生の発言は OSS の "文化的精神" を無視しており、開発者コミュニティに悪影響がある
しかし、 OSS は一定のライセンスの制約下でソフトウェアの再頒布や利用を許可しているに過ぎず OSS の利用者に「コラボレーションと共有の文化」が求められているわけではない。少なくとも法的には。
OSS の利用者がコミュニティへ貢献する行動はよく見られるけど OSS という枠組みがそれを前提としているわけではない。すごく意地の悪い言い方をすると、やねうらお氏は今まで自分が利用した全ての OSS の開発に貢献してきたのだろうか?(この文章に煽る意図はなく、OSS の開発者と利用者の関係においてコラボレーションや共有が前提とならないということを主張するために敢えてこのような表現を用いました)
やねうらお氏に刺さったのは羽生先生の以下の発言と考えられる。
このような流れが自然にできたのは、オープンマインドのAI開発者が多くいたことが大きかったのだと思います。将棋をこよなく愛する開発者のみなさんは、将棋ソフトの開発で稼ごうと思っている人たちが少ないのです。そのため、開発したプログラムを自分のスキルを披露する場として捉えて公開し、私たちが将棋AIを使うためのアプリも無償で公開してくれています。
上記の発言に対して火元の記事「サンタ逃亡のお知らせ」でやねうらお氏は以下のように述べている。
いやいや。将棋をこよなく愛している(愛すべき)なのは、プロ棋士であるあなたたちであって、その将棋をこよなく愛しているあなたたちは、ノーギャラで将棋を指しているのですか?違いますよね。
私としては、将棋AIの開発自体は楽しいのでギャラが発生しようがしまいが続けていきたいとは思っていますが、かと言って「(エンジニアのあなたにとって)将棋AIの開発、とても楽しいやろ?楽しいからタダでええやろ?」と将棋AIのユーザーに言われちゃうと、それは違うんじゃないかなーと思います。それは将棋をこよなく愛するプロ棋士が将棋を指してギャラをもらっているのと同様の理屈です。本職のプログラマーはいかにプログラミングが好きであろうと、プログラムを書いたならギャラは発生すべきではあります。
確かに羽生先生の発言は(将棋ソフトの開発で稼ごうと思っている人が少ないというよりは、実際に稼ぐことが難しいという方が現在の状況に近いという意味で)将棋 AI 開発者の反感を買うかもしれない。しかしやねうらお氏の「プログラムを書いたならギャラは発生すべき」という考え方は雑だと感じた。
「プログラムを書いたならギャラは発生すべき」というのはそこに市場があり事業による収益が得られるから給料を払ってプログラマが雇われる余地がある(その結果としてギャラが発生する)のであって、市場が狭いなら新たな市場を自分で見つけていくしかない。例えば、将棋 AI の強さそのものではなく将棋 AI を活用した新たな事業を始めるとかスポンサーを増やすとか。実際に OSS で稼いでいる会社はいくらでもある。
プロ棋士が将棋を指してお金をもらえるのは「将棋が好きだから」ではなく「プロ棋士の対局やそれを元にした知識、経験に付加価値があるから」である。これは市場がなくなったところで好きなようにプログラムを書くだけでお金が発生することを期待している人間と "同様の理屈" ではない。
自分が開発したソフトウェアで開発の持続性を保つために市場を発見し収益化するのは開発者の責任であり、それが達成できていないことを他責にしても賛同は得られにくいと思う。
最後に、自分が羽生先生の方が OSS の精神を理解しているのではないかと感じた文章を公文の記事から引用する。
こうした将棋におけるAIの活用は、他分野に比べて非常に早く広がりました。なぜそうなったのかというと、公開されているプログラムなどを、誰もがオープンソースとして活用できる環境が整っているからです。将棋ソフトを開発する方々の多くが、自身が開発したプログラムを無料で公開してきました。リソースが権利関係で守られてしまうと、一部の人しか使えなかったりしますが、将棋の世界ではここ10年間、そうした障壁がほぼありません。
「リソースが権利関係で守られてしまうと、一部の人しか使えなかったりしますが、将棋の世界ではここ10年間、そうした障壁がほぼありません」
これこそが OSS の "文化的精神" と言えるのでは?コラボレーションや共有は OSS という枠組みがもたらす結果の一つに過ぎない。