6月16日から18日にかけてドイツのベルリンで開催された Qt Contributors' Summit に参加してきました。
今回が初の開催となる Qt Contributors' Summit とは、その名の通り Qt に貢献する人たちが集まる会議です。これは Qt 5 や オープンガバナンス への移行に関連して、その開催が決定されました。Qt に関連した大きなイベントとなると毎年ミュンヘンとサンフランシスコで開かれている Qt Developer Days がありますが、そちらが Qt に関わる全ての人たち向けのイベントだとすると、こちらは Qt それ自体の開発や発展に関わりたい人たち向けのイベントになります。
全体の参加人数としては昨年ミュンヘンで1000人を超えた Dev Days の方が多いのですが、Troll 達の参加人数は今回のサミットが上回り、全体の参加者250名の半分弱である約100名が Troll と Nokia 社員でした。残りは Digia, ICS, KDAB といったパートナーや Accenture, Intel 等の企業、KDE, MeeGo, INdT といったコミュニティ等からの参加でした。とはいえ、KDE 等のコミュニティのメンバーは Troll やパートナーのメンバーであることも少なくないため、だれがどういった立場で参加しているかは単純ではありませんが。
サミットの詳しい情報は wiki にありますので、是非そちらも参照してください。トピックリスト ではいくつかのトピックについて、サミットで使われた資料や話し合った内容へのリンクがあります。また、GEO ルームでのセッションは後日ビデオが公開される予定です。
ちなみに、会場は Café Moskau というイベント会場でした。旧東ドイツ時代には社交場だったそうで、雰囲気のあるところでした。
サミットはキーノートから幕を開けました。Qt R&D の Director である Lars Knoll による Qt 5 とオープンガバナンスの提案の説明がその最初です。その内容は Qt 5 やオープンガバナンスに関する Troll からの提案で、サミットの開始時点での議論の前提として参加者で共有するべき情報となります。詳細は一連のブログ記事(まだ、翻訳途中の物もありますが)を元にした物ですので省きますが、ブログにない今回の新たな情報としてはそのスケジュールに関する情報がありました。現在進行中の変更である Qt Quick 2 等の変更を8月までに、Qt 5.0 の搭載機能を決める Feature freeze を10月、正式リリースを MeeGo 1.4 をターゲットとした2012年4月とするかなりタイトなスケジュールです。これらの内容は提案であり決定事項ではありませんが、この通りに行くとなればかなりアグレッシブなスケジュールとなります。
Lars による説明の後は Qt のリーダーシップチームから Lars(Director, R&D), Christy(Legal Counsel), Sebastian(Senior Vice President), Thiago(Senior Product Manager) と Digia の Tuukka Turunen氏(Director, Special Projects)による Q&A セッションです。会場や Twitter 等から質問を募り、それに対して答えていきます。Qt 5 のモジュール構成に関する技術的な質問から、貢献時の同意に関する実務的な内容や Digia の商用版などに関する質問などがありました。特に気になるところとしてはオープンガバナンスの立ち上がりが遅れていることに関して、Qt 5 のスケジュールへの影響はないのかといった質問や、Qt 5 の Symbian 対応に関する質問などがありました。前者は現状では特にスケジュールの変更などは考えていないと言うことでしたが、立ち上がり時期や議論などで変わる可能性もあります。後者については、対応する予定がないという返答がありました。
キーノートの後、昼食を挟んでいよいよ各セッションが始まります。セッションが録画された GEO ルームではセミナー形式のセッションが多かったようですが、それ以外の各セッションでは基本的には20名程度の小さな部屋に分かれて、様々なトピックに関して Qt 5 やオープンガバナンスを見据えた今後に関する議論を行っていきます。セッションはサミットの開幕前から決まっていた物もいくつかありましたが、多くはサミットの開幕後に徐々にスケジュールが決まっていく感じでした。その際には下の写真のように、壁に貼られたスケジュール表に付箋を貼っていく形で開催するセッションを予約していきます。その中には例えば最初にセッションを開催して、その中で議題を決めてスケジュールを確保していくという手法をとる物もありました。
ここではいくつかのセッションを紹介してみましょう。
QML の文法に合わせて QtQuick 2.0 と呼ばれることもありますが、Qt 5 でメジャーバージョンアップが予定されている QML に関するセッションです。基本的にはそのバックエンドの変更(グラフィックスを QML Scene Graph へ、JavaScript を V8 へ)が主な変更内容であるため、QML の文法そのものが大きく変わるわけではありませんが、それ以外にもドラッグ&ドロップやマルチタッチのサポート等も検討されていて、様々な改善が計画されています。参加者からのフィードバックも多く、実際に QML を利用した上での改善要望などがなされていました。このセッションを筆頭に、「改善したいけれどロードマップなどが公開されていないため、具体的に何が貢献できるかがわかりにくい。今すぐにでも貢献したいのに。」といった意見がありました。
Qt Creator 関係のセッションも多数開かれました。特に QML 対応として Qt Quick デザイナへの意見は多く、アニメーション対応の要求は強い物でした。他にも Photoshop との連携を強化させる話など、Qt Quick に関する議論だけで時間になりそうな場面がしばしば見られました。
Qt の特に組み込み系で利用される Wayland や DirectFB 等の描画系に関するセッションもありました。DirectFB のセッションは DirectFB 自体の今後のロードマップも含めての紹介をメインに行われました。Wayland のセッションは MeeGo での採用も考慮されているためか、非常に人気でした。
私自身は全てのセッションには参加していませんが、Android や iOS への移植に関するセッションも人気でした。Nokia では手がけていませんが以前から移植の要望の耐えなかったプラットフォームであり、Qt 5 ではオープンガバナンスの参加者次第でこれらのプラットフォームもサポートされる可能性が充分にあります。Android 版、iOS 版の双方で OpenGL を活用した QML の滑らかな動作が披露され、参加者の期待も高まったのではないかと思います。どちらのプラットフォームにもまだまだ課題があり、特に iOS 版は技術面以外のハードルも高く、少なくないため、今後の展開はまだまだ不透明なようです。それらのハードルを乗り越えて、是非 Qt の一端を担うプラットフォームとなって欲しいものです。
とにかく、活気に満ちたイベントでした。セッションの最中もそうなのですが、間の休憩時間等でもそこかしこで Qt に関する様々な議論が行われていました。その面子は様々で、場合によっては Troll 同士で議論していることも少なくはありませんでした。オープンガバナンスの立ち上げが遅れているのは残念でしたが、直接開発に参加することで Qt をもっと良くしていこうという意識を感じました。
今年の Dev Days では、サミットのフォローアップイベントも計画されていますし、議論は今も メーリングリスト や IRC 等で続いています。皆さんも、是非 Qt の開発に参加していただければと思います。