ApacheCon North America 2017:The Apache Wayの理想と現実
夕方から始まった2日目のキーノートセッション
2017年5月16日から18日までマイアミで開催されたApacheCon North America 2017の2日目は、キーノートセッションが夕方から始まるという変則的なスケジュールとなった。午後4時過ぎから始まったキーノートで最初に登壇したのは、ベンチャーキャピタルであるLightspeed Venture PartnersのSudip Chakrabarti氏だ。このキーノートではベンチャーキャピタリストからの目線で、IoTにどのくらい市場性があるのか、テクノロジーはどのくらい成熟しているのかなどが語られた。ITベンチャーに多く投資を行っている経験を活かして、かなり楽観的な見方が示された。
特にIoTから出てくるデータの活用という部分においては、Apache Sparkに代表されるオープンソースソフトウェアが重要な役割を果たしており、これからもIoTの活用事例は広がっていくだろうという予測を語った。
次に登壇したのはIBMのJohn Thomas氏。Thomas氏はIBMのAnalytics部門のDirectorである。ここでは機械学習とApache Sparkについて「Machine Learning & Apache Spark: A Dynamic Duo」と題されたプレゼンテーションを行った。機械学習の基本的な概要、ユースケースなどについて概観した上で、IBMがApache Sparkについて利用と貢献の両側面で多大な努力を払っている点を紹介した。これは初日のキーノートでASFのプレジデントであるSam Ruby氏が「ASFは一つのベンダーがあるプロジェクトに大きな貢献をしているという宣伝はしない。あくまでも個人としての貢献であり、その個人の所属は無関係」と静かに語ったのとは真逆の言い回しで、いかにも最近バズワード化している機械学習とビッグデータのビジネスで存在感を示したいIBMの願望が曝け出された格好となった。
今回のカンファレンスの最大のスポンサーがIBMなので、この部分についてはASFからダメ出しはできなかったということだろうか。
2日目の最後のキーノートに登壇したのは、ケーブルテレビやISPなどのサービスを提供するComcastのOpen Source PracticeのDirectorであるNithya Ruff氏である。ここでは「Apache Projects and Comcast's Journey to Open Source」と題された内容で、オープンソースソフトウェアとの関わりについてセッションを行った。Netflixに隠れてあまり目立たないComcastだが、ユーザーの要望に答える形でマルチデバイス、オンデマンド、レコメンデーションなど様々な機能を、オープンソースソフトウェアを駆使して実装していると説明。特にASFのソフトウェアはSparkを初めとして多く活用しており、「ASFのソフトウェアがなければ今のComcastのシステムは実現できていない。なので、企業としてもっと支援を強化する。スポンサーシップについてもレベルを上げる」と発言したところで、会場から思わず拍手が起こったのは興味深い現象だった。
ここでは小さな魚が多く集まって協調して動くことで、大きな魚を凌駕できることを例に挙げて、ASFのエコシステムが多くのプロジェクトによって成り立っており、結果的に大きな流れを作っていることを解説した。
さらにApache Traffic Controlというプロジェクトに関して説明を行った。これはComcastが実際にIPベースの映像配信に利用しているオープンソースのソフトウェアで、CDN(Content Delivery Network)で利用されるキャッシングサーバーを制御するアプリケーションであるという。Traffic Controlは、ASFのインキュベーションプログラムとして採用されている。これをComcastとして率先して開発を行うことで、多くのデベロッパーを採用することができ、コミュニティに対しても良い貢献ができていると語った。
2日目のキーノートセッションは、このイベントのプラチナスポンサーのIBM、そしてビデオ撮影のスポンサーであるComcastに宣伝の場を与えたとも言えるもので、企業よりも個人の貢献を重視したいASFにしては最大限の譲歩といったところだろう。非営利でありながら、イベントなどのコストのかかる部分にはスポンサーの力を借りなければ立ち行かない現実を見たという気分になるセッションだった。
ブレークアウトセッションThe Apache Way
しかしこの日のトピックは「The Apache Way」と題された6つの連続したブレークアウトセッションで、これはASFの中のプロジェクトやユースケースに関するセッションではなく、ASFがどのようにソフトウェア開発プロジェクトを統治するのか、その原理・基本は何かについて解説するものだ。
セッションのタイトルを並べてみよう。
- Effective Open Source Project Management
- A Tale of Two Developers: Finding Harmony Between Commercial Software Development and The Apache Way
- From @dev to @user to the Apache Way
- Apache Way Panel: Software is Easy; People are Hard
- The Apache Way for Business
- Committed to the Apache Way
このような内容のセッションを、午前から午後にかけて同じ部屋でぶっ続けに行うものだった。
特に最初に登壇したASFのBrand ManagementのVPであるShane Curcuru氏のセッションは、前日のSam Ruby氏が説明した「ASFとは?」をより詳細に解説するもので、特にプロジェクトに悪影響を与える人物について「Don't be a jerk; avoid poisonous people」というメッセージで、より明確に排除するべきと解説した。
以下のリンクは、Curcuru氏が引用したGoogleのエンジニアのトークで1時間に渡って悪影響を及ぼす人物を避けるべき様々な要因について解説しているものだ。
Google I/O 2008 - Open Source Projects and Poisonous People
Apache Wayではコミュニティの定義についても厳格で、「Apacheのプロジェクトを通じてのみ接触がある個人」を「一緒に生活をしていない」「一緒に働いていない」「お互いを知らない」と定義することで、同じ会社のエンジニアがグループでプロジェクトに参加してプロジェクトの舵を取ろうとする行為を暗に戒めているとも言える内容だった。
そして特徴的なのは、コミュニティにはコードを書くプログラマーだけではなく、テスターやマニュアルなどを書くライター、そしてユーザーまでも含んでいる点だ。これはこのセッションで常に語られていた特徴で、コードを書く人間だけが認められるわけではなく、デザイナーやライターも含むべきだということが繰り返し述べられた。
また別のスライドでは、「コミュニティのメンバーは個人であって企業の社員ではない」ということが明記されている。つまりここでも、企業が自社のメリットのために社員を参加させることを戒めていると言えよう。
また開発のプロセスについては「ミーティングも投票も全てを公開の場所で行う」と明記されている。またこれは、後から参加する新規のメンバーにとっての学習のためであるとも記されている。
次に登壇したClouderaの若いエンジニアの2名のセッションは、寸劇を利用してASFのプロジェクトに参加した新人エンジニアが先輩のエンジニアに疑問をぶつけながら、The Apache Wayを実践していくというものだ。
このスライドでは「Apacheプロジェクトでは独裁者は許されない。たった一人の独裁者がプロジェクトを台無しにする」と明記されている。
ちなみに最後のセッションが終わった際に質問として「例えば、Linusみたいな人がApacheのプロジェクトにいることは許されますか?」と質問を向けてみると「それは良い質問だ。基本的にはダメだろうが、Linusのように、あるテクノロジーについて何もかも知っている神のような人がいたとしたら、そもそも別の扱いになるだろうね(笑)」ということだった。
総じて具体的で観念的になっていないところが、ASFの過去18年間の経験が詰まっているというのがThe Apache Wayへの感想だ。ただしASFの場合、コミュニケーションの全てが英語というのが基本になっており、英語でコミュニケーションを取れることは最低限の必要条件である。勇気を持ってコミュニティに飛び込むためには、最低限の英語によるコミュニケーション力が必要だ。また読み書きだけではなく、口頭での会話による意思の疎通が重視されてしまうのが今回のようなイベントなのだが、ApacheのコミュニティはガバナンスやCode of Conductがしっかりしているため、初めて飛び込むなら最適であろう。