2008/5

舍不得离开西安

我喜欢西安,喜欢这里的文化,喜欢这里的小吃,喜欢这里的风景。这里没有上海北京那种快节奏,却有深厚的历史气息。这里虽然没有迷人的风景,却有独特的文化底蕴。更重要的是,这里有很多其它地方找不到的特色小吃。

我喜欢西安,因为这里有我那么多朋友,同学,和老师。大家从全国各地而来,在一起共同生活了四年,一起笑过,哭过,甚至吵过。相聚本来就不容易,而现在就要匆忙分开。虽然我一再告诉自己“天下没有不散的宴席”,可仍然按捺不住心里的难过。

临走之前,几个兄弟还去火车站送我,进站前还和大家很平静地一一握手道别。等坐在火车上后,才觉得自己好像突然间失去了什么,很想哭。给朋友发短信说我真的舍不得离开西安,她说让我别哭,她说得对,其实那时候我差点儿就哭出来了。想想这四年到了最后才彻底明白了朋友们是那么那么可贵,后悔不已……

好想回去再躺到床上和舍友们卧谈到深夜,好想回去再和兄弟们喝杯酒叙叙旧,好想回去再去张老师家吃顿饺子,好想回去再和Dr. Chen坐下聊聊天……可惜,分别只有一次,它也只能一次。

再见,西安,我一定会再回去的!再见,兄弟们,我们一定会再见的!

幸遇RMS大叔

我这个人,总是很幸运。瞧,这一次又是。

28号那天,本来的打算是:上午去Dr. Chen家蹭饭,下午和宿舍的人再去吃一次泡馍,晚上就坐车走了。可上午刚到了她家还没坐稳,就接到电话说RMS下午真的要来了!!天啊,当时我听了都有些不知道该做什么好了。你应该可以理解我的心情,你想想,平时咱天天用gcc,时时用emacs,偶尔也离不开gdb,然后突然有一天有人告诉你,今天你能见到写过这三个NB软件的那个牛人了!你会有啥感觉?用时髦的话说是:被雷到了。

又何况RMS大叔的功绩远不只如此呢。我到现在还清晰地记得当年韩老师给我们上专业英语时讲RMS写的《Why Software Should Not Have Owners》,不仅文章逻辑清晰,措词精当,就连韩老师讲起来也是颇有激情。这篇文章对我影响很大,虽然我早在那之前就不使用Window$了。从这里也可以看出,RMS大叔的文字功底是相当深厚!

而我马上就可以见到这个传说中的人了!!

打电话通知韩老师这个消息,没人接。中午时收到老师的短信,他还以为是毕设的事情,我告诉他是RMS要来了!结果韩老师马上就打电话和我确认,并答应一定会去,而且说还要找人去录像。

中午吃饭时我都在想,见了RMS该说些什么好啊,问些什么问题,万一英语糗了咋办呢……本来想拉着Dr. Chen去当翻译,结果拉了半天她就是不去,还让我给带个签名……

吃完饭待了一小会儿就马上回学校了,准备好接待RMS一行。那天中午很热,我一路奔波到宿舍,满头大汗,收拾好了晚上走时要带的东西就去实验室了。刚进去孔建军就告诉我RMS到了,下去接一下。正好公子也在。

远远望去就看到徐继哲和几个外国人站在一起,因为大胡子的原因,RMS大叔很容易认出,他站在中间,穿着显眼的红色上衣。过去和徐继哲打了招呼,然后我们就和RMS大叔一一握手。大叔还戴着眼镜,看起来很是慈祥。原来,当牛人走进现实的时候竟然都是如此亲切!之前在网上看到说RMS大叔这次来还带着他“网上征婚”征到的女朋友,不用说了,跟着的那个金发女郎就是了!网上说她是意大利人,看起来确实很像,而且后来听她说英语也确实是很有欧洲味。

带着他们一路走向实验室,路上徐告诉我们RMS怕热,最好找个有空调的房间。因为我们实验室没有空调,我想马上去找韩老师换个地方,可韩老师不在。到了实验室才发现原来他已经到了!这时候实验室里已经挤满了人。而且系里还来了其他老师。

