Bad Smell

国庆七天假,为了回家,我于万军丛中抢到了回家的高铁票,终于踏上了回乡之路。在家里没网上,除了带小孩以外,我还阅读完了一本关于Emacs Lisp的书
《Writing GNU Emacs Extensions》。该书内容有些地方过时了,不过对于编写Emacs扩展和学习Lisp还是有帮助的。

另外,还整了一下Tizen平台的Cocos2D-X游戏移植,因为没网络,再加上我之前完全没接触过Tizen,进展比较慢。

A Small Story

由于一年难得回家几趟,爸妈特意熏了一些腊肉和腊鱼给我带到厦门来吃。虽然在厦门这边也能买到,但是,这毕竟是家乡的味道。在回厦门之前,我先去了长沙(我岳母娘家),
一来是看望,二来也是因为高铁票起点是长沙,顺路嘛。
刚一进门,老丈人就抢着要抱外孙,刚接过手就惊呼,“你们是不是喂了辰坨(我儿子乳名)吃鱼啊,好臭啊!”“没有啊!”我和老婆一起答到。后面证实确实不是我儿子的嘴巴臭,而是我提进来的一袋核桃袋子上面
散发出来的味道。于是,我们把那袋核桃拿到房间外面了,慢慢的,臭气也就没了。

第二天,我们坐了7个小时的车来到了厦门。回到厦门后,发生了一件让我老婆抓狂的事。我们带过来的腊鱼长蛆虫了,爬满了一袋子,奇臭无比!这正是那天我们闻到的臭气,但是当时没有想到这一层。
(当时核桃袋子和鱼也挨着,后面分开了)

明明是腊鱼,为什么还会长蛆虫呢?真正的原因是因为腊鱼其中有几块没有晒干,有水分。然后在高温天气下面特别容易腐坏,那天在我老丈人家的时候,这些鱼其实已经是开始腐坏了,只是我们没有察觉。

辛苦辛苦制作的腊鱼和腊肉只能全部丢到垃圾桶里去了,怪挺可惜的。明明只有一两块鱼腐坏了,腊肉是完全ok的。但是由于腊鱼和腊肉放在一个袋子里面,一粒老鼠屎,坏了一锅汤,最终也只能
全部丢掉。

An Useful Lesson

这本来是一件很小的事情,但却引发了我内心的一些思考。

我们生活和工作中何尝不是到处充满了这样那样的坏味道呢。如果不及时反应并采取有效措施,立马就会产生很严重的质变后果。我们的身体,我们写的代码,生活上的琐事,都是如此。

当身体里面向大脑发出一些“坏味道”时,比如头晕啦,眼睛疼啦。别看这样事小, 忍忍就过去了。但是假以时日,可能就会产生很严重的后果。近年来,IT行业频繁曝出过劳死的新闻,也就是程序们长期透支自己的身体,无视身体传达给我的“坏味道”,最终酿成了悲剧。

我们写的代码里面也经常有这样或那样的坏味道。比如糟糕的命名,无比复杂的逻辑等等。如果堆积非常多以外,我们的程序就会变得很不稳定,Bug到处飞。

如果你的房间不经常收拾,过不了多久就会乱成一团。如果做菜的厨具不经常清理,过不少多久就会长满油污。刚吃过的饭的碗不洗,过两天想洗干净就非常困难。

正所谓,“流水不腐,户枢不蠹”,老祖宗的智慧太伟大了!

而我发现,优秀的程序员往往都是有“代码洁癖”的,而且他们擅长发现代码里面的坏味道,并且一旦发现,便会想尽一切办法消除之。因为软件也是很容易腐烂的,“破窗户”往往会成为大家放肆的理由。

另外,你的代码写得再好,如果有一个很严重的Bug,那么它立马会变得很不值钱了。如果你在使用一个软件,突然一下,它奔溃了,你对它的印象肯定会非常坏,甚至以后都不想用它了。

Conclusion

通过这件小事,我学到了以下三件事:

  1. 做事必须认真细心,千里堤坝,溃于蚁穴。

  2. 透过表面看本质,善于察觉坏味道,防患于未然。

  3. 重视细节,细节决定成败。