Even more ofen (at least in the commercial software world) excessive complexity comes from project requirements that are based on the marketing fad of the month rather than the reality of what customers want or software can actually deliver. Many a good design has been smothered under marketing's pile of "checklist features" -- features that, often, no customer will ever use. And a vicious circle operates; the competition thinks it has to compete with chrome by adding more chrome. Pretty soon, massive bloat is the industry standard and everyone is using huge, buggy programs not even their developers can love.
上面是来自The art of unix programming里的一段描述,有时我们常常说微软的坏话:"huge", "buggy",从而义无反顾地投向其它阵营,包括我在内,现在想想,也许是我们对所鄙视的对手的认识太浅薄了。虽然这段时间只是肤浅地接触了一些Office及一些服务器产品,但也对其功能有了进一步的了解,这是以前作为个人用户是无法体验的,"features that no customer will ever use" 这话虽然是代表了大多数情况,但也有些偏颇。现在看来,这也许就是软件的不同文化吧,套用哲学里的说法,世界是统一的,而世界又是多样的,一种文化要除掉另一种文化并不简单,存在则有其必然。
Sail on this course and take it when it comes.
评论