RMS一行和系里的老师们互相介绍了以后就马上换了地方,换到了隔壁有空调的实验室。RMS坐稳后就准备开始演讲,他做的第一个准备恐怕就是脱鞋(-_-b 虽然听说了大叔演讲时有此举,但仍然被雷到了)。然后他就问如果他用英语讲我们有多少人能听懂,听懂的举手。看到大多数人都举起了手,他就开始滔滔不绝地讲自由软件乐~!RMS大叔的英语很简单易懂,至少我是90%以上都听得很明白。大概是平时讲得太多了,他讲话连草稿都不用打的,而且讲起来甚是连贯清晰,听他用的那些连词就听得出来,超级佩服地说!讲的过程中他还把袜子给脱了,而且边讲还边若无旁人似的挠痒,记得到最后时干脆拿出两个类似药膏时的东西往脚上抹。天呐,这下子被彻底雷晕了!旁边好多人都看傻了,看来都被RMS雷了很大一下子!

这大概就是我们和美国人的文化差异吧!按我们的思维,RMS身为{从RMS的一堆荣誉中任意填入一项},怎么这么不顾个人形象呢!可RMS自己不这么想,他大概觉得这样才能把更好地把他“自由”的思想表达出来。而且RMS在讲的过程中还不忘使劲批自己的gov,光“U.S. government is evil”我就听得至少两遍。瞧,美国太不河蟹啦!美国人民不信任自己的gov已经成主流了!:-)

讲完之后,韩老师和RMS交流了一下,老师还拿出他写的专业英语课本来,告诉RMS书中有他的文章,他每年都会给学生讲授。RMS听了很高兴,说大学里有老师宣传自由软件很好,而且应该有更多的人去宣传。

接下来是学生提问,公子问的问题很有意思,说律师可以为自由软件做些什么。当RMS听到“lawyer”一词时竟然还作出了痛心疾首状,看来美国人好像都不怎么喜欢律师。公子的第二个问题也很好,问他怎么看待国内人们都是直接下载盗版软件去用?RMS回答太搞笑了,说用盗版也总比去买他们的正版强!当时全场热烈掌声!

后来我也趁机问了大叔三个问题,都是临时想的。问问题之前我想着先好好谢谢大叔,要是没有大叔,俺现在也用不上这么好的自由软件,俺更不会找到一个这么好的一份工作。大叔却说我实在是太客气了(“You are too welcome.”)。其实没有啊,这些话都是发自肺腑的。;-)

我的第一个问题是:What is the biggest difficulty you met when you start free software from 1983 to now? 大叔说这个问题很难回答,每个时期都有不同的困难,还举了一些例子,最后又谈到了当下我们面临的一些困难。其实我本来是想问问大叔是如何克服这些困难的,学学大牛们的奋斗史。只怪自己英语不好,一激动没表达清楚。不过自我安慰一下,这个问题也不赖。:^)

第二个:What do you think about Microsoft? 本来想听大叔狠批一下M$,没想到大叔回答相当简洁,说它只是一个专有软件公司,仅此而已。然后又讲专有软件公司云云。这大概就是从战略上藐视M$?本来想插一句说M$是最大的一个,可始终没找到合适的机会,算了。

最后一个:What do you think about Linus Torvalds? I know he insists using GPLv2 instead of GPLv3。 大叔回答说Torvalds不关心自由,而被open source所吸引。内核里有不自由的firmware的代码,而Torvalds并不在意。FSF有修改后的完全自由的内核代码,可以在FSF directory上看到。

后来又有一些人继续提问,问题记不太清了,因为他们说英语时都是断断续续的,记得还有个人干脆来了个中英结合——“but 如果”,全场哄笑。由此可见我们的四六级是多么失败!多么害人不浅!!

不能不提一下RMS大叔的女朋友,和一起来的Akira Urushibata。RMS大叔的女朋友很体贴,她经常说Richard怎么怎么,让我们把更多关心放在Richard身上,虽然已经很多了!有这么个贴心的女朋友,真为RMS大叔感到高兴啊!(八卦一下,不知道他们何时结婚?)Akira 很好学,我们的实验楼的走廊里挂着很多“名人名言”,Akira 经常对着上面的汉字研究,还时不时地问我们一些汉字的意思。他还带着一个笔记本,随手记一些,写一些汉字。令人佩服的说。

时间过得很快,很快RMS就已经讲完了。结束后韩老师和我们商量是不是要为RMS准备住宿,因为徐和RMS已经到西安好几天了,所以不需要。于是我们就商量着请RMS大叔一行吃饭。吃饭的地方很远,在明德门那边,得打的过去。出来时跟出来很多人,很可惜不能让大家都去,最后我和小组里几个比较活跃的同学去了。

