Qt 5 の未来は明るいブログ

Qt Contributors' Summit 2015(1日目)

Published: 2015-06-07 / Last modified: 2015-06-07

昨日も色々頑張りましたが 今日からが本番です。

受け付け

ネームタグを自分で探してTシャツを一枚受け取るスタイルでした。Tシャツはデザインがいまいちな感じで残念。

オープニングスピーチ

イベントの責任者が簡単な業務連絡を行ったあと、スポンサーを代表して floglogic の CEO が簡単な挨拶を行いました。

全体会議 by Lars

簡単な自己紹介(いまさら必要ない)のあと、Qt の20周年 についてちょっと感慨深そうに話をしていました。

その後、昨年の QtCS で発表した qt.digia.com と qt-project.org の qt.io への一本化の進捗について説明がありました。

ライセンスとして LGPLv3 を今後(新規で開発するものについて)は積極的に採用していく方向であること、それによって(LGPLv3が採用できないケースで)商用ライセンスを使ってもらうチャンスが増えることを期待しているという話がありました。

OSS としての Qt も KDE Free Qt Foundation との取り決めにしたがって引き続き積極的に推進していくこと、今後に向けて契約条項を改訂していく予定であることなどについても説明がありました。

Qt の現在の開発状況を(いつもどおり)コミットログの統計グラフ を元に説明し、Qt のコミットの2〜3割は The Qt Company 以外の会社や個人によるものであることであることを強調し、コミュニティからの貢献は Qt の開発の欠かせないピースであることを(いつもどおり)アピールしていました。

それから、Digia の子会社として The Qt Company を作るにいたった経緯や、財務的な状況、会社として製品のラインナップを見直したこと、今後は(デスクトップ&モバイルの)アプリケーション開発と、独自端末開発向けのソリューションの2本柱でビジネスを推進していくこと、ウェブサイトも引き続き改善していく予定であることなどについても触れました。

技術的な面では、Qt を「開発者に魅力的な選択肢にみえるように」、「最先端のアプリケーション/デバイス開発が常に可能であるように」していくことを目標に、C++11/C++14 のような最新の規格に迅速に追従し、Qt 自体の開発にも積極的に活用していくこと、逆に、古いモジュール、コンパイラ、OS などは段階的に非サポートにしていくこと、特に組み込み向けにメモリの使用量を削減していくことなどを改めて表明しました。

現在 Qt 開発のボトルネックの1つになっている CI システムについても触れ、現在新しいシステムを構築中であること、3人くらいのエンジニアをアサインしていること、それにより現在抱えている様々な問題が改善されることをシェアしました。

アンカンファレンス

その後は「アンカンファレンス」という「柔軟に必要に応じていろんなセッションをやっていくスタイル」で進められ、昨日までは空きだらけだった時間割も最終的には結構埋まっていました

Qt on Embedded Linux

はじめに、最近(Qt 5.5)の組み込み Linux のサポート状況について、EGLFS プラグインが改善され、ほとんどの環境でそのまま動くようになったこと、今まで使用してきた evdev に加え、libinput に対応したこと、GStreamer 1.0 に実験的に対応し、Qt 5.6 ではデフォルトにする予定であることなど、開発者から紹介がありました。

それから Qt for Device Creation の開発に伴う Yocto 関係のアップデートについても現在の状況や今後の予定について説明や質問、議論などを行いました。

このセッションの内容は Qt on Embedded LinuxQtCS2015 にまとめられているので、興味がある方はご覧下さい。

Qt website and services

Qt のオンラインマネージャが主導のセッションで、qt.io 上で動いている様々なコンテンツやサービスについての紹介や、今後の予定、方向性などがシェアされました。

qt.io には Qt 自体の開発者に向けたコンテンツやインフラと、Qt を使って何かを開発している人に向けたコンテンツやインフラがあり、そこのギャップをうまいこと埋められたらどちらにとってもメリットがあるけれど、それがなかなか難しいという感じでした。

Qt installers - path forward

担当者から開発の経緯や体制、現在の状況や今後の予定などの説明があり、その後 Q&A のような感じで様々なトピックについて話し合いました。

が、全体的には Linux ディストリビューションのパッケージ管理システムの(本題とはちょっとずれた)話が多くていまいちだったかもしれません。

QtNetwork

CI でネットワーク系のエラーが多いのでそれについて議論をした後、パフォーマンスの改善に関してハンドシェイク時のデータをどこかに保持して再利用できるようにしようという話や、様々なプロトコルに対応していく予定などについて議論をしました。

QtWayland

最近は Jolla の開発者によって開発が進められている QtWayland について、特にコンポジタ側の設計や実装についての議論がなされました。

OpenGL を使ってソフトウェア的に画面を管理する場合と、ハードウェアのコンポジット機能を活用する場合の両方にうまく対応できるようにしたいという意向のすり合わせから、そもそも Wayland に特化したものにするのか、QtWindowCompositor みたいな名前の方がいいんじゃないか?みたいな話まで発展し、とても有意義なセッションでした。

License policy for qt-project

最近の Qt には様々なサードパーティーのソースコードが含まれています。それらのライセンスについて一般的な方針から特定のケースについてまで幅広く議論を行いました。

特に、KDE 側が(既存のアプリケーションが採用している)GPLv2 の存続を希望していることと、最近採用が増えている Apache ライセンス v2 がコンパチブルではないので、そこを Qt としてどう解決していくかについて多くの時間が割かれました。

企業としてどうしたいか、コミュニティとしてどうしたいか、短期的にどう解決するか、長期的な視点でどういう選択をするのがいいのか、ライセンスの問題は非常に複雑で難しいのですが、様々なケースを想定したり、可能性を模索しながら関係者の意識を少しずつ擦り合わせていくという、とてもシビアなセッションでした。

余談

2014年の Qt チャンピオンが(1人を除いて)一同に会したため、記念写真を撮られました。

夜のパーティー

18時から、オスロ市内のバー(かなんか)を貸し切ってパーティーを行いました。

今回の Contributors' Summit は Qt 発祥の地、ノルウェーのオスロで開催されたこと。それから、今年は Qt の 20 周年にあたる年であることもあってか、当時 Trolltech で働いていた人とか、Nokia の時代に Qt の仕事をしていた人もたくさん顔を出していて、いろんな人と「ひさしぶりー、最近は何してるの?」っていう話ができました。

お互い名前は覚えていなくても、顔を見て「あー!」ってなって、「昔一緒にこんなことしてたよねー」みたいな話ができてとても楽しかったのと同時に「昔は楽しかったなー」とか「年取ったな…」とちょっと悲しくなってしまいました。

でも、Trolltech で働きはじめて数年後に、念願のオスロのオフィスに行ったときには「ん?SRA だっけ?から来たの?」とか「え?Trolltech って Japan に社員いたの?」とか言われたのを考えると、何年もかけて Qt のいろんなイベントに参加したり、Qt のいろんなところのバグを直したりして Qt のいろんな人と仲良くなれて、個人的にもとても頑張った感があるし、ちゃんと日本の Qt にも貢献できてるんじゃないかな?と改めてうれしく思いました。

それから Qt のマーケティングの偉い人と2人で、先週の反省や今後の日本での活動の方向性についての話をたくさんしました。

まとめ

いろんなセッションに参加はしましたが、その中で発言したのは2言くらいで、直接的にはなんの役にも立ってない感じです。

明日は今日よりもうちょっと貢献できるように頑張りたいです。

Trend