1. 悠长假期,带本什么书
这些天,不停地做梦编程序。有一次逻辑太难,我只好从梦里醒过来,睁着眼睛
看漆黑一片,窗外连隐约的路灯也都熄了。在清醒中解决了那几行,然后又沉沉
睡去。
昨天,十字路口很多人在烧纸,是过年的前奏。东一堆西一堆,火苗腾跃,旁边
的人不停翻动纸堆。
我突然想,如果我此刻挂了,该托家人给我烧本什么呢。长夜漫漫一定非常寂
莫,无书可读一定更加无聊。
出差的时候,我总是随身带本小册子,不沉,又不那么容易看完的。每次出差前
整理东西,选书总是要花不少时间。因此,很多年来,设计模式我读了好多遍,
直到有了kindle。
我见过向龙同学吃饭的时候拿出手机赶紧看两眼《大秦帝国》,那个时候秦始皇
已经出世了,估计现在他换另一本了。张科长同学前几个月在看的是《官场现形
记》,崔老师看《这才是春秋》。偶像提到过,去大连ACM的路上,我看《编译原
理》,现在也只看了四分之一左右。罗同学还提到过,她和韩老师在王府井逛商
场,我在门口看书,那本是什么我却不记得了,也许<UML Distilled>?
从烧纸的火堆路过,想,如果是漫长的旅程,只选一本,真得好好选选。我想到
了SICP,这本挺扛看的,第二遍还没有看完,还要很多细节要想。但是,不配几
本参考书,手头没有实验环境,非常不方便啊--毕竟,真的出差,还有机会回来
再做实验。
也想到了龙书。但这是会看完的,然后对于工程的启发,或者底层的程度,可能
也就有限度了。
然后我想到了《牛虻》,想到了《高卢战记》。
暗无天日,旷日持久,哪本书才适合漫长的相伴?
然后,一批书目从我心上掠过。太多了。好多书都难以割舍,只好继续活下去,
慢慢把它们看完吧。
2. 那些迭代的意义
读罗素《幸福之路》。他提到,有人认为人生的意义之虚无,因为不过是一代又
一代人登场然后又退场,阳光之下没有新鲜的事情。
这让我想起计算机程序设计中的迭代。
计算机最擅长的事情是 重复,一次次做相同或类似的动作。为了显得IT男们有
文化和品味,我们更乐意使用迭代这样的字眼来代替重复。就像小资们用波希米
亚代替吉普赛或捷克斯洛伐克,用HR代替人力资源。那样显得倍有面子。
说到重复,人类希望机器做的,自己却并不一定喜欢。想想《摩登时代》里的卓
别林,我们就知道为什么后现代们会提出"异化"这样的词。人类并不太适合或者
不喜欢一成不变地重复。
我们不喜欢变化,但是我们期待重复,它给我们安全感。每个人的心里是不是有
断背山我们不知道,但是每个人心里都有半拉雨人是差不了的。我们期待每天发
生相同的事情,坐同样的班车,遇到些相似的面孔,他们会做你预料到的行为。
这个月铁定会发这么多钱,项目也只能是大约这样的,出不了大格。
虽然很多人想做逃跑新娘啥的,想喷领导一口唾沫,想在地铁里遇到哥斯拉什么
的,那也只是想想而已,不然就不必有那么电影帮助大家YY这些无法实现的愿望
了。
重复的生活,不变的仪式,所给我们的安全感,与给雨人的感觉没什么差异。所
不同者,我们期待重复里有小小的不同。
起-承-转-合。起承,这些都差不多;转一下,生活中的变化;合,再重回到旧
有的轨道上,整体上又略有差异。
在迭代、重复、循环中,我们有三个部分需要处理。
C语言里一般这么写: for (i=0; i<10; ++i) {...}
(1)起始条件,就是 i=0。
这类似于数学归纳法中的 n=1 时等式成立。经典的求斐波那契数例的最开始,
如果用递归法,就是n0=1, n1=1。
我们的起始条件各有不同。具体的说,我们初生时根本就不在同一条起跑线上。
有些人A出生在好地方,另一些人B需要花费大半生才有资格在A出生的地方生存
下来,而A出生就具有这样的资格。很多时候,A认为,这是理所当然的。这个再
具体地说,北京出生的人认为自己留在北京是理所当然的,而外地人留下来就是
"我就不明白这些人怎么回事儿,非要到北京来";美国出生的人认为自己留在美
国是理所当然的,而其他国家,尤其是亚非拉的,那就是挣夺了他们高贵的工作
岗位。我们大概都是这个路子,属于我的,那一定是我的,别人谁也别想抢;至
于别人认为应该属于他们的,我们就想,靠,这太不公平了。
这基本是极坐标的思考方法,以我为中心。这世界上还有另一种坐标系,叫做迪
卡尔坐标系,我们可以回忆一下,虽然久违。
血统所造成的差异,可能持续终生。在人人网上刚刚读了某同学的贴子,我很悲
伤。贴子大意是某 (女?)同学抱怨男朋友如此小气,过不下去了。历数的事情
包括她花自己的钱唱歌请朋友们吃饭是不必经过男朋友批准的,因为那是自己的
钱;重申了房租不超过1/5都不算多,他们的房租仅1800。
文笔挺好,说得也都在理。凭啥你节省就不让我花钱。
后面还提到:男朋友的父母太节省了,买肉只有他的爸爸能吃,他的妈妈发的工
作服要穿十几年。
如果他的父母有你的父母的收入,还这么节省,几十年下来,该是多么富有啊。
叹气。
写到这里,想起小牛同学曾经说,"其实中国是没有阶级的。"我当时说,你当然
这么认为。或者这么希望。
(2)终止条件,就是 i<10。
有些人就是能活,没办法。最后把所有意见不同的都靠死了,自己就是老大了。
我的平生夙愿就是一直活下去,等你们全死了,给你们挨个立传,想写啥写啥。
如果只看起始和终止条件,每个人的一生都差不多。来到世界,经过一些事,然
后挂了。那人生还有什么意义?意义在下面。
(3)每轮迭代,就是++i及{...}里面的那些东西。
在函数式编程中,强调只得到返回值,而不希望在每轮迭代 (及整个计算过程中)对
环境有任何影响。凡是对环境的影响,称为副作用。
人生的意义,恰恰在于副作用,即你对于别人的帮助。
这样当你挂了的时候,就有人怀念你曾经的存在令世界有所不同;也许还有人给
你烧书看。
正是这些副作用,而不仅仅是求值的结果,让我们区别于外界环境这个纯粹物质
的世界。
其实,做工程和做练习也是一样的。能得到什么结果,挣多少钱,不过是副带的
一个结果而已,我们不必以这些来评判自己的价值。
徒步的人,如果只是为了结果,有那么多现代化交通工具可以选择;推哑铃的那
些,跑圈的那些,不过是一次次一次次推起来跑过去,又回去终点;做各种实
验,最终大体都扔到废纸堆里或者删除。
但是,这些过程,令我们从纯物质的世界里分离出来,成为人类--或者工程师。
我们所享受的,不是结果,而是过程本身的吸引。
想起了以前对建一同学说的:工程本身很重要,但是它远不如 你做工程很爽 重
要。
人生就像一个短促的假期,你从何而来,终止条件如何。在这期间,你发生了哪
些变化,你令世界发生了哪些变化。
假期开始了,你快乐么?
No comments:
Post a Comment