去了之后RMS大叔正在研究菜谱,据说他有喜欢点菜的习惯,而且他不爱吃辣。从他的话中可以看出,他喜欢中国的茶和面条。在吃“醋粉”时他还问起这道菜的名字,然后还问它是怎么做的。这让我们很难回答,因为得用英语解释!经过这我才深刻体会到,原来翻译中国菜的菜名是那么地难!大叔用筷子用得不错,赞一个,他还用筷子夹面(陕西的面很宽)。相比之下他女朋友就有点儿逊色了,本想给她换个叉子,无奈饭店里没有,于是旁边的陈老师帮她夹了很多。再后来徐要了米饭时,她也要了一碗。然后吃着吃着大叔让她分给他一些。这个画面很温馨,应该拍下来的,可惜当时没人想起来!

因为赶火车的缘故,我不得不和大家提前道别了,临走时RMS大叔正好在摆弄他的OLPC,看来大叔又有新“玩具”了。希望RMS大叔在中国玩得开心! :-)

能和RMS这么近距离的交流真是人生的幸运!

回到学校

到西安三天了,见到很多同学和老师,很高兴。

晚上吃饭时和宿舍的人出去卖书,以前看别人卖书,这次终于轮到我们啦!虽然说是去卖书,但其实在那里更多是和班里的那几个女生坐一起聊天,顺便卖卖书。“三个女人一台戏”,这话真不假,那几个女生可真能说,和她们在一起就没消停过。卖书卖到10点多,回去再忍着巨慢的网速上会儿网就睡觉。虽然西安这边每天都传着余震的消息,但听多了就根本不当回事儿了,照样在宿舍睡。

今天一天没在学校,出去去老师家蹭饭吃去了。中午去老大他张姐姐家吃了顿饭,和张老师聊了好长时间。晚上和Dr. Chen吃了个饭,一起聊了聊学习和人生,发现很有共同语言~~最大的发现是感觉她越来越逗了,说了好几句话都让我眼前一黑~!

明天的计划是中午和班里同学吃饭,晚上和小组的伙计们吃饭~~饭局很多~~

后天周六,出去转转,计划爬一下西安城墙,不过此提议被多人否决,看看再说。

周日应邀去吃饺子,下周一也会有饭局,如果不走的话~~~

天呐,来这就光吃了。。。

gmail的一个严重bug?

奇了怪了,我收到一封寄给我本人的邮件(没其它任何抄送),我在web界面里搜索能搜到它,可在其它地方根本就找不到!收件箱,没有;已删除,没有;垃圾邮件,没有;所有邮件,还是没有;发件箱,虽不太可能在这里,但仍然没有!!而这偏偏是我最重要的一封邮件!

难道是gmail的一个bug?

我使用的是IMAP。看来gmail的IMAP不是一般不行啊!哎,地址薄里汉字一直是gb2312/big5编码!KAO

长不大的顽童——读《别闹了,费曼先生》

这两天没干别的,一边刷介绍灾情的新闻,一边看介绍灾情的报道,同时一点一点地看完了这本书!

一直很佩服大牛费曼,他的趣事早就听说过一些,可是直到读了《别闹了,费曼先生》一书我才是对他有了一个最深入的了解。

费曼先生很聪明,尽管他自己并不怎么承认(当然我们会理解为谦虚,但他自己肯定不是那么想的!那不符合他的性格!),他思考问题的方式很巧妙,逻辑很清晰,即使你看他在那里玩把戏,你也能学到他的思维逻辑。我认为这是很了不起的,我一直很佩服那些遇到问题一眼就能看出关键所在,并且还能以极其清晰的逻辑去分析问题的人!而费曼绝对正是这种人!!有了这种逻辑,我认为,学什么东西都容易,正像费曼先生那样,他涉及的领域多得令人震惊!正是因为他会这么思考,费曼先生才觉得并不是自己聪明,而是别人都没有(而不是不能)去这么思考!!举个例子,他说自己数学好是因为自己有个解积分的特殊百宝箱,只是别人一直不知道用!

费曼先生太逗了,逗到什么程度呢?逗到当他说实话时以至于没人肯相信他!!比如书里讲的那次在MIT,费曼把某个宿舍的门给藏起来了,别人都找不到了,急了,挨个问。“费曼,是你把门藏起来了,对吧?”他说,“对啊!确实是我。”“谁信啊,别闹了。”确实是他,他也承认,但就是没人信他!!他骗人骗到了以至于他承认是骗人都没人信他了!他太聪明了,他很清楚别人会这么想,于是就想法把自己和别人往这个方向去推!他成功了!他太能逗了!他调侃似的说:“很多人常常觉得我是个骗子,但事实上我都很诚实,只不过,我常常诚实得没有人相信而已!

