哲学虽然听起来很深奥,但换种提法(如方法论、原则、理念……)可能就很容易被理解了。不过,这里请允许我还是使用哲学这个词,因为“UNIX的哲学”本身就是一个固定搭配了。大家如有兴趣,可以在海内外网站中以这个词为关键词搜索到无数的内容和意见。UNIX的哲学有很多个衍生版本,和效率这个话题有关的大概有3条。
1. 一个应用尽可能只关注一个目标。
2. 尽可能让多个应用互相协调、组合。
3. 一切皆文件。
在介绍我坚信的UNIX的哲学之前,我想诚实地告诉大家自己是怎么发现UNIX的哲学的。我并不是一个传统的UNIX的用户,我除了在上大学时听说过UNIX这个名字,之后在工作中与它几乎再无交集。我一度以为UNIX就像历史书上一个不重要人物的名字一样,也许值得一提,但不必深究。我也不喜欢传统的UNIX的非图形化交互方式,因为这需要我记住很多命令、参数、命令和命令的组合、命令和参数的组合……让人使用UNIX感觉就像是参加一个神秘的仪式。
我了解到UNIX的哲学,并不是因为“UNIX”这个关键词,而是因为“哲学”这个关键词。
出于职业习惯,我使用过很多效率工具,其中部分是帮助企业设计、改善工作流程的。随着使用的工具越来越多,对企业需求的了解也越来越深,我发现了一些规律,如很多缺乏相关经验却坚持要上“大而全”系统的企业后来都不能得到想要的理想效果。起初,我并没有把这些规律上升到哲学层面,但是随着积累,我觉得这些现象、规律隐约和人们提到的一些理念(如小而美、专注做好一件事、目标导向等)有着微妙的联系。如果再深入一些,当我把这些规律归纳到一起时,“UNIX的哲学”这个搭配就自然而然地浮出水面了。这时候我才记起了UNIX这个名字。
UNIX诞生和发展的早期正处于20世纪60年代至80年代,由于当时反越战运动风起云涌、嬉皮士文化的流行、自由至上主义的发展等原因,崇尚自由的理念一直贯穿在UNIX的哲学中。
这时,我觉得自己一直“折腾”的很多事情(如各式各样的效率工具)是在舍本逐末。我们可能是想获得某种程度的“自由”,但最终被各种工具所束缚。我们究竟是被自己的“哲学”所指引?还是被一些工具的“宣传语”所吸引?或者仅仅为了跟上某种“流行趋势”?
例如,我一度很迷恋GTD工具,然而如果不需要深度分解任务,或没有很强烈的协作需求,很多时候手机自带的免费的提醒功能或便签功能就已经可以满足需求了。通俗来说,买一盒牛奶这种事情不值得我们为之匹配复杂的工具,复杂的工具反而会限制我们的自由。
带着这种想法,我开始重新审视这个诞生于20世纪的UNIX的哲学是如何启发我们的。