ーーGoogle Codeについても少しお聞きしたいと思います。Google Codeでは一般の開発者とGoogleが直接話をする機会というのをどのように設けているのでしょうか。
様々な方法がありますね。もっとも手軽に利用されているのはGoogle Groupsですね。様々なAPIに関するGroupが立ち上がっていますが、これにはGoogleの社員も参加していて、一般の開発者と活発にディスカッションしています。直接会って対話する機会としてはカンファレンスに参加してもらうのがいいでしょう。もちろんE-mailなどでのコンタクトも受け付けています。
ーーGoogle Codeは次々と新しいAPIをリリースしていますが、端から見ると開発者がそのスピードに対応しきれているのかが気になります。開発者の学習に関して対策などはありますでしょうか。
私からみると、開発者は問題なくついてきてくれています。Googleでは現在GData形式に注目しており、これをベースとしたAPIの提供を積極的に行っています。GDataはRSS 2.0/Atom 1.0を拡張したプロトコルで、様々なウェブアプリケーションに対しての問い合わせに対応しています。
異なる種類のAPIでも、GDataをサポートしていれば共通の形式によって利用することが可能です。例えばCalendarやBlogger、Readerなどが全て同じAPIで利用できるわけです。Googleが何か新しいAPIをリリースしたとしても、それがGDataをサポートしている限り開発者が新しく学ばなければならないことは最小限で済みます。したがってGoogleがどれだけ早いサイクルで新しことをはじめても、開発者がそれについてくるのはさほど難しいことではないわけです。
ーーオープンソースプロジェクトをサポートするサイトとしてGoogle Code上に「Project Hosting」を立ち上げていますね。現在そこで提供されているツールは開発者同士を結びつけるコミュニケーションして十分な機能を提供できていると思いますか。あるいは、これからさらに何か必要だと考えているものがあるでしょうか。
現状でも十分に機能していると思います。ドキュメント、サンプルコード、プロジェクト管理機能など、開発者がAPIを利用するのに十分な情報が公開されています。また、公開されているAPIもよく整理されていると思います。コミュニケーションツールはGmailやGoogle Groupsと連携して提供されており、Group上のフォーラムでは開発者同士が活発な議論を繰り広げています。
このような点から、開発者がGoogleのAPIを利用する上でGoogle Codeは非常に有用なページを提供していると考えています。
ーーSourceForgeなどの他のプロジェクトホスティングサイトと比較して、Google Codeの優位性はどの点にあるとお考えですか。
まずIssue Trackerが極めて使いやすいことでしょうか。非常に多くのフィールドが用意されていて要求の分類が容易なほか、シンプルなクエリでアクセスすることができます。問題提起のほかにディスカッション用のメニューも用意されており、他の開発者とコミュニケーションを取りながら要求の追跡ができます。
ダウンロード機能にも力を入れ、サーバにアップロードしたファイルは即座に公開されます。URLの補完や検索技術などを利用して必要なデータを素早く入手することができるようになっています。また、ユーザがダウンロードサイトのミラーを選択する必要がないというのも便利です。
Wiki機能も備えているため、プロジェクトページをオンラインで構築することもできます。Wikiは複数のユーザが協力してウェブサイトを構築するのに非常に優れたツールです。またソースコード管理にSubversionを利用することでスケーラブルなバージョン管理機能を実現しています。
これらの機能が、Googleの検索技術を活用することでシンプルなインターフェースで提供されています。
ーー今挙げられたような機能の他にも、インターネット上ではソーシャルブックマークやソーシャルタギングなどといった、プロジェクト管理やコミュニケーション支援に活用できそうなツールがたくさんあります。こういったものをGoogle Codeに取り入れていく予定はあるでしょうか。
今のところ考えていません。しかし、新しいツールを取り入れる際に特に注意しなければならないことは、開発者がどのようなタイプのコミュニケーションを望んでいるかです。現状だとメーリングリストやグループフォーラムなどが中心ですね。Wikiはそれらのディスカッションとは少し異なりますが、情報の記述や改訂をベースとした一種のコミュニケーションと受け取ってもいいと思います。これらのものは現在ではコミュニケーションのメカニズムを形作る重要なピースになっています。
ーーGoogle Codeを運営されているStein氏の立場から見て、日本の開発者やオープンソース・コミュニティに対してどのような印象を持っているか教えてください。
日本の開発者はとても優秀で、活発なオープンソース・コミュニティもたくさんあります。ただ、彼らの多くは日本人中心のコミュニティに閉じてしまっていて、海外のコミュニティへの参加にはあまり積極的ではありません。言語の問題が大きいのだと思いますが、海外に出ればRubyのように大きく成長するコミュニティもあると思います。ただ、言語の問題は日本が特別という訳ではなく、ブラジルなどでも同じです。
ーー最後に、日本人の開発者に向けて何かメッセージをお願いします。
積極的にオープンソース活動に参加してください。日本の開発者は非常に高いスキルを持っています。オープンソース活動に参加することは、自身のスキルを向上させるうえで非常にいい経験になると思います。コミュニティには多くの優れた開発者が参加しており、彼らと交流し、活発に議論することで、エンジニアとしてのレベルは格段に向上します。
また、オープンソース活動への参加はキャリア形成に有効に働きます。少なくとも、私はオープンソースコミュニティでの活動経験を積極的に、高く評価します。コミュニティでうまくやっていけるということは、コミュニケーション能力の高さを証明することだからです。Googleはあたな方のオープンソースコミュニティへ参加することを心から歓迎します。