费曼先生太善于学习了!他能跟各色各样的人学习,大到学哲学,学艺术的教授,小到赌博的赌徒,公司的开锁工人,甚至还包括酒吧里的女郎!他向别人学过打鼓,学过画画,学过生物……甚至连开锁他都学过(更多的是自己琢磨)!!而且他很有耐心,加上他思维方式独特,所以他学得很快!一些领域还蛮有成就!这很好解释,他认为他学的这些东西都很好玩,好有意思,非得去把它们搞个明白,他都是抱着玩的心态去认真学!!结果,他很成功!一点儿都不像玩玩就算的样子!!

而且,他的诺贝尔奖,据他说,也是玩出来的!有一天闲得实在没事了,计算起飞盘的旋转速度来了,结果因此联想到了他的研究,后来就因为这得了诺奖!!他对诺奖的评价是:害人不浅

费曼先生很正直,心直口快,这让他得到了不少好处!他自己也这么说!他遇到的那些大科学家(相对于费曼自己来说,当然是爱因斯坦和玻尔那种人)都觉得他很特殊,敢于挑他们的毛病,所以人家都记得他,有事先找他!他沾了大光!!(当然了,这些大科学家都很善于接受批评,这更是我们值得学习得地方!)

他去巴西教书,当着巴西教育部领导的面直接批评那里的教育:“大家都努力考试,然后教下一代如何考试,大家什么都不懂。”巴西领导很没面子,但是他们还是接受了费曼的批评!!他恨透了那些错误的教育方式,包括在美国的!他给加州当教材评委时更是对那些烂教材批评得一塌糊涂!!

更好笑的是,人家专利局替国家给他申请了专利,为了形式,支付他一元钱。换别人,没人会把这一元当回事,可他很在乎!他非得给局长要了回来,局长只好自己拿出一元钱给他,他用这一元买东西去巴结他的同事(研究原子弹的那些人),结果是,那些知道这件事的人都去要自己的那一元钱!!局长都无奈了。

还有一次,人家请他去工作,许给他很好很好的薪水,好得他都不敢让那人提薪水问题。结果后来他知道了具体数字后,回电话说:你们薪水给得太高了啊!我要是领了你们这薪水,都可以包二奶了!那我就会犯错误啦!

*$&#^@%……

在书中结尾处,费曼对我们提出了很好的希望:“因此我只有一个希望:你们能够找到一个地方,在那里自由自在地坚持我提到过的品德;而且不会由于要维持你在组织里的地位,或是迫于经济压力,而丧失你的品德。

他的故事还有很多很多,去书中慢慢品味吧!

我总是耍赖,永远在逃避。”他这样评价自己。他看起来就是一个长不大的顽童,这就是我们可敬可爱的费曼先生!我们爱你,费曼先生!

附:费曼的两句惊世骇俗之语:

“Physics is to math what sex is to masturbation.” (“物理之于数学好比性爱之于手淫。”)

“Physics is like sex: sure, it may give some practical results, but that’s not why we do it.” (“物理跟性爱有相似之处:是的,它可能会产生某些实在的结果,但这并不是我们做它的初衷。”)

生命太脆弱了!

不到一天的时间里,那么多人离我们而去了……

我不知道该说什么好,面对自然灾害,人类还是那么束手无策!人类整天牛逼哄哄,叫唤着自己科技多么发达。你再tmd发达还不是照样对付不了大自然?对抗不了也就罢了,你连预测都白搭!!

大自然或许是睡觉时翻了个身,那么多人就over了!跟大自然玩,丫还忒嫩了!!人类在大自然面前依旧是那么渺小!骄傲无知的人类该醒醒了,现在或许还来得及。

生命太脆弱了,人类之于大自然或许就像蚂蚁之于人类。生命无常啊!活着的人应当好好珍惜!

愿上天保佑中国!

P.S. 不知为什么,虽是五月,可这里这两天很冷……

听妈妈的话

小朋友你是否有很多问号
为什么别人在那看漫画
我却在学画画
对这钢琴说话别人在玩游戏
我却靠在墙壁背我的abc
我说我要一架大大的飞机
我却得到一台旧旧录音机
为什么要听妈妈的话
长大后你就会开始懂得这段话
长大后我开始明白
为什么我跑得比别人快
飞得比别人高
将来大家看的都是我画的漫画
大家唱的都是我写的歌
妈妈的辛苦不让你看见
温暖的食谱在她心里面

有空就去多握握她的手
把手牵着一起梦游
听妈妈的话别让她受伤
想快快长大才能保护她
美丽的白发幸福中发芽
天使的魔法温暖中慈祥

