软件是一门手艺
我认为每个应用程序都是独一无二的,软件的创造与工艺的关系比任何其他工业过程都要大。从我的角度来看,创建一个应用程序更像是创建一部电影,而不是创建一辆汽车,因为每一部电影都有自己的问题和解决方案。
用户很多时候不知道自己想要什么
很多时候,人们不知道他们想要什么,直到你给他们看。史蒂夫·乔布斯。
一个人或一群人对某一特定主题的视野是有限的。基于这种愿景构建的东西可能会导致灾难。最好先构建一个原型,然后作为一个迭代过程修改这个原型,而不是先获取必要条件,然后基于这个必要条件构建一个完整的解决方案。
源代码是唯一更新的文档
我这辈子从没见过会撒谎的源代码。我这辈子都没见过更新的分析报告。
简单点,笨蛋
- 避免复杂的用户界面
- 避免应用程序由用户决定的情况,或者不通知用户的活动
- 避免应用程序强加不合理的业务规则(强制引入电话号码可能导致数据库中出现“9999999999”这样的数字)。更好的做法是让用户做出正确的决定,并为自己的行为承担后果。