ドキュメントを直すだけでもいい、貢献したという経験が大切
――最近話題のOpenStackについてはどう思われますか。御社は、2015年10月のOpenStack Summit TokyoでOpenStack Superuser Awardを受賞されています。
OpenStackは、もともと筋が良いソフトウェアだと思います。でも完全な製品ではなく、材料なんですよ。電子レンジでチンすればよいくらいの状態ですが、そのまま使ってもだめです。
――OpenStackをはじめ、OSSをうまく利用するには何が必要でしょうか。
その技術を知ってください。必要に応じてソースコードを読めなきゃだめです。利用するけど中身を知りませんと言うなら、プロプライエタリ製品で済むでしょう。 あと、ソースコードを書いてください。今、付加価値を生み出せるのはソフトウェアだけです。ソースコードを書いたことがなければ、人に書かせることはできない。仕入れたソフトウェアの目利きもできないし、ソフトウェアを作る営みを管理すること、すなわちプロジェクトマネジメントも当然できない。
ソースコードを書くことを本業とする必要はないんです。でも、書いた経験がないと、その価値も見定められないし、問題が何かを見極められない。
――若手の方にはどのようにアドバイスしていますか。
とにかくコードを書けと言っています。1万行のプログラムではなく、たった20行でいいんです。
たとえば、メールアドレスの「@」の前と後ろを分離するプログラム。普通は20行くらい、上手い人なら10行、超上手い人なら1行で書けます。でも、新人は100行くらいの冗長なコードを書いてもってくる。ロジックに間違いがなく、アルゴリズムがOKなら、どんなに長くてもまずはコードを商用環境で動かしてみせます。自分が書いたコードをお客様に提供してお金が生まれることを理解してもらいたいから。そのうえで、普通は20行くらいで書けるよ、ここが冗長だねと指摘すると、ひぇーっと落ち込む。でも一度作り方がわかればパズルみたいなものだから、ここがだめと教えるとどんどん上手くなっていきます。コードを書いてものを作る楽しさ、喜びがわかれば、すごく伸びる。
書けない人もいます。それなら、開発企画やスケジュール管理など、ソフトウェア開発のいろいろなプロセスを担当すればよい。書けないからといって否定はしません。
――コミュニティとはどのように付き合えばよいでしょうか。
利用する立場としては、OSSそのものの開発に携わらなくても、バグを見つけたらパッチを提供する、イベントに参加する、コミュニティのキーマンとやりとりするなど、いろいろな貢献の仕方があると思います。NTTグループでは、勉強会を開いたり、グループ内での意見をとりまとめて発表したりといったことも行っています。そういった活動への参加は積極的に後押ししています。
世の中は、インプット、プロセス、アウトプットで成り立っています。インプットを処理し、価値を付加してアウトプットすれば、それを誰かが受け取ってくれる。その成果、貢献が世の中を動かしていると感じられれば人間は伸びるし、それが恒常的に起こるようにするには会社や組織がサポートするべきです。何かを変えたい、夢を具現化したいと考えるなら、コミュニティ活動を通してやればいいし、実際にそれが可能です。貢献がコミットされれば、ずっと記録に残ります。ドキュメントのバグを直すだけでもいい。大小に関係なく、貢献したという経験が大切です。
* * *
アニメについて、そしてOSSについて語る内容からは、村上氏の深くて強いこだわりが感じられます。長年、熱意とこだわりをもってOSSを利用してきた技術・経験があるからこそ、「OSSを知ろう」「ソースコードを書こう」「コミュニティに貢献しよう」との村上氏の言葉は、OSSを活用しようと考えている企業の重要な指標となり得るのではないでしょうか。