链接地址:http://mislav.uniqpath.com/poignant-guide/book/chapter-2.html
第二章:Kon’nichi wa, 红宝石
第一节:开启本书
假装你已经打开了这本书(尽管很可能你已经打开了这本书),你只发现在书的中间折痕处有一个大大的洋葱头。(这本书的印刷商应我的要求添加了洋葱头)
所以你会感到喜欢:“哇,这本书带着一个洋葱!”(甚至如果你不是特别喜欢洋葱,我也确信你能感激到物流运输的小心谨慎,在一本所谓的编程手册中甚至夹着农产品洋葱)
然后你问自己,“等一下,我认为这是一本关于Ruby的书,它是一门来自日本的惊人的新的编程语言。尽管我对能在一本编程手册中夹着农产品的物流运输很感激,但是为什么是洋葱呢?我应该用它来做什么?”
不,请不要对此感到疑惑。你不需要用洋葱做任何事情。把洋葱放在一边让它为你做些什么吧。
我将一直陪着你,我想让你哭,哭泣,轻柔的呜咽。这本书讲述的是Ruby的辛酸历程。也就是说通过如此优美的代码能让你的眼泪流下。当你第二天早上在这本书的怀抱中醒来,你会拥有英勇的故事和凄美的事实。整日都紧紧拥抱它吧。如果必要的话,为这本书做一个临时的能放在臀部后面的皮套,这样这本书就能一直温柔地陪着你了。
你真的需要哭泣一次。或者至少要抽噎。如果不这样,那洋葱会给你带来这些的。
第二节:狗的故事
现在来尝试第一个辛酸:
一天我行走在一条充满着汽车经销商的繁华道路上(就在我的婚礼被取消后不久),我发现了一只孤独的流浪狗。这是一只浑身长满毛的拥有发绿的红眼睛的黑狗。我有种感觉,觉得自己就像一个孤儿,于是我取下了一对系在经销商旁的柱子上的气球,把它们系在狗的项圈上。然后我决定他将是我的狗。我给他取了一个名字,叫Bigelow。
我想,我们可以先去给Biglow买一些食物,然后,直接回到我的住处,在那里我们可以坐在躺椅上听Gorky’s Zygotic Mynci的曲子。哦对了,我们也需要在旧货店停留片刻给Biglow买一个它自己的躺椅。
但是Biglow不把我看做是它的主人。于是五分钟以后,这条愚蠢的狗选了一条和我相反的路线逃走了,我也没能追上它。就算这条狗之前仅丢失过一次,现在它算丢失过两次了。我放慢了走向一个有Milkbones和额外躺椅生活的脚步。我有一条狗,仅仅五分钟而已。
一条和Benedict Arnold一样愚蠢的狗。我坐在城市的长椅上,朝一个三只羊过桥的雕像扔松果。然后我哭了好几个小时。眼泪就这么到来了。现在有一些能让你开始感到辛酸的事了。
我猜想这条狗带着这些气球会去哪里。那条疯狗肯定看上去就像一个长腿的派对。
之后不久我就有了自己的Bigelow。我打印了一堆关于Ruby的页面和在网络上找到的文献。我在一天坐火车回家的途中浏览了这些资料。我花了五分钟草草浏览了一遍然后放弃了。完全没有什么印象。
我坐着,透过窗口望着这个世界,在我的眼前,一个真人大小的搅拌器正在搅拌着各种涂鸦,钢铁正在冶炼。这个世界对这么小的一门语言来说太大了,我这样想到。可怜的小东西无法立足,没有腿能站起来,也没有臂膀能去游泳。
然而,我就在那里。在住在一个漂浮的蓝色岩石的数十亿人之间,我只是在一辆易破的小火车上的一个弱小的人(我甚至有时会有乳牙脱落)。我凭什么能批评Ruby呢?谁说我不会在打电话的时候被手机窒息,在当晚就死去呢?为什么会死?Ruby会永远活下去。
墓碑上写着:
他脊椎里面有什么?噢,看呐,一部诺基亚。
这是我的幸运。最后,在地下能有一个很好的长眠,只是不时为我胃中慢慢腐烂的Pachelbel’s Canon感到不安。
第三节 旭日东升
现在你也许很好奇我为何改变了对Ruby的看法。最直截了当的回答是:我们一见如故。
就好像当你在校园里面遇到某人,而他就像在你小时候经常用画笔戳你脸的人。因此,你一下子就断定这个人不可能是朋友。你在他们面前退缩了。在他们谈论奇闻异事的时刻你大声挂断电话。你用弹簧高跷去走他们设法走过的地方。
然而在六个月以后,你和他坐在喷泉旁边愉快的交谈。他们的脸看起来不那么像是你童年的敌人。你遇到了一对双胞胎中友好的一个,你们一见如故。
但是我不想大肆向你宣传Ruby,告诉你Ruby应用的方方面面(包括你的老板和老板的老板),我只想让你自己去摸索。我将让你自由地在代码中下坠,在偶然的场合再突然告诉你我自己发自内心的经验、那些经验将会很简单,也很自然。
我应该给你某种动机,言归正传,我将告诉你学习和使用Ruby的三个我认为最好的原因:
- 1、头脑健康
- 维他命R直接进入大脑。Ruby将教会你如何使用计算机展现你的想法。你将为机器编写故事。
- 创新能力,人,推理,归因,明智的点头。这门语言将成为更好的联结你的头脑和世界的工具。我已经注意到很多富有经验的Ruby使用者似乎都是头脑清晰的思考者和客观现实者。(与此相对的是:极度偏见者和粗俗者)
- 2、一个人一个岛
- Ruby是在日本诞生的,这一点很奇怪。日本并不以软件业知名,而且变成语言大多数都是用英文来写的,谁能想到一种来自日本的语言呢?
- 然而,我们迎来了Ruby。在克服了种种挫折后,松本行弘在1993年2月24日创造了Ruby。在过去的十年间,他一步一脚印地让Ruby拥有了一个庞大的观众群。Ruby是成功的,也是高贵的,诸如此类的赞美很多。它支持多样性,让我们能用一个比特撬动地球。
- 3、免费
- 使用Ruby不需要任何花费。Ruby自己的源码就对整个世界开源,使其能够在给予的同时获取新东西。因此,这本书也是免费的。Ruby是一个巨大的礼物,应该有一些附赠品。
- 也许你认为我们会让你买吸尘器或者买度假别墅亦或是莫内的伪造品。你认为将会有一个90分钟的展示,在最后公司的老总会出来,逼迫你去完成交易。
- 不,它是完全免费的。
接下来,该轮到本书的登场了。你现在可以拿出你的荧光笔,从在这句话结束后起划过每一个你认为迷人的单词。我认为我有足够的粘合剂和假钞让我的读者能坚持读到最后一页。
第四节 这本书如何开始
如果你之前读过一本书,你知道没有书会在不存在期望过高协同下恰当的开始。是的,就是协同。可能你不知道这一点。协同意味着你和我假设能够合作,带来一种极佳的阅读体验。
我们沿着目录开始这本书。这种归属感,这种协作,推动着我们贯穿本书,我也将会在你的路上指引你。你可以通过给我一个确信的点头或偷笑来表明你的进步。
我是牵着你的手的彼得潘。来吧,温迪,又一颗星闪耀了,直到明天。
这里有一个问题。我和别人相处的并不好。我也并不擅于手牵手。
我的任何一个同行都会告诉你。在这本书的开启典礼上(在体育场举办的一场食物晚会),我发现茶杯中并不提供黄瓜三明治。因此,奶油和黄瓜搭配的并不好。总而言之,我发了一个很大的脾气,怒气冲冲地点燃了停在外面的宣传卡车,也把聚光灯给砸成碎片,等等。我这种疯狂的可笑的举动一直持续到那晚的深夜。一切真是糟糕透了。
但是,由于我和别人相处并不好,我没有请除了我以外的任何一个人去参加那场本书开启典礼。所以一切也不是那么尴尬。我把这些当成秘密,没有人能发现这整个的折磨过程。
所以你知道协同在这本书中并不真正意味着协同。我不能做正常的协同。在这本书中,协同意味着卡通狐狸。我想要说的是:这本书将会从一群数量过多的卡通狐狸开始。
我将指望你把他们变成协同。