航空会社のパイロットが作った、自分の飛行ルートのインタラクティブなグラフ/グローブ
(jameshard.ing)- A350のパイロットでありコンピュータエンジニアでもある創業者が、自ら飛行ルート可視化ツールを開発
- このツールは、世界中を旅しながら経験した飛行データをインタラクティブなグラフとグローブの形で表示
- ソフトウェア開発、旅行、そのほかさまざまな趣味活動の記録ともつながるプロジェクト
- ユーザーはウェブサイトで多様な可視化を直接閲覧できる利点がある
- ITおよびスタートアップ業界でデータ可視化、地理情報の活用に関心のあるエンジニアにとって意義のある資料
紹介
- 本人はA350航空機のパイロットであり、コンピュータエンジニアでもある
- 航空業界で働きながら世界中を旅し、その経験をインタラクティブなグラフと地球儀形式の可視化として記録するソフトウェアを開発
- 開発したツールを通じて、自ら行ったフライトをデータとして整理・可視化し、これをウェブサイトで公開
- このプロジェクトは単なる趣味にとどまらず、航空データの可視化、世界の航空ルート分析、フロントエンド技術の活用という面でも意義がある
- ウェブサイトでは飛行以外にも、個人の旅行、ソフトウェア開発、そのほかの趣味生活を記録する内容も一部扱っている
1件のコメント
Hacker Newsのコメント
素晴らしい可視化で、個人ログブックの管理にぴったりだと感じた。元データや表示方法をどう保存しているのか気になる。
地球儀マップを見て、ブックマークしていた六角形グリッド構造を扱うこの Red Blob Gamesの記事 を思い出した。
私は航空会社のパイロットなので、
Rehearsalシーズン2を見たか気になる(Nathan FielderがHBOでパイロットと副操縦士のコミュニケーション問題をユーモラスに扱った作品)。もし見ていたら、パイロット同士の摩擦の描き方が実体験とどの程度合っているのか意見を聞いてみたい。
職業柄、助けが必要だと認識しないまま高機能な人であり続ける傾向や、生存者バイアスが残っているのか、それともNathanの視点が過剰に誇張された事例なのか、意見が知りたい。
私のログブックソフトウェアでは、すべて
sqliteファイルとして保存している。データを抽出する方法は、ここにまとめた投稿にある: https://jameshard.ing/posts/querying-logten-pilot-logbook-sql
Rehearsalは、SullyがEvanescenceを聴く場面など一部のクリップしか見ておらず、全体について論じるだけの根拠はない。ただ、パイロット間のコミュニケーションは本当に多くの時間と労力が割かれている分野だ(いわゆるCRM、Crew Resource Management)。
私の経験では、業界はこの点について実際に着実な改善を図っている。
元データの保存方法については、記事内で
LogTen Pro[1] を使っていると答えていた。SQLクエリに関する記事 にも、ログブックアプリはCSVエクスポートもサポートしているが、内部的にはSQLiteでデータを管理しているため、直接アクセスしてクエリできると書かれている。
[1] https://logten.com/
あの六角形はUberのH3ライブラリで実装されているのではないかと思う。
この可視化は、以前見た この古いYouTube動画 に似た印象がある。
本当に素晴らしい仕事で、細かな飛行ログを読むのがとても楽しかった。
距離や飛行時間だけでなく、役割の変化(P1、P2、PICUS)まで細かく記録している点が興味深かった。
SpinStepを開発している立場として、方向やベクトルの変化といった物理システムをクォータニオンベースのライブラリで計算しているので、こうした飛行ログが回転状態のモデリングと結び付けられるという着想を得た。たとえば航空機のヘディング変化は、クォータニオンに自然にマッピングできる。
役割の切り替え(P1↔P2)も、連続システム内の離散的な状態変化として見ることができる。
風や飛行ネットワークのパターン(環境的影響)も、時間経過に伴う外部場としてモデル化できる。
SpinStepをこういう形で使うことになるとは思わなかったが、このデータのおかげで新しい視点が得られた。参考リンク: https://github.com/VoxleOne/SpinStep/blob/main/README.md, https://github.com/VoxleOne/SpinStep/blob/main/docs/01-rationale.md
クォータニオンは3D回転に関する演算で有用な性質を持っているが、万能な解決策ではないと思う。
いろいろな分野に長けた人を見ると大きな刺激を受ける。
私もいつも本業以外で新しいことをやってみたいという夢があるので、いつか怠け心に打ち勝って挑戦する勇気を持ちたい。
興味のある分野は多すぎるが、別の業界へ完全に転職すると給料がかなり下がりそうで、現実的な選択は簡単ではない。
ビジュアルそのものが美しい。
地球儀と見事なアニメーションに加えて、ダッシュボードで集計統計を見せているのが印象的だった。
以前、ドイツのFrauenhoferやHelmholtzが提供していたサイトがあり、特定の飛行情報を入力すると総放射線被曝量を計算してくれた。
主に航空従事者向けのサービスで、ビジュアルは今ひとつだったが、累積被曝量をダッシュボードに追加できれば有用だと思う。
とても良いアイデアだと思う。
私が勤める航空会社でも月間・年間・生涯累積の放射線量は提供しているが、記録はそこまで細分化されていない。
どのような統計手法が可能か知っているなら聞いてみたい。
おおまかな航路(大圏距離)と飛行時間ごとの大気中放射線量を推定する形でアプローチできるのではないかと思う。
Nomadlistも以前はすべての旅行について放射線量を表示していて、その数値を見て本当に驚いた記憶がある。
私も似たような可視化を作ったことがあり、ADS-Bデータおよそ1500億ポイントを使っている。
adsb.exposed で見ることができる。
フィルタリングが直感的なので、どんな航空機タイプでもすぐに見られるし、全体としては2Dだが3D化も検討したことがある。
ちなみに、投稿者の地図はズームするとフレームレートが10未満になり、少し遅い。
技術的にどう実装しているのか気になるので、共有してもらえないか頼みたい。
航空路線の可視化ツールに興味があるなら、GCMapを勧めたい。
GCMapは、IATA空港コードが2つあればとにかく線を引けるし、複数ペアもURLパラメータで入れられる(例:
JFK-LHR,LHR-CDG,CDG-FRA)。基本的な利用例リンク
私も飛行記録をGCMapのURLとしてメールで送って管理している。
経路を複数ペア入れると、その結果はあまり見栄えが良くない。
Mollweide、Winkel Tripel、Robinsonのような投影法や地球儀表示にも対応してくれたらと思う。
驚くべき可視化で、各フライト記録に機能を追加する計画があるのか気になる。
たとえば、離着陸の難易度、乱気流の有無、経路など。
特に印象に残っているフライトはすべてテキストコメント(著名人の搭乗、家族、特別な状況など)として残しているが、プライバシーや可視化の限界のため一部は非公開にしている。
もっと多くの情報を集めるのが目標だが、記録のしやすさとのバランスを取るのはいつも難しい課題だ。
見ていて気持ちよく、共有してくれてありがたい。
ソフトウェアエンジニアリングの最大の魅力は、平凡な日常にもさまざまな形で応用できることだ。
自分自身の飛行キャリアを可視化するなんて本当に素晴らしい。
こういうプロジェクトをするといつも思い出すXKCDの漫画があるので、参考リンクを置いておく: https://xkcd.com/1205/
プロのパイロットでありながら、これほど完成度の高いソフトウェアプロジェクトまで作れるという点自体がすごいと感じる。
パイロットは9時5時の仕事ではないので、フライトの合間に時間がたくさんあることが多い。
空き時間にこうした趣味プロジェクトをやるのはまったく不思議ではなく、もちろん飛行中にやるわけではない。
パイロットは飛行中にノートPCで何かできるのだろうか。
たいていのフライトは着陸まで待機する時間があるので、プログラミングスキルを身につける余裕がありそうだ。
投稿者はUofTで計算機科学を専攻した。
このプロジェクトは製品化してみる価値があると思う。
パイロットがLinkedInアカウントと連携することもできるだろうし、家族や友人に見せるための格好いいポートフォリオにもなるはずだ。