The open source paradox

Salvatore Sanfilippo

オープンソースのパラドックス

SNSやプログラミングコミュニティで、ある考え方がじわじわと広がっている。コードを書くことに対して人から支払われる金額と、その仕事の品質について要求できる度合いは比例する、という考え方だ。

誰かが言ったように、最高のコードは、本来やるべきこととは別のことをしているときに生まれる[1]。有名企業のコピーライティングの仕事をしているときではなく、もしかしたら誰からも一円たりとも払ってもらえないかもしれない小説を書いているときにこそ作家は最高の仕事をするように、プログラマーも勤務時間中に、どこか馬鹿げていて退屈で無意味だと感じているプロジェクトの断片を書いているときよりも、オープンソースのサイドプロジェクトにこそ多くのエネルギーを注ぐものだ。そして会社が十分に大きければ、そのプロジェクトは半年後に中止されるか、華々しいローンチの一年後には廃止されている可能性が高い。

オープンソースは違う。それは作品であり、本当にやりたいこと、ソフトウェアはこうあるべきだという思い、あるいはコーディング中に感じる純粋な楽しさや喜び、時には怒りそのものをコードへと置き換えたものだ。だからこそ、それを最高のものにしたい、完璧にしたいと思うし、クソみたいなハイゼンバグが一つあるだけで夜も眠れなくなる。だから、もしあなたのソフトウェアのユーザーが、コードの一部がひどいと言ってあなたに声をかけ、何とかしようと一緒に取り組む意欲を見せ、厳しい要求を突きつけてきたとしても、金を払っていないくせに搾取されているなどと思わないでほしい。問題は金ではない。バグを無視したければ無視すればいいし、苦情を無視したければそうすればいい。そうしなければいけない契約などないのだから、そうすることはできる。だが、彼らはあなたを助けようとしているのだ。彼らもあなたと同じものを気にかけている。あなたのソフトウェアの品質、壮大さ、完璧さだ。

あなたが本当に持っていて、しかも活かしきれていない権利がある。それは、ソフトウェアの設計を決められるのはあなただけだということだ。だから、誰かのコントリビューションが自分が設計し構築している全体像に合わないと感じたなら、プルリクエストやベストプラクティスに従えという提案を拒否する権利があなたにはある。

だが、誰かが指摘していることが、実際にあなたのソフトウェアの欠陥だと気づいたなら、そのやり取りを金という下世話な問題に矮小化するという過ちを犯さないでほしい。あなたは無償で作業をしている。彼らはあなたが書いたものをデプロイして尻に火がつくリスクを負っている。あなたも彼らも、ともに品質を気にかけているのだ。

追記:もしあなたがOSSを書いていてユーザーの要求にうんざりしているなら、もしかすると今のあなたの仕事が、何らかの理由で会社での仕事と似たものになってしまっているのではないかと考えたことはあるだろうか。

追記2:Hacker Newsのユーザーから、このタイトルの理由を尋ねられた。パラドックスとは、OSSの作者が、無償で書いたコードの方を、有償でやっている他の仕事以上に気にかけ、進んで修正しようとすることだ。

[1] 「最高のプログラムとは、プログラマーが本来取り組むべき別の作業があるときに書かれたものだ。」 - Melinda Varian. https://twitter.com/CodeWisdom/status/1309470447667421189

原文は Salvatore Sanfilippo により に公開されました。

この記事は「muse-spark-1.2-contributor」を使用して翻訳されました。