それはアプリでなくてもウェブページでよかった、というお話
「完全とは、これ以上付け加えるべきものがなくなったときではなく、これ以上取り去るべきものがなくなったときをいう」というアントワーヌ・ド・サン=テグジュペリの言葉があります。
これはデザインやエンジニアリングの本質を突いた箴言ですが、つい先日、この言葉を思い出すような出来事が海外の技術者の間で話題になりました。
『Your 'app' could have been a webpage (so I fixed it for you)』と題されたブログ投稿です。
筆者もこの話を読んで、現代のアプリ文化について考えさせられました。
なぜ本来 web ページで十分なものが、わざわざアプリとして提供されるのか。
その背景と技術的な仕組み、そして私たちが学べることを紐解いてみましょう。
アプリがウェブページでよかった話
イギリスの技術者 Dan Q 氏は、子どもが参加する舞台の旅行行程を確認するために、旅行会社のアプリのインストールを求められました。
しかし中身はテキストと画像、PDFリンクだけ。
しかも追跡広告付き。
これに腹を立てた氏は、アプリの通信を解析し、そのデータを元にごくシンプルな web ページを作り直したのです。
解析の手法:アプリの中身を覗く
Dan Q 氏は Android のエミュレータを使い、root 化して証明書ピンニングを回避、HTTPS 通信を HTTP Toolkit で傍受しました。
すると、アプリはユーザ名とパスワードを連結し、特定の URL にリクエストして JSON データを取得しているだけだと判明。
その JSON には旅程と広告が含まれていました。
Dan Q 氏が行った解析は、特別なスキルというより、基本的なネットワーク知識があれば再現できるものです。
アプリの通信は HTTPS で暗号化されていますが、端末を root 化すれば中間者攻撃を仕掛けて中身を見られます。
その結果、アプリが内部で HTML を使っていることも多く、まさに「web ページでよかった」と叫びたくなるわけです。
なぜアプリ化されるのか
本来、情報を見せるだけなら web ページの方が軽量で、ブックマークや検索、コピー&ペーストもしやすい。
それなのに、わざわざ 124MB もの容量を食うアプリを配布する理由は、広告とトラッキングのためです。
ユーザにとっては迷惑でしかない「おまけ機能」のために、体験が犠牲になっているのです。
技術の進化と逆行するアプリ文化
Web はかつて、静的な文書の共有から始まりました。
やがて動的になり、アプリのような機能を実現できるようになりました。
HTML と CSS、JavaScript の進化により、かつて専用アプリでしかできなかった表現が可能になっています。
Progressive Web Apps(PWA)の登場で、オフライン対応やプッシュ通知も可能に。
端末のホーム画面にアイコンを追加し、あたかもアプリのように振る舞わせることもできます。
なのに、多くの企業はわざわざネイティブアプリを選ぶ。
開発コストもストアへの登録料もかかるのに、です。
これはまるで、軽量で開かれた標準技術があるのに、わざわざ重くて閉じた仕組みを選んでいるようなもの。
Dan Q 氏の行動は、その歪みを浮き彫りにしました。
私たちが学べること
こうした事例は、技術者としての本質的な問いを投げかけます。
私たちは機能を足すことばかり考えがちですが、本当に必要なのは「引く」こと。
アプリである必然性がないなら、潔く web で提供する。
その選択が、結果として多くの人の手に情報を届けることにつながるのです。
もちろん、高度なセンサーを使うアプリなど、ネイティブでなければならない場面もあるでしょう。
けれど、ただの情報表示なら、まずは web ページで考えてみる。
こんな風に立ち止まれる技術者が増えたら、もう少し軽やかなデジタル世界が広がるかもしれませんね。