やがて哀しきOSS
世の中のOSSの大半は英語で開発が進んでいるkeroxp.icon2020/2/17
他所のOSSの開発してみると分かるが、まー本当の本当に英語しか使われていない
イシューもPRもチャットも英語である
ドキュメントは運が良ければ各国語に翻訳されていたりもするが、最新版はもちろん英語しかない
僕は大学に入る時に英語を大変勉強したのでそれなりにOSSにもコントリビュート出来ている気がするが、その心は常に重い
日本に住んでいれば日常で英語で誰かと会話する機会などまずないので、英語を知っていようが正直英語での自己表現が難しいのは当たり前である
技術者同士なので専門用語を簡潔な表現で書けば伝わるので英語力という点ではそこまでハードルは高くないように思う
いちばん大変なのは議論に参加して意見を通すことである
これは別にどこの国でもそうなのだろうが、大勢の人がいる中で自分の意見を通すのは非常に困難である
大抵のOSSにはBDFL(優しい終身独裁者)というリーダーが存在し、それプラスコアメンバーがいる
OSSの方針や意思決定は基本的にはその人達が行うので、他所からやってきた開発者の権限は殆どない
まずできることと言えば、イシューを立てること、質問をすることくらいである
PR Welcomeと書かれているからといって、いきなり新機能や長大なポエムとともにリファクタリングを出してきてもまず通ることはない。これは冷静に考えれば当たり前である。
しかし一方で誰でも開発に参加できるということを保証するのはとても重要なことである
なので後からOSSに参加するためには色々な順番が存在する。それは、
イシューを立てたりやチャットで質問したりしてプロジェクトの運営について知る
イシューやPRを読んでいまどういう感じで開発が進んでいるのかを知る
できそうなことや募集中と明言されているイシューに取り組んでPRを出す
レビューの後マージされる(⇠ ここで初めてOSSへのコントリビュート)
以上のことをすべて英語で行う
これはとても簡単な一例だが、もっと自分発の意見を押し込むにはこれ以上に大変な気苦労が待っている
他所のOSSは自分のものではないので、自分の好き勝手に何でもかんでもできるわけではない
イシューを眺めていると should という言葉をよく見かける他にも
I think, not common, unusual, bad idea, disappointedなど
プロジェクトの歴史や進行状況を知らずに正論めいた自分の意見だけを言っていく人たちは少なくない
「何も文句を言わず使え、文句があるなら使うな」ということはない
が、そもそもOSSがなぜ存在しているのか、なぜOSSが使えているのかを考えてほしい
コアコントリビュータの人たちはこういったイシューを無視することなく一つ一つ説明や説得に回っている
そういった作業はサテライトとでも言うべきコントリビュータの自分にはできないことだ
母国に住み、豊かな母語を持ちながら、それを使えずに不自由な言語で多国籍のプロジェクトに参加するというのは、エリートの特権といえば聞こえが良いが、そこには常に哀しみが同居する
ただこういった気苦労や哀愁に負けてしまい、日本人のOSSへの技術的な参画が無くなってしまうのはどうしても避けたいという思いはある
Rubyのように日本人がBDFLとして世界的なプロジェクトを率いるというのは想像を絶するほどの大変さだと本当に思います。これは自分がOSSに参加するまでは分からなかったことです
一方で自分の考えやこだわりをそのまま形にしたいという思いもあるので、自分でもOSSを開発するわけです
このふたつは矛盾することなく開発者としていいバランスを保つには必要なことかなと思います