解法
火狐 OS 需要应用,而每个新平台都面临同样的入门问题:没有轻松的入口就没有开发者。开发者告诉 Mozilla,他们不确定如何开始 Web 应用开发,因为这意味着要从各种来源下载许多不同的工具和模板。常规的做法是再提供一个可下载的 IDE 和更多的安装指南。
Mozilla 转而利用受众已经打开的那个工具——浏览器。WebIDE 随 Firefox Nightly 一同发布:一次点击即可从一个可用的模板创建项目,选择运行时即安装火狐 OS 模拟器或连接设备,Ctrl/Cmd+R 就在那里重新加载应用,并附上熟悉的开发者工具。内置的 CodeMirror 编辑器特意设计为可选用:一个 API 允许任何外部编辑器驱动 WebIDE 的运行时管理,整个循环都基于开放的 Firefox 远程调试协议,并计划为 Chrome for Android 和 Safari on iOS 提供适配器。
这种设计消除了两个真正的入门成本。新手只需一次点击就能得到一个可运行的应用蓝图,而不是花一下午配置,应用清单验证器会在提交到应用市场前就发现问题。经验丰富的开发者无需改变任何东西:可以关闭内置编辑器,并通过 about:config 切换 vim、emacs 或 Sublime 的键位。Mozilla 只保留了浏览器独有的能力——运行时、设备、远程调试——而把其余部分替换成可替换的方案。
Hacker News 上的发布帖——489 分,151 条评论——显示出该机制已经落地。评论者称 WebIDE 对新手来说是极好的补充,有助于教学;主题作者几天内就推出了支持;某实时预览编辑器的开发者说,如果 WebIDE 当时已经存在,他可能就不会构建自己的工具。最响亮的反对意见是关于捆绑,而团队回应说这些工具如果不打开几乎不影响性能。一位评论者总结道:WebIDE 降低了开发的入门门槛——无需下载 SDK,无需繁琐的配置或签名,无需学习新语言。
What it achieved
让浏览器本身成为 SDK:零安装的示例应用,以及一个开放协议,让开发者无需更换编辑器
为什么有效
开发者已经拥有的浏览器就是零安装的工具:第一个应用只需一键从模板创建,而不是一下午下载和配置。
让编辑器可选消除了经验丰富的开发者的切换成本,否则他们会忽略那些强迫新工作流程的平台工具。
带有竞争浏览器适配器的开放远程调试协议意味着工作不限于火狐 OS——任何工具都能访问任何运行时。
捆绑到 Firefox 使工具在目标受众所在之处被发现,将浏览器本身变成了平台的吸引力。
可以借鉴什么
为了发展生态,把第一步的成本在你控制的产品中降到零,然后让其余部分可插拔,以便老用户保留工作流程。
后续
WebIDE 于 2014 年 6 月 23 日随 Firefox Nightly 发布,位于工具 > Web 开发者 > 应用管理器下,下一个版本改名为 WebIDE,并带有偏好开关。它在 Hacker News 上获得了 489 分和 151 条评论:主题作者更新了主题,用户切换 vim 或 Sublime 键位,一位评论者称它可能已经使他的实时预览编辑器变得多余。评论家称其为浏览器膨胀;团队表示这些工具除非打开,否则几乎不影响性能。Mozilla 计划为 Chrome for Android 和 Safari on iOS 提供协议适配器,并邀请更多社区示例模板。
从这里,追溯依据
参考来源
- WebIDE lands in Firefox Nightly hacks.mozilla.org
- Hacker News discussion: WebIDE lands in Firefox Nightly news.ycombinator.com