- URL: http://scripting.com/2017/05/09/rulesForStandardsmakers.html
- Added At: 2026-04-30 14:01:38
- Tags: #read
本文是Dave Winer为标准制定者撰写的宣言,总结了开放格式与协议的经验原则,核心强调互操作性至上、保持简单、避免破坏性变更等15条准则,旨在促进软件自由迁移与用户主导。
本文是软件开发者Dave Winer为标准制定者撰写的宣言,总结了他在创建开放格式与协议过程中的经验与原则。核心内容如下:
- 互操作性至上:开放格式与协议的唯一目的是实现软件互操作,使用户能自由迁移,避免锁定,这是标准工作的基础。
- 平衡取舍:标准工作中少有绝对规则,需灵活思考并权衡。
- 软件优先于格式:应先开发软件,再设计格式,而非反之。
- 用户比软件更重要:互操作的价值在于吸引用户,没有用户则互操作无意义。
- 单一方案优于多方案:即使新方案更好,也需支持旧方案,避免分裂。
- 减少格式与特性:能合并格式则合并,减少复杂性;添加新特性前需确认是否已存在,以最大化互操作。
- 避免完美主义:命名等细节不重要,应聚焦关键问题,尤其考虑非英语用户。
- 用平实英语撰写规范:规范应面向人类读者,解释原理并提供示例。
- 规范随实践调整:若实践与规范偏离,应修改规范(如RSS 0.91)。
- 禁止破坏性变更:版本更新需保持向后兼容,不破坏现有用户基础。
- 冻结规范:当创新放缓时冻结规范,但提供扩展机制,为开发者提供稳定基础。
- 保持简单:避免无法完全支持的开放格式,如XML-RPC比SOAP更易实现互操作。
- 提供开发工具:为流行语言提供工具包,用代码辅助规范理解。
- 邮件列表与会议不具权威:讨论互操作的邮件列表或会议参与者无权决定世界标准。
- 赞扬促进互操作的开发者:如Slack主动降低迁移门槛,体现了以产品优势而非锁定留住用户的理念。
最后,作者感谢读者,并提供了反馈渠道和演示版本。