开发者 Paul Ford 通过推出 TinyLittleOffice 展示了现代 Web 基础设施的威力。这是一个基于 Web 的办公套件,吸引了数十万访客,并证明了浏览器可以在极低开销的情况下托管复杂应用程序。通过利用一系列一流的 API,Ford 展示了获取高性能软件能力的成本正在降低,这使得个人开发者能够绕过传统的工业壁垒。

浏览器能力的演变

现代 Web 浏览器已从显示文档的工具转变为运行复杂应用程序的强大平台。这一转变得到了一系列一流 API 的支持,包括用于安全性的 Web Crypto API、用于原生速度代码执行的 WebAssembly,以及用于高质量图形的 WebGL。

这些技术允许实现复杂的体验,例如多人 3D 游戏 Battle Drones,它可以在浏览器中运行并支持离线功能。这些能力使开发者能够构建处理音频混音、3D 渲染和安全数据处理的软件,而无需专门的原生环境。

Battle Drones 游戏的航拍截图,显示绿色的陆地以及蓝色和灰色的结构。
多人 3D 游戏 Battle Drones 的截图,该游戏可直接在 Web 浏览器中运行。ftrain.com

这张图片展示了作为复杂浏览器端体验示例提到的多人 3D 游戏 Battle Drones。

“Web 浏览器是极其、极其、极其强大的应用程序软件,而且获取这种能力的成本似乎每天都在降低。”

— The Web Is More Than Enough, by Paul Ford

降低准入门槛

软件格局的一个重大变化是获取这些强大工具的成本正在降低。Ford 指出,构建基于 Web 的套件所需的精力明显少于传统开发方法,而且在针对低成本优化时,往往能实现近乎零的托管成本。

这种开发的民主化意味着,曾经需要庞大团队和基础设施的大型工业流程,现在可以成为个人项目。个人可以通过 Web 服务器直接测试和分发创意,通过消除支付高额平台税的需求,可能动摇“应用商店经济”。

权衡与技术复杂性

尽管成本在降低,但 Web 能力的广度也带来了一系列新的挑战。由于这些 API 通常是为 Google 等公司的庞大团队构建的,它们极其庞大;掌握一个领域(如 Web Audio)可能不足以让人在同时掌握 WebAssembly 或 WebGL 时变得精通。

主要的权衡是有效利用这些“巨型库”所需的知识深度。虽然 Web 平台足以托管几乎任何应用程序,但底层技术的复杂性对于那些试图独自构建真正卓越、高性能软件的人来说仍然是一个障碍。

Hacker News 读者的反应

  • 替代方案: 一位评论者分享了他们使用 WebAssembly 和 WebAudio 等技术构建复杂功能的个人经验,指出利用这些工具的便利性已显著提高。 评论 ↗
  • 质疑: 另一位用户对现代 Web 开发是否像 Visual Basic 等旧工具那样简单表示怀疑,认为 AI 在简化 UI 生成方面的作用是一个普遍趋势,而非 Web 特有的现象。 评论 ↗
  • 质疑: 评论者指出,另一种观点认为,Web 作为主要应用平台的承诺随着时间的推移变得越来越难以实现。 评论 ↗

以上为 Hacker News 讨论中观点的摘要,并非经过核实的事实。 阅读完整讨论 ↗