产品沉思录 产品沉思录 产品沉思录 产品沉思录
软件工具设计的一种哲学

软件工具设计的一种哲学

工具的设计者和使用者之间的理解差异影响工具的使用效果。设计哲学分为两派:瑞士军刀,专注于特定领域并需领域知识,具有复杂功能和插件系统;工具链,通过通用协议实现工具间的配合,缺乏统一接口。

本篇内容的作者徐宥是 AI 方向的创业者,目前在做 ai.codes,此前任职于 Fitbit (领导机器学习团队) 和 Google (广告和无人驾驶) ,华盛顿大学人工智能博士,南京大学数学学士。

工具的设计者和使用者

工具的设计者通常会预测此工具会被用来解决怎样的问题,工具的使用者则根据所面临的问题选择合适的工具。

理想情况下,设计者和使用者对问题的理解 是类似或者重叠的,完全相互理解。

现实情况下

有时候,使用者能够将工具用到远超出设计者想象的地步。

有时候,设计者是解决问题的专家,使用者则没有能够完全体验到工具的强大,需要学习。

本篇主要探讨,通过工具的设计者和使用者的视角观察工具以及讨论工具背后的设计哲学和对应的学习曲线。概括性的提出软件设计工具的这些基本分为2派:瑞士军刀和工具链。

瑞士军刀

这也是一种借鉴了现实世界中工具的类比类型的设计哲学。

我们所熟知的 photoshop、figma、airtable、spss等都属于这个流派。

瑞士军刀以方便著称,一把军刀包含了很多小部件,配合使用能够解决很多野外生存问题。

他核心有 4 大特点

看到这个部分,想起来日本传统相机工艺的最后一次巅峰,将当时最先进的工艺,最复杂的技术内化到一个很小巧方正的金属盒子之中:拆解ConTax T3

工具链

工具链没有军刀这样统一的对外接口,而是靠通用的协议来达到工具的配合使用。

这里面最经典,可能就是我们经常见到的邮件协议、RSS 协议等等,这些基于共同规则的工具设计。

来源:软件工具的设计哲学1答 UNIX 痛恨者王垠