我曾经说过,程序员不是一般的人,是具有某种超能里的人。但问题是,程序员往往意识不到自己的这种特异功能,在他们的眼里,会认为自己很普通,跟常人一样,所以,程序员能做到的事情,其他人——比如他们的客户/软件用户——也应该很容易做到。但事实上,由于大部分人——绝大部分人(包括软件开发公司的客户/购买软件的用户)——都是电脑小白(对电脑知识/计算机知识/软件知识知之甚少的人)。
这说的是,如果你想有朝一日成为一个大公司,你必然的需要做出什么东西,而且它是那么的好,以至于人们会推荐给他们的朋友——事实上,好到他们想成为把这种溢于言表的好感觉推荐给他们的朋友的第一人。
问“如果两个程序都这样做会怎样?”也是一种非常有用的甄别一个功能特征或设计想法是否合理的好方法。配合“设想如果可以这样”,它们能成为一个漂亮的组合拳。下面是几个例子:
在我看来,每一次调整,背后总有足够合理的原因。然而,人们就是抱怨。而且这些Gnome爱好者会写博客,在bugtrackers里添加评论,在邮件列表里表明他们的反对理由。人们总是抱怨。
我们这些软件开发人员待遇好,名声在外,智力超群;所有这些特征跟一个管家的特征完全相反;这就是为什么我们如此容易就忘了——其实我们的软件所做的事正像一个管家。