🐥

【ポエム】「ゼロ100思考」は技術選定を誤らせるのではないか

に公開

こんにちは、こんばんは、おはようございます。
tkdeveloperと申します。

今日は、最近SNSで見かけた投稿で思うところがあったので記事を書いてみました。

はじめに

SNSでは時折「ゼロ100思考」——物事を0か100かで極端に判断する考え方——に基づいた意見を見かけることがあります。

例えば、「スマホアプリはオワコン。これからはWebアプリだ」や「クロスプラットフォームよりネイティブアプリのほうが優れている」といった断定的な主張です。

これらの意見の背景には、以下のような理由があるようです。

  • 「スマホアプリの開発→ビルド→ストアにパブリッシュ→審査→リリースのサイクルが面倒。Webなら審査なしですぐ出せる」
  • 「ネイティブアプリのほうがパフォーマンスが高い」

確かにこれらの意見には、納得できる部分もあります。
しかし、「ゼロ100思考」の議論にどこまで意味があるのでしょうか。

それぞれの技術にはトレードオフがある

技術選定において重要なのは、「どちらが優れているか」ではなく「どちらがプロジェクトの要件に適しているか」という視点です。

スマホアプリ vs Webアプリ

観点 スマホアプリ Webアプリ
リリース速度 遅い(審査あり) 速い
ユーザー信頼 高い(ストア審査済み) 普通
ネイティブ機能 フル活用可能 制限あり
インストール 必要 不要
手数料 ストア手数料あり なし

どう選ぶか: 頻繁にA/Bテストを行いたいスタートアップならWebアプリが有利です。
継続的に使ってもらいたいサービスならスマホアプリが向いています。

ネイティブアプリ vs クロスプラットフォーム

観点 ネイティブ クロスプラットフォーム
パフォーマンス 最高 やや劣る場合あり
OS最新機能 すぐ対応可能 対応に時間がかかる
開発コスト 高い(各OS別) 低い(共通化可能)
コード管理 分散 一元化

どう選ぶか: 高パフォーマンスが必須のゲームやカメラアプリならネイティブが有利です。
シンプルなツール系アプリならクロスプラットフォームで十分勝負できます。

重要なのは「前提」と「要件」

前提を外して「どちらかが優れている」という議論は意味をなしません。

技術選定で本当に考えるべきことは以下の4つです。

  1. ビジネス要件:リリースまでの期間、予算、収益モデルなど
  2. ユーザー要件:どんな体験を提供したいか、どんなデバイスで使われるか
  3. 技術的制約:チームのスキルセット、既存システムとの連携など
  4. 将来の拡張性:機能追加や他プラットフォームへの展開の可能性

これらを総合的に判断してこそ、最適な技術選定ができます。

まとめ

「ゼロ100思考」は、SNSでは注目を集めやすいですが、すべての技術にはメリットとデメリットがあり、それらを理解した上で、プロジェクトの要件に最適な選択をすることが重要です。

技術選定を行う際は、「この技術は優れているか?」ではなく「この要件に対して、この技術は適切か?」と問いかけることが大切なのではないでしょうか。

Discussion