在你的未来音乐是你的王牌
拿王牌谈个恋爱
唉我不想把你教坏
还是听妈妈的话吧
晚点再恋爱吧
我知道你未来的路
但妈比我更清楚

你会开始学其他同学在书包写东写西
但我建议最好写妈妈我会用功读书
用功读书怎么会从我嘴巴说出
不想你输所以要叫你用功读书
妈妈织给你的毛衣你要好好的收着
因为母亲节到时我要告诉他我还留着
对了我会遇到周润发
所以你可以跟同学炫耀赌神未来是你爸爸
我找不到童年写的情书
你写完不要送人因为过两天你会在操场上捡到
你会开始喜欢上流行歌
因为张学友开始准备唱吻别
听妈妈的话别让她受伤
想快快长大才能保护她
美丽的白发幸福中发芽
天使的魔法温暖中慈祥
听妈妈的话别让她受伤
想快快长大才能保护她
长大后我开始明白为什么我
跑得比别人快飞得比别人高
将来大家看的都是我画的漫画
大家唱的都是我写的歌
妈妈的辛苦不让你看见
温暖的食谱在她心里面
有空就去多握握她的手
把手牵着一起梦游
听妈妈的话别让她受伤
想快快长大才能保护她
美丽的白发幸福中发芽
天使的魔法温暖中慈祥.

time为啥是关键字?

前面提到time其实是shell的一个关键字。

大家看了都奇怪为啥它非得是关键字?我今天仔细琢磨了一下,觉得有这么两个理由:

1. 为了让time也可以对cd之类的内置命令进行计时,比如:

$ time cd /

real 0m0.000s
user 0m0.000s
sys 0m0.000s

如果time是外部命令,或者shell内置命令的话,它根本就不好识别shell内置的cd,所以得是关键字。或者说只有是关键字才是这里最好的解决方案。

2. 为了重定向的考虑,比如:

$ time ls -l > /dev/null 2>&1

real 0m0.193s
user 0m0.005s
sys 0m0.005s

如果time是个命令,它的输出也会被重定向了,而它是关键字,所以它本身不会受影响。同理,管道也影响不了它:

$ ls -l | wc -l
25
$ time ls -l | wc -l
25

real 0m0.056s
user 0m0.006s
sys 0m0.007s

问题:那究竟如何重定向time自己的输出呢??

答:$ { time ls; } 2> /dev/null

参考:http://www.cs.tut.fi/~jarvi/tips/bash.html

越长大越孤单

很喜欢《越长大越孤单》这首歌,很喜欢这个女人的声音~~有潜力~~!

================孤单的分割线================

歌曲:越长大越孤单
歌手:牛奶@咖啡

多年以后
你回到我身边
不安全
充满了你疲倦的双眼
看着我
也告诉我
你是否
依然相信童话
你曾对我说
每颗心都寂寞
每颗心都脆弱都渴望被触摸
但你的心
永远的燃烧着
永远的
不会退缩
越长大越孤单
越长大越不安
也不得不看梦想的翅膀被折断
也不得不收回曾经的话问自己
你纯真的眼睛哪去了
越长大越孤单
越长大越不安
也不得不
打开保护你的降落伞
也突然间
明白未来的路
不平坦
难道说这改变是必然
多年以后
你回到我身边
不安全
充满了你疲倦的双眼
看着我
也告诉我
你是否
依然相信童话
你曾对我说
每颗心都寂寞
每颗心都脆弱都渴望被触摸
但你的心
永远的燃烧着
永远的
不会退缩
越长大越孤单
越长大越不安
也不得不看梦想的翅膀被折断
也不得不收回曾经的话问自己
你纯真的眼睛哪去了
越长大越孤单
越长大越不安
也不得不
打开保护你的降落伞
也突然间
明白未来的路
不平坦
难道说这改变是必然
你曾对我说 每颗心都寂寞
每颗心都脆弱都可望被触摸
看着我 也告诉我
你的心依旧燃烧着

time居然是bash/zsh的关键字

哎,没想到自己的知识还有这么个大的疏漏!

我们平时最常用的time竟然是bash/zsh的一个关键字!!一直以为time就是/usr/bin/time!

$ builtin time
bash: builtin: time: not a shell builtin
$ type time
time is a shell keyword

% builtin time
zsh: no such builtin: time
% type time
time is a reserved word

用strace也可以,strace一下看看有没有搜索PATH的过程就知道。

$ strace /bin/bash -c ‘time > /dev/null’

也可以证实time确实不是外部命令,不过它无法告诉我们到底是内置命令还是关键字。排除time是内置命令的另一个方法是看man手册,shell builtins里面并没有time。