解決策
Firefox OSにはアプリが必要だったが、新しいプラットフォームはどこも同じ参入問題に直面する。簡単な入り口がなければ開発者は集まらない。開発者たちはMozillaに対し、Webでのアプリ開発をどう始めればよいか分からないと語っていた。それは多種多様な提供元から多くのツールやテンプレートをダウンロードすることを意味していたからだ。従来の解決策なら、また別のダウンロード型IDEと、さらに多くのセットアップガイドを用意することになっただろう。
しかしMozillaは、対象の利用者がすでに開いていた一つのツール、すなわちブラウザを使った。WebIDEはFirefox Nightlyに同梱された。クリック一つで動作するテンプレートからプロジェクトが始まり、ランタイムを選べばFirefox OSシミュレーターがインストールされるか実機が接続され、Ctrl/Cmd+RでおなじみのDevToolsを接続したままアプリがそこで再読み込みされた。同梱のCodeMirrorエディターは意図的に任意扱いだった。APIによって外部エディターがWebIDEのランタイム管理を操作でき、ループ全体はオープンなFirefox Remote Debugging Protocolの上に載っており、Chrome for AndroidやSafari on iOS向けのアダプターも計画されていた。
この設計は参入に伴う二つの実質的なコストを取り除いた。初心者は午後いっぱいのセットアップではなくワンクリックで動作する雛形アプリを手に入れ、アプリマニフェストのバリデーターがマーケットプレイスへの提出前に問題を検出した。現役の開発者にとっては何も変わらなかった。内蔵エディターはオフにでき、vim、emacs、Sublimeのキーマップはabout:configで切り替えられた。Mozillaはブラウザにしかできないこと、すなわちランタイム、実機、リモートデバッグだけを保持し、それ以外は差し替え可能にした。
Hacker Newsでのローンチスレッドは489ポイント、151コメントを集め、この仕組みが受け入れられたことを示した。コメント投稿者たちはWebIDEを初心者にとって素晴らしい追加であり学校の役に立つだろうと評し、テーマ作者たちは数日のうちに対応を出荷し、ライブプレビューエディターの開発者はWebIDEが存在していたら自分のツールを作らなかったかもしれないと述べた。最も多かった反対意見は同梱に関するもので、チームは開かない限りこれらのツールが性能にほとんど影響しないと答えた。あるコメント投稿者はこう総括した。WebIDEは開発の参入障壁を下げた——SDKのダウンロードも、面倒な設定や署名も、新たに学ぶ言語もない、と。
達成したこと
ブラウザ自体をSDKにすること。インストール不要のスターターアプリ、そして開発者がエディターを変えずに済むオープンなプロトコル。
うまくいった理由
開発者がすでに持っているブラウザはインストール不要のツール群である。最初のアプリは午後いっぱいのダウンロードと設定ではなく、テンプレートからワンクリックで始められる。
エディターを任意にしたことで、経験豊富な開発者の乗り換えコストが取り除かれた。さもなければ彼らは新しいワークフローを強いるプラットフォームのツールを無視しただろう。
競合ブラウザ向けのアダプターを備えたオープンなRemote Debugging Protocolにより、その成果はFirefox OSの中に取り残されなかった。あらゆるツールがあらゆるランタイムに到達できた。
Firefoxへの同梱により、対象の利用者がすでにいる場所でツールが見つけられるようになり、ブラウザ自体がプラットフォームの売り込みとなった。
応用できること
エコシステムを育てるには、自分が掌握する製品の中で最初の一歩のコストをゼロまで下げ、そのうえでそれ以外のすべてを差し込み可能にして、既存のユーザーが自分のワークフローを保てるようにする。
その後
WebIDEは2014年6月23日にFirefox Nightlyに搭載され、Tools > Web Developer > App Managerに置かれ、次のビルドでは設定トグル越しにWebIDEへと改名された。Hacker Newsで489ポイント、151コメントを集めた。テーマ作者たちはテーマを更新し、ユーザーはvimやSublimeのキーマップを切り替え、あるコメント投稿者は自分のライブプレビューエディターを不要にしたかもしれないと述べた。批評家はブラウザの肥大化だと評したが、チームは開かない限りこれらのツールが性能にほとんど影響しないと述べた。MozillaはChrome for AndroidとSafari on iOS向けのプロトコルアダプターを計画し、コミュニティによるスターターテンプレートのさらなる提供を呼びかけた。
出典をたどる
出典
- WebIDE lands in Firefox Nightly Mozilla Hacks · hacks.mozilla.org ·
- Hacker News discussion: WebIDE lands in Firefox Nightly Hacker News · news.ycombinator.com ·