31 October 2015

有些事如果还不需要做,就先不要做。

我不确定用“懒人哲学”这个词表达上述意思是否合适,因为我没有搜到把这个词跟这个意思联系起来的资料。 姑且认为是我自己原创的吧。

“懒人哲学”英文是“lazy philosophy”(也姑且算是我的原创词吧)。这里的“lazy”我倒是在编程相关的技术文档中见过多次。 例如lazy loadinglazy initialization, 指得是不要一开始就加载资源或给变量分配内存,而是推迟到需要使用该资源或变量的时候。 这种延迟加载或延迟初始化的设计模式就是懒人哲学的例子。

技术方面的懒人哲学先就此打住。接下来说个我在生活中实施懒人哲学的例子。

例如,我要乘电梯上楼去8层,进电梯后发现6层有人要下,我就暂时不会去按8层的按钮,而是等到去6层的人出电梯时(后)才去按。 因为我知道电梯会在6层停下,到那时再按8层的按钮也不晚,在此之前没必要按。这个按钮如果还不需要按,就先不要按——这就是懒人哲学。

提前按8层至少会带来以下两个恶劣后果。首先,这个按钮的灯多亮了几秒钟,浪费电;其次,这样会向更多的人暴露我要去8层这件事。 前者涉及资源使用,后者涉及信息隐藏,这两个词是不是听上去很熟悉(尤其是对于懂编程的人)?

在电梯的运行中,多浪费这么一丁点儿的电几乎没啥影响,但在一些极端条件下,能源或资源的最优使用就意义重大了。 在平常的生活中,我去8层这件事几乎没人会在意,但在一些特殊情况下,信息被有心之人利用可能会导致灭顶之灾。

好吧,我承认我是在危言耸听了,明白意思就好。

懒人哲学的精髓在于有些事如果还不需要做,就先不要做。在实践中如何利用之,以及是否有益,请自行判断。