Aimingoo's profileAimingoo's 网上空地PhotosBlogListsMore ![]() | Help |
|
June 17 感受支付宝
感受支付宝
去年英雄会前后到的北京,而今年离开北京也是在英雄会的前后。时间匆匆便是一
年,一面是无有所得,另一面则是心性练得越发的沉稳了。有很多东西渐渐地去做、
去感受、去蹉跎,慢慢地也就明白了。所以人嘛,不要怕错,不要怕烦,不要怕没
成绩,怕的是没思考。走过了路,摔过了跟头,跟没事人一样,那便是白经历了,
老天爷掉块宝在他身边,也是无视的。
去年赴京时正赶上英雄会,那时便做了一首小诗,写道:
昨夜方泸闵,此时已京中。
将相王侯府,笑谈作一梦。
回见来时路,山峦几多重。
俯仰清声处,执手是英雄。
今年再见英雄们,心气已经被蹉跎了许多,没了俯仰清声,也没了笑谈一梦。那晚
跟韩磊坐在一起大嚼烤鸡翅,与许多CSDN的朋友们在一起灌啤酒说闲话(*见这里),
回复了平常,便体会出来:我们这些白领金领,无过于一群饭桶。所以还是David I
更为真实,我2005年在上海见他时,他用叉子举着大大的肉块开心得象个大孩子,
这次再见他仍是无肉不欢,见到素菜在眼前晃的时候,神情还是象个孩子丢了糖
果。
在杭州基本安定了,支付宝的内训时间相当长,大概得有近一个月的时间。所以还
在内训着,看着、听着阿里的文化,而非走进它、感受它。在上海的时候,跟王昊
便论到这个“感受”二字,那是“以体察之,感同身受”。感受,可不是轻易能得
的,是要设身处地去察去领去受的。所以大多数时候我们说我们有种种“感受”,
那都是相当的肤浅,充其量不过是“感觉”而已。再就是前些天在Beijing Openparty
上,与朋友讨论起“清醒”二字,我当时就说:多年前的一些经历让我意识到大多
数人已经不记得树叶是绿色的,以及阳光的亮色,因为他们都没有停下来看过,更
远远谈不上清醒。所以“清醒”,其实是要先用眼睛去看的,沉静下来,倒空自己,
放开了眼界去看,而后才会谈得上“清醒”。
这些已经是过往的领悟了。如今我看我,既不是那么清醒着,也远非有什么感受,
甚至连聪明二字也用不上了。以前朋友说我聪明,我就哈哈笑着,说自己其实不那
么聪明,至多是努力些。这话分两半讲,一半是谦虚,另一半还有着往脸上贴金的
嫌疑。这前两天刚到杭州,便在超市见到一件新鲜的物事。是一个塑料杯子,中间
有夹层,夹层里有一些分不清是水是油的液体。杯子有名,叫“冰杯”。想想就明
白,放在冰箱里,等液体结冰了,拿出来倒上啤酒快速冰镇,比用冰块要强。
于是弄了一个回家搁冰箱里。过许久拿了出来尝试,却满不是那么回事:那夹层里
的液体并不甚满,所以冰块只有杯子的一半不到,而根据物理学原理,热液是在上
面的,不会回流到冰杯的下面去。所以,看起来从外向内地冰冻啤酒会很有效,但
远比不上冰块的效果:不但从内向外,冰块最终还会浮起,变成从上到下的致冷。
于是对这个冰杯大感失望,心里想着:难不成用个冰杯,还得找个筷子来搅和?心
里除了不满,还生出搞技术工作的那种牛劲来:要不我发明一个东东出来,改善一
下这个致冷效果?
当然我什么也没发明出来,而杯子则被继续搁在冰箱里,偶尔地取出来用用。每每
用它,便心中愤愤:如此冰杯,存之无用,弃之可惜。这天实在闲了,便注意到它
的杯壁上还有一个“说明书”,不但有字,还有图画着,很细致。只是以前从未想
过:一个杯子,还需要什么说明书呢?而这说明书与图画,其实只表达了一个意思:
倒过来放。
是啊!夹层里的液体不满,倒过来放着的时候,底下便是空着。等热一些的啤酒放
进去,杯口的冰水向下流,便同样是有了回流的效果啊!是时大惊:如此简单!不
过是“倒过来放”而已!我责怪这杯子了如此久,说那发明者那么笨,而真正的问
题在于:我怎么从来没有去看过这项发明呢?
所以我说我不聪明。聪明啊,古人这个词就造得很好:耳聪目明,只要能去看能去
听,就是聪明了。我们大多数人的不聪明,只是不会看不会听罢了。把他放在一个
新环境里去,他就象个聋子瞎子,只按自己所经历、所知道的去做去想,那又何来
聪明可言呢?刚到支付宝,王昊就在MSN里叮嘱说:一定要认识高人啊。我说:哈
哈,我现在睁大眼睛在看着呢。王昊又说:用耳朵吧。我回了两个字:都用。
能看能听,我至少还有机会变得聪明,进而清醒,进而感受支付宝。唯其感受,才
有体会。我想,这就是阿里文化里说“三年才会成为阿里人”的源由了吧。同样地
也写段短诗,遂了王昊这寻访高人的心愿:
五月远京城,往此寻高人。
冰杯小作难,唤我掩柴门。
晨作于西湖,暮归在古墩。
筷头还肉香,竹园正新笋。
April 27 尊重反动派尊重反动派(上) --再说阿朱的《走出软件作坊》 1、历史中 如是,我现在也甚少与人论长短。在盛大工作的时候,Soul曾给我说:大多数的争论不是为了正 如同《春秋》被截成文字片断之后,各个部分就互相矛盾,而又能为甚至互悖的观点提供支持一 历史中,出来找骂的多了。但开骂的人先看看别人的宏旨的,不多。 2、软件作坊 很幸运,这本书还是秉承了我荐它时的那种文字风格和中心思想。这种思想很简单,就是“反思”。 软件作坊承认了一种公司和团队模式的存在:公司小,生存危机大;经验少,连写代码都还在学, “不放心”,需要依据吗?不需要的。客户的“不放心”没法衡量,不是象拿到名片去唬人那么 阿朱的《走出软件作坊》从根本上,就是从一个小公司、小作坊如何对外建立公司信任,对内建 3、我为啥好评《走出软件作坊》 这个问题其实到某天我与韩磊在ZDNET的采访中才突然想明白。我当时给韩磊说:我们讲人情讲 这个问题引发了我对《走出软件作坊》和《梦断代码》的重新品读。的确,如o6z所说,软件作 跟客户的沟通,不单单是建立我们“正规而专业”的印象,还要保障沟通的“有效性”——这个 o6z当然可以说这样的行为是“丑陋的”,但可有想过其背后的环境之丑陋?所以我在《本来面 07年的SD2C大会里,有一位国企的高工问我,说他的一些想法总是无法推行,因为在企业组织结 丑陋吗?现实吗?清理环境谈何容易?那可是抛头颅洒热血的事。所以我在《本来面目》一文中 尊重反动派(下) --再说阿朱的《走出软件作坊》 4、再说狭义工程 而我们大多数的公司,是在为“完成一个项目”而发愁。至于软件的、工程的本质复杂性,与他 到这时我形成了关于狭义工程的两个主要观点:其一,狭义工程与广义工程,在(人月神话所述 这两个观点使得我认可了《走出软件作坊》中所体现的实践精神。我不反对对这本书的种种负面 5、总是有问题 相当精彩。 如果一个人读这本书,忽略了阿朱所在的行业,所处的背景,那么阿朱那些方法也就失去了依托, 再看看caoz的背景,很好,在这篇文章中也讲到过:(caoz有特殊的工作背景和工作资历,)在 事实上,不单如此,我第一次见阿朱,也给阿朱说过:你缺乏大公司的工作经验(正好这一点caoz 再举一个有趣的例子。 o6z在“你的就是我的”引了一段评论,这是robert回复阿朱的,说:“你的老板真是 NB,把决 所以,脱离环境去讨论工程,一如缘木求鱼,所得者非。 再到后来,o6z就提出了“公司老板,或者你的上级的想法,绝大多数情况下不要去揣测。只有 哈哈。在小公司里做过就知道,CTO这个TITLE下面,有时候也要打打杂地。 6、尊重反动派 但是,这句话还有另一种理解,即“反者,道的动向”。亦即是说,道,总是向着与它相反的 既然物极必反,那么所谓正确与错误,都与时间、场景相关。一个观察所得的现象与经验,在 所以我说“尊重反动派”,因为他们其实是你的目标。你看到他们在反对什么,其实你就在追 感谢那些反动派吧,如果他们还将固执地存在。 7、其它 不要一味地听广告。广告总是要打的,酒香也怕巷子深呢。但是广告总是片面地强调“产品” 广告嘛,总是会夸张些。比如今天CSDN里有一个关于JAVA视频培训的广告写着“空前绝后的超 不要认为什么都是错的,也不要认为什么都是对的。好或坏,是有语境的。 不要以为立场摇摆的就是墙头草,不要以为言不切实的就是老油子。需要决策的时候果敢,需 在数年之后,也许我们仍然可以说“阿朱没有在大公司工作的经验”,但也许,他已经有了 March 09 终于看明白了米国的经济危机找了一部片片来看,叫《时代精神2 (Zeitgeist.Addendum.2008)》。讲的呢,却是米国的货币经济。讲了一个简单的、游戏规则下的经济危机。大意如下: 1、米政府:我需要100w发展。 规则一:大多数交易账户上对储备金的要求是10%(即银行存款中的90%可用于贷款)。 5、企业/个人:我要贷款。 规则二:存款永远都可以贷出去,因为这意味着有人欠钱并还贷(贷款意味着社会需求)。 10、银行:贷款是要收利息的。 规则三:钱不可能自然增长,一方面人民要印,一方面国家要印。所以钱就被印出来了。 上述规则的推论如下: 上述规则下的现实是: 预言: January 09 本有佛性,奈何俗尘stupid 说: stupid 说: stupid 说: stupid 说: January 07 写在《动态函数式语言精髓》发布之前~
November 18 骂作!============================================================== 骂作!
—— 市场经济与个人情感
==============================================================
在DOGN(一个私人的、小圈子的社区)里,我曾经给一个用极其夸张的语言来称赞我的 老朋友说:棒杀是杀,捧杀也是杀,区别只是前者用棒子击打,后者用手托衬,死却是 一样的死法。 所以,个人感情里,我不太喜欢捧。捧得过了,人就昏了。托衬得太高,虚无实底,掉 下来也就摔死了。同样的,我也不喜欢“作”,做作得过头了,看起来印痕满满,如同 乞丐的衣服,不堪入目的。 说到这个话题,是与一篇文章相关的。缘于我老家在四川,又在地震重灾区广元,所以 常关心这些。衣向东先生的博文《北川距离一张旧船票的日子有多远》讲到一件事情, 说是出版社迟迟不能出版长篇报告文学《震区警察的记忆》。究其原因,对曰:“热点 过了”。 《震区警察的记忆》: http://blog.sina.com.cn/s/blog_4a973bdb0100c2hm.html “热点过了”,好深刻的四个字。人的情感,灾区的苦难,被放到市场的、经济的大锅 中一搅和,就剩下对看客们眼球的刺激了。一本书、一篇文章好不好,只在于关注不关 注,而无关于其内容的实质。 冷血! 市场规律造就了这种无情的研判策略。放在法庭上,不管受害者哭到昏天黑地,没证据 就是没证据,判不了就是判不了。哭得声音再响再凄惨,法官也得当成是在听戏。这叫 理智理性。同样的,热点过了,再好的书籍文章也不过是狗屎垃圾,我们尽可以置灾区 的声音于不管不顾。我们可以无视于那里的几千万人、一亿人在痛苦中抖瑟瑟地站起, 因为,我们——其它的十几亿人的眼球,以及令我们“燥热的点”,在今天不过是在关 注汤唯那扭曲的脊柱!!! 冷血! 不过同样的,我们再“更冷静地”看看衣向东先生的预期:我们可以再过些日子,持一 张旧船票,去看看灾区的活动,看看“一些祭奠和追忆的活动”,看看那些很官派的仪 式,或者猛烈碰触我们“燥热的点”的“类似狂欢的聚会”。 我们只能庆幸——中国人有欢庆节日的、忌日的、纪念日等等各种日子的传统,我们的 传统允许我们以及“要求我们”在某个确定的时间点去燥热一下,妆点一下我们漠视一 切的本性。 而不是真正的关注一下现实的民生。 又如同这篇“震区警察的记忆”的名字,平淡无奇,难以摄人眼目。要说出版发表,文 章的名字,就得有挑动一个领域的气势——而无关乎内容如何。所以衣向东先生应该给 这篇报告文学起名为“震区悲情,一个警察所见的300条人腿”,或者“警察、尸骨,与 震区”,更或者叫“充血的双瞳何不回望一下北川的今日”! 想到取名字的这个主意,与IT这个行业有关。因为javaeyes上这两天的争论,让我看到 很有些读者——我的意思是不限定内容的泛义上的读者——其实是弱视的、盲目的以及 肤浅的。例如一本《疯狂Java讲义》!好名字啊!“疯狂”呢,学了之后做颠狂状呢! “讲义”哦,殿堂级的呢!学了之后明天就当教授了! 人们不是理性的看中讲义,就是非理性的接近疯狂。多好的名字!然而javaeyes上还是 有人把它揭批了一把,说它不过是一本充满了虚伪、炒作以及大段抄袭的“烂书”。 《拼拼凑凑也是书》: http://readonly.javaeye.com/blog/265831 然后就是李刚先生与javaeyes的骂仗,公说公的理,婆说婆的理。直到炒到天昏地暗。 作为读者的,就明白了一件事:书是烂书,下次小心这个人——最多如此。然而,可有 人回头看看,到底是什么挑动了几方的神经? 不过是一本书名。不过是一本书名而已。 要换了《java实战》或《java入门导引》这样的名字,就没人会骂。因为入门嘛,大抵 是该这样,总有人喜欢吃混在一起的pizza,而不愿按家门店地去买最好的面饼与火腿 肠。所以,从市场的角度上来说,象《疯狂Java讲义》这样的书名,是真的好名字,真 正为读者想的名字,真正有卖相的名字。 《震区警察的记忆》算个啥?毫无卖相,我看就算明年的周年祭,能出版也是出版社开 恩,或者某个小编花了老眼。所以,卖相重要、热点重要,不能炒作也可,起码要能骂 作才成。总而言之,能把读者的眼球从布满血丝变成红通通如同兔子,那就是成功。 因为只要市场关注了,就有卖头了;有卖头了,就可以出了!完全合乎市场规律,大家 有钱赚,人人有书看,生活娱乐两不误。仅此而论,卖A片大概比卖书更有利于国计民生!!! 冷血! 做作是作,炒作是作,骂作也是作。骂来骂去,无过也是吸引眼球——如同我现在正在 做的。但换个角度,如果大家都不把眼睛瞅过来,这里的风景独好,也只能苦待黄昏, 继而于黑暗中隐去。所以又从市场经济的角度来看,“作”是必要的、必须的,这种必 要与必须无关于个人情感,仅仅是市场的——以及说面向那些盲目的、缺乏冷静的析辨 能力的普众性群体的——需要。 有需求就有市场,最基本的市场规律了。如果人人都足够清醒,也就不需要老子孔子的 道德文章了。所以不单要“作”,还要“作”得一丝不苟,“作”得不露声色。要打着 不“作”的旗帜明修栈道,而私底下暗渡了陈仓。 我藏行的路上,就看见过朝圣的信徒们,三步一叩首地行进着、行进着……到得寺庙之前, 用酥油给佛像贴上一块钱一角钱一分钱,分分角角摞满寺庙的山墙。然而信徒们,贫苦的 依然贫苦着,羼弱的依然羼弱着,迷惑地绕行于山墙之外的转经路上。这情景,恰如同那 些书本上的标题,以及被标题蛊惑着、燥热着的读者与“作”者。 我便真到过一个在翻新的寺庙里去,见到过一尊没有金漆彩描的佛像。绕到他的背后看去, 在左上、肩下的位置有一个方形的孔洞。那时我问庙里的住持,这个孔洞有什么意义呢? 住持说,在佛像落成之前,要请了经文放进去,那是佛像的心的位置。En...连做法事的老 住持也知道,只铸个泥菩萨在那里是没用的,华衣锦服的名头下面,有没有解决问题的实 质,方可见真正的良心。 所以,如今的乞丐,也有华衣锦服的了,也有背靠佛像数香油钱的了。所以,做作得到了 有做派的程度,常人也就看不见左上角有没有良心了。继而的,良心看不看得见已经不重 要了,“作”已经也成为了一种讲究,一种体面,进而要升华成一种表面的、视觉的艺术 了。 冷血啊。如今华衣锦服的,位列庙堂的,也冷血了。 October 19 学习从小抄开始这两天学些新东西,发现原来几乎所有要记忆的东西都有小抄。看来亚洲人欧美人在记忆特点上也没有不同。不过,对待这个小抄,大概,我们拿小抄去考场会被打手板心,而西方人会宽容些些,有些允许带一个指定大小、页数的小抄。哎,早要能这样,当年我就不会把三角函数刻在课桌上了。
中国的教育方法,至少比较毁桌子。
E文里的小抄通常有两个说法,比较正式的叫Quick Card,或Quick Reference Card。。至于另一种,就比较明目张胆了,叫CheatSheet。En,作弊单,不错,言简意赅,令人印象深刻。
有好多小抄的网站。有些小抄做得非常专业。以漂亮而论,大概设计师用的小抄为最。例如下面这些是给Web设计师用的:
当然也有比较严肃的。通常~~ 可以想见的,就是给程序员用的:
收集各种各样的小抄确实不错。我想我的一些学习,大概就可以从找小抄开始。下面是几个不错的地方: 专业级站点,看名字就看出来了 October 09 像大师们一样思考——从“UML何时死掉”谈起题记: August 07 胜不为争。不为争胜。古人竞技,可能最先是源出于狩猎。这是生存的必须,尽管是想当然,但也说得过去。但狩猎这种物质需求被满足之后,出于精神需要的竞技又源出于什么呢?
现代竞技,如现在的奥运。说更高、更快、更强,强调的仍然是体魄与技能,这在本质上还是早期竞技的那种模式。我们在物质丰富的年代,来看更高更快更强,其实只是一个个数字上的刺激,说欣赏也可,说娱乐也可,虽无褒贬的成分在里头,但总之离思想的层面是很远的。
然而儒家理念里面,“争”却源出于礼。出于礼之争,是君子之争;悖于礼之争,则是小人的行径了。这个“礼”,如果换成现在的“赛场制度”,也是一样。就好象是说,如果有运动员谨守制度,最终虽没嬴得比赛,也可以说重在参与,体现了奥运精神;如果说他服兴奋剂,或裁判徇私,那就是胜得无耻,是小人了。
但更近一步的去讲,现代竞技目的是什么呢?名次?奖杯?还是真正的重在参与?这些其实与儒家观念大为不同。儒家说君子之争,是争让,而不是争得。如“射礼”,射就是舍,一箭行去,便心下了然,中与不中,已在身外。这个射,内在的精神就是舍。所以古代的儒士射箭,射之前大略是瞄来瞄去,端的是无比慎重;而箭出去了,也就放开了,断不会咦咦呀呀,头伸得老长老长,单等着中的之后的一声欢呼。那不是儒士的作风。
儒士射礼之后必然饮酒互和。这饮酒之道,便是胜负分判。然而,按礼却是胜者敬负者一爵酒,这爵也就是酒杯,也就是今天的奖杯。换言之,古人是负者拿这奖杯的。这意思是说,胜者并不是为这奖杯而胜的,不是为这酒而胜的。胜负只是一种礼节往来的表现和结果,而不是争取高下的结果。
胜不为争,争并不是古人竞技的目的。古人竞技,也是自身的一种修养。技之高下,并不是中或不中,而是修养在与不在。羸了的摔棋,与输了的摔棋,一样的都是输了。这其间的输羸,与技之高下就无关,而是德行之输羸。
所以反过来说,有一天你的胜出,不是因为你争了,而仅是你胜了。不为争而胜,已是一种心境,一种修养的学问了。
-------
注,这篇文章,是读叶匡政先生《儒家如何看奥运?》的一篇后感,大意不出叶先生的文章。这里:
July 24 啥美,细致之美……大概是在一年多前,一个朋友在MSN上与我聊天,忽然说道:我发现你做事也太细致了,连MSN 聊天的时候,每句话后面都要打句号。我那时惊讶莫名,于是翻过去看历史,的确如此,绝大 多数情况下,我的聊天记录都是标点符号正确的。 与此相同的,我后来把与王昊等几个朋友关于佛学的聊天记录摘下来,除了调整一下先后顺序
之外,只字不改,便可以作Blog文章发表了。这便是所谓细心。 跟出版社打交道久了,便知道出版中尤其需要细致。一出点错,那就是几千册上万册的损失,
印成实体书出来了,作者或许缘于对出版社的体谅,不去细究,但在读者那里却也不是买账的, 墨印得不好就是不好,纸用得差就是差。一分钱一分货,花了钱买了书,还得面对勘误来一页 页校,对他们实在不公。于是,有了这种心思,第一次见博文的周筠老师时,便送她了一套自 己刻的视频教学光盘,里面只讲三个话题,就是管理、细节和用人。她说她看过,我不再讲话。 其实,读者总是把钱交给书店之后,才拿到书的。所以不管怎样,就算是有人骂娘,钱还是赚
到的。但丢掉的就是下一本的声誉。于此,精明的商人都知道,只要不是做一锤子买卖,大家 都还注意着这个,所以面子上,大家都还喊着“质量第一”。但就如同矿井天天喊“安全至上”, 却还有人死一样,窟窿总还是有的。 根本的原因,不在于口号喊到多响,而在于实做的人的意识是怎样。今天写到这篇文字之前,
就看到海猫的一篇博客,是《周末杂谈:数据、现场与意义》,讲的内容大体是这样: ------- 对官方博客的维护和管理一直不甚理想,本周简单分析了1个月以官方博客的统计数据,并和 竞争对手的官方博客进行了对比,问题和不足一目了然…… ------- 其下两段,全部讲述的是关于这个博客的数据、对比与措施。看到这篇博文之后,我恍然对博
文官方博客的一些窘境有了深刻的了解。记得在近一个月前,我曾经问海猫,为什么这个在CSDN 官方博客总是不注意排版?总是有这样那样的问题?海猫答我说是“CSDN的博客不好用,前次加 了一篇文章,光为了调版式就用了两个小时,还最终没调好”。我当时默认了——CSDN的博客难 用是事实。但我随即问了一个问题:如果版式仅仅是你们调不好,还只是技术问题,那么为什么 博客中用的图片很多死链呢?死链总是改改就好的,链不到目标图片,就把图片下载过来放在CSDN 的图片库再链接,总是可以的吧。无论如何,这不是“CSDN好不好用”可以推托的,这是个态度 问题。海猫当即称“是”。 于是我便开始等着,看着那篇文章里的图片到底会在何时能被改好。我安安静静地等着,看着这
事件的反馈速度。然而时至今日,我看是等不到了。也许那篇过时的博客已经无人再访,无人再 问起。但那总是这个官方博客上的一篇文章,总是官方颜面的一部分,总会被搜到看到。所以, 失去了维护确是有些不妥的。而如今我看到海猫的这篇博客,才知道,如果人们只关注这些流量 数据,天天要的是数据报表或者数值上与对手的差异,那么真正关注品质的人就会渐渐被埋没、 流失。这种风气一旦形成,也就只有字表上数字的虚实,而真实的品质就不复存在了。 再前一次的这种等待也与CSDN有关,这大概得是在三年前。当时,CSDN首页偶尔会出现死链,多
是程序代码导致的。也不知是哪位程序员很开心地在错误页面上写着“你看到这个页面,证明是 代码出错了……”,或类似于此的“随性之笔”。于是我找到蒋涛(或是韩磊兄,记不清了)说, 既然这是官方的商业网站,还是用一个有点水准的吧,官方态度还是要诚肯些。当时蒋涛也是诺 诺称是,但我便一直等着、等着,看着CSDN的错误一天天地出现,直到过了两年这个问题才被修 掉。那已经是CSDN拿到了融资、增加了人手、强化了管理之后的事了。 所以追究根底,事情的结果总是会反应做事的人的状态的。我回顾博文的官方博客,再去看看博
文的十几个(我所知道的)编辑的个人博客,每一个都比这个漂亮,排版整齐、图片没有死链, 连出个文字错误也能快快地被修改掉。个人的颜面在这时节,显得确是要紧些。然则我不知道这 个官方的,可有人去维护打理,可有人去关注提醒,我只知道结果:官网现在版面全乱掉了,而 各位看客们自己的博客,好的依旧地好着,火的也依旧地火着。 还是有人会跳出来说“CSDN的博客烂啊,搞不定”,笑话,图灵刘江兄的博客也在CSDN上,怎就不
乱呢?仔细看看,该排版的排版,该有图的有图,就是加粗一下字体以便作为子标题这样的细节 也没放过。所以归结到底,是人的问题,不是CSDN博客的问题——尽管这个博客烂也是事实。 说完这半段,再回来说CSDN。CSDN与博文两家,都是我于公于私都交情甚好的公司,所以这里批
评也就讲到实处,不怕得罪人。这个话题得从另一篇文章开始。“苹果是怎么吃到的”这篇文章发 在《程序员》2008.03期。后来 CSDN大概觉得不错,就转载在vipnews.csdn.net上了。这份转载 初看起来不错,排版、标题等等都很好。但是我自己读去,就发现一个问题:其中有一个字标题是 “有苹果吗?是苹果树吗?能吃吗?”,这三个连问其实是一个标题的,结果被折成了两行。这就 令人困惑了。后来有很多网上的转载也都使用了这个版本,而又没有加粗字体,所以前一行就变成 了标题,而第三个设问,却就成了正文,失了原意。 这个问题是怎么出现的呢?拿着《程序员》2008.03期这份杂志就知道,那一期的排版上,因为这
个子标题太长,被折成了两行。所以接下来就顺理成章了:网站的编辑直接COPY了杂志上的原文。 所以,看起来正确的东西,仅是换了个地方,就未必正确了。 另一个话题,我年初给了《程序员》两篇稿件,前后两份正好跨在我离职盛大的前后。所以我特
地给《程序员》的编辑讲,要改改个人简介,不能再用“盛大网络架构师”的身份。很好,原本后 投的稿先发在了第三期,改掉了;而先投的稿发在了第四期,却又没改。这一来,变成了我三月 份离职,四月份又成了“盛大网络架构师”了。这小小的困扰倒还真有人关注,后来有朋友问,我 不得已又解释了一番。所以呢,看起来正确的东西,仅是换了个时间,就未必正确了。 这还是不细心。这不细心可能不仅仅是态度问题了,还有大意的成份在里头。大意了,也就失了
荆州,这个,是有历史教训的。伟人如此、神人如此,我等俗人自也不免。前两天又读到《程序 员》最近的一期,拿到杂志便给孟老师讲开了,说“你们也太不小心了,你看看篇首的文字,引 了人家阿朱的文字,其中两段的题头居然一模一样。就算是人家写错了,也不要照搬嘛”。话讲 到这里,我也就是发发牢骚,因为我毕竟被《程序员》聘成了名誉顾问,不发发牢骚人家说我没 干活。结果呢,孟老师过了一会儿不好意思地给我回过来一个消息:这篇稿子是她审过的。 哎,真是是人就出错,孟老师给我的印象是极严谨细致的一个人呢。所以,粗心大意谁都会犯,
时时省身便是最佳良方。我自拿自说,总觉得自己够谨细了吧,前些日子写了一篇稿子,给一 个学文的毕业生一看,嗯,批点了十来处错误。细节究去,人家都还是对的。所以,我这厢里 是要给我的朋友们提醒,私底下还得揪着自己的耳朵骂猪头。 当然,这剩下的所有时间里,我就来看着,那些既有的问题可在渐而渐地改进着。我改而进,人 改而进,便是共同前行了,也不枉我敲下这百千字的文章。 June 25 纪念际强纪念际强——突闻海浩网于际强兄噩耗,遂匆匆作文,以此纪念。 在来海浩之前,我就知道际强兄,但来了海浩之后,我反而不知道了。
我可以算是个疯狂的下载者,因此我的印象中有一些与下载站相关的名字,例如最早的高春辉、华军乃至于天网,也有于际 强。至于这个名字是什么时候进入我的脑海里的,我却不得而知,他来过了、留下了、存在了,就是这样。 不知道际强兄为何许人,没打过照面,没打过交道,下了许久的软件,也没给人家一封邮件道个谢。网络就是这样,关心不 关心,关注不关注都是浮在表面。如同我关注下载,只看到那些文件链接的表面,却离背后的真实很远。 来到海浩则是因为飞扬——又是一个我没见过,甚至连性别都没能确实的网友。飞扬找我来海浩逛逛,是因为那篇《纯酒》。 而来到海浩之后,我便一直只在文学版,但连这里有几个版主大概也没记得清楚,只是这么混着。在我的视线中,海浩就是 有一个不太热火,但也绝不沉静的文学版而已。以至于我后来写了一篇检讨: http://bbs.highot.net/viewthread.php?tid=105490 有一搭没一搭地来着这里,看着些些十天半月也不更新的文章,连登录的热情也难激发起来。偏巧我又不关心公务,凡在版 面上置顶的一概无视,所以直到今天才注意到那篇《纪念论坛创始人-于际强》。一刹那之间,才发现十年来在我心底一直还 活着一个名字,这个名字叫于际强,这个名字活着的原因,仅仅是因为背后真实的那个人,是那样的无私。 我突然强烈地想要了解这个人了,我知道高春辉去了金山,我知道华军被招安了,而我却不知道这个于际强,现在却已经不 在了人世,已经不能再实现他为人民服务的理想了——很多人现在看这个理想是多么的可笑啊,就如同“做程序员”现在已 经成为了一种可笑的理想一样。然而在一生努力践行它的逝者面前,一切置疑其可笑的人又是多么的可笑啊。我从网上搜到 的信息中,我了解到这样的一个真实的际强兄。他写道: ------ 但你没当过站长怎么会知道站长的难处呢?你收到过律师信吗?给人陪笑脸当孙子借过空间吗?因为放了盗版的东西被软件 公司查到网管头上,被网管像骂儿子一样骂过吗?在四十度的高温下一天内坐车(当然钱自己出)往返900多公里维护过机 子吗(我在新疆)...... ------ 而这时,际强还说道:“凡事都要有个度,偶尔公布一回无所谓了……”。这一刻,我看得到际强兄的宽容。 际强之当时的境况呢?他写道: ------ 虽然我是发了点牢骚,但我的FTP不还是开着的吗?!现在还准备再扩硬盘和升级CPU,当然还是掏自己的腰包了。你做得 到吗?我也不是什么大款,我只是个月薪不到千元的小打工仔而已…… ------ 那时是2002年,“月薪不到千元”的他还自己掏着腰包做着一个非商业的网站。这一刻,我看得到际强兄的执著。 我宽容而执著的际强兄啊,你便去了。当我知道这一噩耗的时候,已距您离开数月之久的,伤感未因时间而减,未因距离而 减,未因你的无名而减,未因我的无知而减。我之此时此刻,突地悲从中来,突起发起些些气力来,写下一段短短文字,说 说我这从未谋面的兄长,说说我们这位无私厚德的朋友。啊,远去的远去,消逝的消逝,总有一些东西留下,例如一个名字: 于际强。 一个只下载不留名的网友 周爱民(aimingoo) 2008.06.25 April 30 朋友们,我的D2之行D2开始了,然后又结束了。很快,但留给我深刻的印象。这一届D2,我遇到了一些旧的
至于克军是Who,大家去看他的相册好了。满满当当的一大柜子: 先说Hedger Wang。大概是在四年之前,或者再早一点。我大概是在做一个项目时,用到 后来Hedger就去了美国Yahoo,他去Yahoo之前我们还一直联系着,交换着旅游的照片,我
然而毕竟还是不太常见Hedger了,最没想到的是Hedger会来D2做讲师,而巧合的是我也在
既然不打算讲JavaScript开发方面的技术问题了,那么总得讲点什么。而我大概在三年前 克军当然是不了解我这样选择的背景的,不过他还是支持了我的选择。尽管我认为他和Hedger 当然,还是有一点私心的。我习惯自己做总结,对过去做过的事、或者历经过的思考做反
随后就是开场、讲演。我的段落控制得还不错,时间刚刚好。用了三个问题,把三本书送 事实上,这三本书也是一个“源、流、汇”的意思,不知道得到赠书的朋友可有留心这点
做源的有没有?有,例如每一次变革的这些先驱者们——在所谓WEB2.0的时代,你不认为 再如流与汇,实际是一个事物的常态与瞬态的关系。汇其实总是流的一部分——没有真正 很高兴还是有人从这个话题中看到了佛禅的味道,看到了我想说的一些东西。这,我已经 源、流、汇引导出的话题,就是WEB1.0是以内容为中心的。然而,接下来的话题是WEB2.0, 然而那样漫长的讲演之后,可有人想过一个问题吗?——所谓功能,难道不是内容的一种形 任何东西,简单到一定的程度时,便没人会留意到了。例如源、流、汇,原本只是水流的形
所以我不得不将我这两年多来的工作定义在UC/UCC之样的名词上。其实说穿了,所谓“玩虚 我完全不反对说“深入浅出”。然而于我自己而言,仍然在反思的阶段,仍然在“定义名词 那么UC/UCC/D2,E2,C2是什么呢?下面这张图就讲的是这个,看幻灯的朋友可以翻到第55页。 六、朋友 正好看到了图灵的总编刘江老师,便拖到一起,满天满地地找饭馆happy去了。与Hedger谈笑 哈哈。刘江老师大大地喊冤。是啊,在台湾或许是不能。但在大陆,出版机构最早都是国企 所以刘江老师便跟Hedger谈开了整个中国出版业的发源与经历,什么体资改革呀之类,也不 下午再回会场,又见了月影。在前端开发者的会议上,要是不出现他,大概就是不正常的了。 在听Hedger的讲时,Nate Koechly坐在我的旁边。他总是面带笑意的,很亲切。但我的E文 总的来说,吃了好几顿饭。台湾朋友的礼数总是很讲究,我请了Hedger饭饭,他便非要回请 所以,名字并不重要,重要的是我们成了朋友。下一届D2,我们再会。如同我最后签名的那
March 31 再会英雄因家事之扰,辞去了在盛大的工作,携妻(joy)一同来到北京。这已经是一月之前的事了,一个月来,搬家、租房、办理网络……以及我兄长在北京的一些私务事,忙得焦头烂额。现在总算安顿了下来,正这时CSDN英难会的邀请函也寄了过来。哈哈,当然得去,不过再也不是什么架构师的头衔了。 毕竟人在北京了,不必如去年一般经受飞机的惊骇,本以为可以欣然而往,但好事多磨:我忘了带邀请函了。于是joy只好再开着车回到租住处,这一来一回地折腾,到会场时已近10点。
立即被博文的海猫兄拉去:我的《JavaScript语言精髓与编程实践》也在这时做首发。有趣的是,上一本《大道至简》也正是在去年的英雄会上首发,时隔一年,正好发布一本新书。首发归首发,签售我是不敢做的(自认还不够格),不过答应了海猫做一些签名本,于是抱了一些书到旁边的会议室,偷偷摸摸地写签名。老实说,我读书时还练过五、六年字,但到现在,大概得有十来年不怎么用笔写字了,所以这书法实在烂得可以,因此,拿到签名本的兄弟不要骂我便好。
签完出来,来到china-pub的展售点:自己写的书,还是要弄本来看的。不过这付费成了尴尬事:博文的、互动出版的朋友不少,我这作者自己的首发书还得掏钱下单打折扣……这个这个~~ 我一心要当自己的第一顾客,余广和海猫兄在旁边抢着要把书送给我……俣哈哈,还是joy聪明:算我买的好吧,我要做老公的第一个读者。光当,这才都没得争了……
再见老朋友们,第一件事就是发名片,第二件事就是收名片。这次来了北京,换了联系方法,也换了个人身份,所以名片重印了。又是请好友colorme的设计:一点墨迹沁在宣纸上的效果,那墨迹特地被裁去了一部分,时时提醒着自己“你并没有那么多墨水”。这张名片可是得了许多朋友的好评,另一方面也讶异着我为何来了北京,于是乎又一遍一遍地解释…… 如此往复大概一个来小时,我也没能进了会场。待进了会场,又发现空气闷得可以,呆了一小会儿便拖了joy出来,在外边找了沙发聊天。后来发现,这沙发选的位置真的是好呀:就在厕所旁边。各位大牛大侠大仙有能耐不吃不喝,可没有能耐不上厕所,于是乎一会儿蒋涛来了,一会儿曾总来了,一会儿某某老大又来了,不一会儿,这个休息点旁边便围上了N多人然后东拉西扯不知端的…… 也不知是谁怎么着地说了声“饭饭”,随即人群便作鸦雀散了。午餐时间,跟钱宏武在一桌上,看着他超级无限好的胃口,我实在是觉得自己太亏欠了自己的胃肠。不过这个耳界眼界却是大开:钱宏武能侃能讲,思维又跳跃。我的基本结论是:他的大脑是集群的,而嘴大概是超线程,或独立多核……哈哈。
然后是下午场。下午场真正的重头戏是在两个论坛上,周前辈的讲话很强大很精彩很直接,刘韧的主持仍旧很赤膊很暴力很冒泡,各位嘉宾的表现之出色更是无需我多言,所以我也不多言了,有兴趣的狗狗一下官方新闻便好。我还是小众地跟大家白活一下闲天,例如joy如何做了博文的托儿,以及《编程之美》的八作者难题(注意不是八皇后问题)。 说到手上的这本《JavaScript语言精髓与编程实践》,其实也没有留下多久,就送给了在会场外碰见的徐建明。这兄弟总是要与众不同,去年送他的《大道至简》签名本上就多写了句“有趣的话”,哈哈今年当然也不例外。不过这“有趣的话”是什么,有心要追问的可以找他去看,这里我先卖个关子。 随后仍是跑去厕所外的休息处与一群人聊天,只不过现下这个群体中多了孟岩欧阳,话题便也跑得没边没沿地了……又不久,梅子和几位朋友一起过来,没想到的是51js里的月影便在其中,直到一会儿月影发了短信过来,才知道自己有眼无珠啊~~又失去了一次认识月影MM的机会,实在是差点悔得肠子都青了。于是又打电话邀了月影过来一起聊天,不过不过,至于月影是GG还是MM的问题,有涉及人家的隐私,大家自作自想或者到51js里头去翻老贴子好了,我这里只透露一点无关紧要的:月影真的很瘦很秀气,哈哈哈哈。 答应过月影要送一本《JavaScript语言精髓与编程实践》的,于是又让joy去买,这一下弄了两本来,除了赠给月影的,另一本也没留下多久。再后来又买一次,又买一次……乌拉,这joy是不是博文安排的托儿呀~~ 《编程之美》的作者有八个之多,这我以前也是不知的——起码没有一一地去数过,所以听到铁锋说起来的时候,还是很惊讶。周筠老师在一边帮场,说出版社的规定是书上的署名不能超过四个,而这八名作者谁也不愿意抢了功劳,于是只得署成“《编程之美》小组”。不过这样的署名,其实很难得读者认可的。铁锋随后说,这八个人署名的问题真令人挠头……我便在旁边说,再版的时候,倒是可以把它当成面试难题:如何在封面上署名而又不让八个人存在争议呢?话音还没落呢,旁边的某某老师就说了,可以署成赵钱、孙李、周吴、郑王这样,每人名字中取一个字就可以了;然后封面上做一副图,包含着八个人的名字…… 我彻底地被雷到了。因为我原本想着,要有一个排序算法或者优先权算法,然后由一套可以网络化、自维护的规则驱动着,在网上公开征集个十天半个月,最后得到一个完全客观的排名……类似于此的种种种种想法,然而最终的答案,原本可以简单得只用赵钱孙李来排排就好。哎~~然而随后我又小心眼了一下:即便是赵钱孙也有个姓氏的排名啊,这个排名又如何顺序呢?再则图形也有个方位呀,比如上下左右也是分主客的,这又如何排座次呢?——直到英雄会结束,这个问题都困扰着我,恨只恨没能拿这个问题请教下下各路神仙,没准数据库有数据库的解法,BS有BS的路数,总比眼下拿了个赵钱孙方案,心下惴惴惶惶的好。 玩笑归玩笑,就当我顺道儿给《编程之美》做个广告好了。再说回英雄会,其时已经是宴散了,看着各路山寨兄弟、江湖大佬、豪侠奇士们依稀散去,回顾周立功老师所讲事业之难、英雄之艰,彼等种种啊,哪又能是一个会场、几句笑谈可以讲得全的。
是时概叹吁唏:昨夜方泸闵,此时已京中。将相王侯府,笑谈作一梦。回见来时路,山峦几多重。俯仰清声处,执手是英雄啊。不过感概归感概,照例地还是拖了几个老朋友,找了个小馆子,点了些小酒菜,谈笑间不是微软就是IBM。哈哈,怕也就在这酒桌之上,还能寻回一些程序员的本色味道来罢。 又,拍的照片都被joy征用了,有兴趣的不妨去看她的blog: December 10 楚人失之,楚人得之这两天的MSN签名写着:失之,得之。天道。
这来自于一则寓言,
楚王在云梦泽打猎,不小心把自己心爱的弓丢失了。左右的侍从立刻要去寻找。楚王制止道:“楚人失之,楚人得之。不必找了。”孔子听说此事后评论说:“为什么要把‘楚人’与‘人’区别开来呢?不妨说:”人失之,人得之。’这样就符合仁义了!“老子听说了孔子的评论后说道:”为什么要把‘人’与‘天地’区别开来呢?不妨说:“失之,得之。’这样就符合天道了!”
我深以为然。但这两天想,如果是佛陀来评论呢?思而想之,觉得大概佛陀会只着一字,曰“之”。因为物之从属或时时改变,而其本属从未因得失而改变。得与不得,失与不失,与物无关,亦非关天道。所以,“之”就够了。
于是又去Google之,果然佛家对此亦有评论。明朝的莲池大师在《竹窗随笔》中评价说:楚弓楚得、人弓人得,仍“不能忘情于弓”。说的是“弓乃身外之物,本来就无所谓失,也无所谓得。但看到这一点仍然不够,因为这样仍然是‘不能忘情于我’”。
忘情于弓、忘情于我,正是佛家四大皆空的境界。如此而来,便是一自由自在的“之”字便足了。 July 29 理发老实说,我不喜欢理发。与发型师没太大关系,主要是那个电推子,一动起来我牙根就痒痒,就象指甲抓玻璃的那种感受,所以总是能不理就不理。
有一次总算碰到一个发型师,问他能不能不用电推就纯手工剪。人家答应了,一手好剪子下来,真的好爽。中间就问到为什么手工剪发的都没了。人家说,剪子太贵,好的发型师的剪子就更贵,得上千块的。但是纯手工剪的话,废得太快,剪几次头,还不抵个剪子钱。——当时那个我呀,瀑布汗~~结果付了十块钱,走了。下次再去,那个发型师就不在了,原来是人家临时请来串场的~~~难怪水平是高。
这么些年了~再也没怎么遇到好发型师。当然,我也不值为那几根头发花上几十几百的~跟一把剪子较劲,不划算。再加上,现在前额的头发越来越少了,也越来越不舍得剪。趁着现在的样子还不象谢顶的,多留几天是几天吧~~哎~~~ July 09 能力要成体系这两天关于我那篇“架构师的能力模型”的BLOG上的讨论终于停歇了,所有的几十个回复我都一一看过。大多数不是在第一时间看到,也差不远了。正好CSDN的blog又新添了回访的功能,于是一一回访,看了看批评我的,或者赞许我的都是些谁。
但是我一篇也没有回复,回访时也没给人家留个信儿。以前的或许是懒,或者是没想说的,这次却不是。这次真的是故意不回。这有原因。
今天要讲这个话题,一方面是因为这篇“架构师的能力模型”的blog,另一方面则是看到了另一篇名为“真的汉子”的blog。后面这个,稍后会再讲它的关系,我们这里还先说我的这篇博客所反映出来的信息。
我调查了一下回复者的先后,大概是越到后面,赞同的或者基本赞同的就越多;越在前面反倒是批评者众。这个顺序很重要,因为它正好反映了一种架构师能力,就是谨慎。
我们先来说这套“架构师的能力模型”的图。批评者要么认为这套图在求大求全,是超人模型;要么在认为这是不切实际,追求完美。其实都不是。首先大家对我所指的“架构师”要有个概念。我们很多人都有设计工作,比较做数据库设计或者具体功能的设计。这些设计中也有“架构”和“框架”的概念,例如插件架构/框架。但是,这是“架构设计”,不是“架构”;是一种技术,而不是一种能力。在我的架构师模型中,这些大概只占到“实现能力->设计能力”中的很少一部分。
因此先强调我说的“架构师”不是指“一个能做架构的人”。前者是把架构师当职能,后者是当工人。
那么我到底说的是怎样的“架构师”呢?comiunknown给了一个稍稍接近一点点的答案:
--------------------
1、3年的coder;
2、1年的客户沟通工作;
3、1年的team leader;
4、无限的学习、思考期,学会分析别人的系统,思考为什么这么设计的原因,如果
让我来设计,那些地方可以改进;
5、还要有一定的天赋/灵气,能够从纷乱的客户要求中挖掘出真正的需求。
--------------------
后面两条我基本同意,事实上也言及了我给出的能力模型图中的几个分支。但前三条,却正体现了一种行业积弊:浮躁。连Peter Norvig都在说“十年学会编程”了,那么我们那些“招聘五年开发经验的Web架构师”的小广告是不是该撤了?
那么,我们那种两年三年开发,或者从某某学校毕业就想当架构师的想法,是不是也该放下了?
然而,我也得承认有绝顶高手。大家智商不一样,没准儿Peter Norvig要十年才学会编程,某些人三年两年也学得会、学得好。当然了,这个我说服不了大家。但是要清楚的是,我们在这里说“架构师”,而“开发能力和设计能力”只是架构师能力的很少一部分,即使有人比Peter Norvig(或其它更多的大牛们)更牛,那么起码也不能说自己“学会写程序”就成了架构师吧。
还是没解释“什么是架构师”对不?当然。我就来说说“什么是架构师”,而什么又是“做架构”。
做架构差不多就是画图纸。象UML这样的东西就是制图元素,基本上你能用好一些建模语言,能构画出一个房子的基本骨架来,就是“会做架构”了。这些东西在学校能学、书上能教,照猫画虎个三年两年来,没有虎的威风,也有虎的样子的。这在“能力模型”中也有,大概在“实现能力->设计能力->设计期语言”、“实现能力->模型化”以及一些其它很小的分支里头。
而要有虎的威风气势,这起码要看过虎,而且要有面对真虎凛然不慎的心胸。在架构设计中,这样的能力也可以先从学习中来找,这是模型中“实现能力->设计能力->了解既有系统或模型”的主要内容,在“实现能力->设计能力->设计评估”中,也有大部分内容是关于这一点的。
在“设计评估”里有一句“懂得欣赏的才是艺术家”,我们这里在说让你学会欣赏的“法子”,却不见得你有品评者的心胸。所以类似于“学会肯定别人的设计”这些也成了你的能力,而你应该注意到,这里的“学会肯定……”已经不单纯是技术能力的范畴了,它已经涉及到你的性格修养。
当然有人说“架构是一门艺术”。作为艺术性格很强的高手、专学者或者“精英”,很多人并不会肯定别人,而是拘于自我认为自己是超人。这样的人中国自古就不缺,也有善评称其“雅士”或“独特”的,其艺术作品也大多成就斐然。但是有这样品质的能力,虽然不能说不好,却一定不能拿来做架构师。
因为他只会“做架构”,或者说只能“做非常好的架构”。却不懂得如何“推行架构”。
架构真的是“好不好”的问题吗?如同我对工程的理解一样,架构的问题的根源,也并不在于它是不是完美或者漂亮,而是在于是否合用。因此,架构师必须对实施架构的团队,以及实施的过程有充分的了解,知道他们的能力缺陷,知道实现过程要消耗的资源,清楚每个环节可能的故障以及先兆。只有这样,架构师才能设计一个让这个团队能实现,而且在实现过程中能受控的架构。
要知道,你作为架构师被请来,不是画几张图纸交给项目经理,说:你们去做吧,做不出来是你们不会做。即使你可以身体力行,在这个团队中教大家、培养大家,那么公司的开销呢?风险呢?这些东西难道就不考虑了?项目的周期因为实现的复杂程度而无法控制时,项目就死掉了。那么,追根究底来说,是不是架构师的问题?是啊,你为什么会做了一份“不合用”的架构呢?
所以这一部分能力,是在要你的开发经验、团队经验以及用人识人的经验中去找的,这些大概包括在模型图的“实现能力->设计能力->了解你的主要沟通对象”和“实现能力->架构推行”中。
你看我们说了这么多,还只讲了几个小的分支,主要还是在“实现能力”中打转。大多数人的问题是:我们为什么要了解“决策背景”,以及类似于“谈判”、“沟通”、“风险”等等这些方面的能力呢?
我们说过“做架构”不同于“是架构师”。问题的关键就在于规模。如果你只是为一个几人小组而设计一个架构,那么没关系;大概你还会是实施人员,因此更是没什么问题。但是,“架构师”应该面临的是大规模项目,是百人、数百人规模的团队的实施工作。架构师身边,除了具体的实现人员,还是更多的设计师、项目经理、技术专家、老板、客户……面对这些问题,你还能说“我会做架构”就够了吗?
要知道,上述的每一个角色,都会对架构造成“伤害”。我在做架构实施过程中说得最多的,就是“架构伤害”这个词。因为每个角色都会对架构有疑问、有想法。对于公司、客户高层来说,即使你是最权威的专家,在没能把你的设计讲述清楚之前,他们也是不会盲目地通过项目的。因为专家拍脑袋的教训,从(包括传统行业在内的)历史上来看,真的是血淋淋的。
架构必须面临的是决策者的思想以及方向,你得明白他们为什么是要做一个架构,希望这个架构支撑多长时间周期的持续开发和经营。然后,你得抺平这些“高端的思想”,把它变成一个可以具体实施的方案,因为具体到开发人员来说,他们是以完成任务为目标的,而不是去憧憬那些“高端的思想”。
作为架构师,你要站在一个既务实也务虚的角色上,你得理解项目经理、产品经理和开发人员最切实际的实施方案,也得了解战略决策者们为将来做出的规划。重要的是,架构师这个角色,对体系的保障正是面向这些规划的——你看看,“可持续、可移植、弹性、集成性……”这些不都是对战略的阐叙么?
现在你会还认为那些“超人能力”是不需要的吗?你还坚持三年两年就可以成就一个架构师这样美妙的的构想吗?当然,如果你要在一个小规模团队中担任架构角色,实现一些架构的设计工作,那么固然是行的,但请将眼光放开,想一想我们一直为大型团队而烦恼的那些问题……国内的软件行业,在大型团队上来说,真的是没有多少积累和思考的。
我们现在来说那些很快就回复的,以及回复时对上述问题根本没有思考的人朋友,他们犯下的,不正是这幅模型图最上面的那个分支中表现出来的问题吗?在“学会交谈”中就清清楚楚地写着“学会听”和“不要急于表达,以及肯否”。在这个例子中,真正的问题是:急于表达可能是个性问题;而急于肯否,则关乎于性格修养了。面临一件事物时,过早的肯否,其实是使你失去了更深地了解它的机会。
我们现在看到的这幅“架构师能力模型”,其实表达了个人能力、性格与心理素质的一种组合,这绝不是单独某个方面的提高或者补强。作为一个“工作型角色”(例如开发人员)来说,大要在技术方面擅长就很好了,专精更是不错。这也是我们技术角色的一贯思维。但对于“职能型角色”(例如一定管理职务或者管理链条上的中间环节)来说,“能力要成体系”就是重中之重了。
所以这又变成一个角色问题了。我们要从工作型角色变成职能型角色(例如做技术变成做管理),那么根本之处,便在于从专精能力变成有体系的能力培养。这就是我开始提到那篇“真的汉子”的博客文章的原因。周筠老师在讲她的这篇博客时说,她的一些编辑在面对MSRA的这位作者时,表现很紧张、很怯,基本上已经到了“不敢接微软那位‘汉子’的话”的地步。我听到这个故事的第一反应,是说:
--------------------
Aimingoo said (0:36:04):
这与胆量没多大关系。
Aimingoo said (0:37:32):
1、承认错误 2、据理力争
就这两条,就可以跟这个人打好交道了。
但细想下去,我又接着说:
--------------------
Aimingoo said (0:38:26):
随便说,第三条是“有礼有节”。这看起来是外交辞令。但是真的很有用。因为据理力争是必要的,但把握不好尺度,事就会砸。
而对于很多人,这三条是一条一条过来的。
imingoo said (0:40:43):
先是做不好承认错误,什么事都认为自己对;接下来做不到据理力争,是性格软弱的一面;
最后是不懂礼节,是缺乏教育的一面。
这三件做好,就算业务能力上有欠缺,也是人才了。
:)
然而我们看到,这里提及的三条,却正是技术人员,以及我们前面讲到的那种“艺术性格很强的高手”通常的问题。换在这样的故事里,就是技术再强再好,也不会跟这位先生打好交道。所以,这真的是要当成“个人能力体系的不足”来看,而不能单纯地“练练胆量”就可以了。
在我们讲“架构师能力模型”这个话题时,很多人认为这个模型求大求全,然而正是他们应该“太大太全”的那一部分能力是他们所缺的;很多人认为这是超人模型,然而这正表现了他们对“架构师”这个角色(而非“做架构”的能力)的盲目。同样,面对周筠老师所说的这位“汉子”,那些露怯者是不是“有一部分能力缺失”,或者对自己所处的“职能”(而非技术或职业)角色有些盲目了呢?
所以能力的体系问题,爱立信的这个模型是对的。随便说,这个三角模型将“个人内在素质”放在最中间,而这正好是我在“架构师能力模型”图中基本不讲的,这个问题便留给大家去思考好了。正所谓省是自省,得是自得,做人便要越活越浅,知已不足方能厚补,从而显得有力。而“做架构师”以及“做好职能角色”这两件事,合在一起便是一个自省自得,自我修养的功夫。放在表皮来看,用我常说的话来讲,就是“能力要成体系”了。
===============
我的其它相关文章:
May 17 《大道至简》的幕后故事:终结篇、勘误和PDF下载《大道至简》的幕后故事共写了七节,其中的前五节都已经用BLOG的形式公开在CSDN上了。这里一次性的将全部的章节放出来,并做成了PDF文件。敬请下载。;) 《大道至简》幕后故事的全文PDF下载地址: http://groups.google.com/group/qomo/ 下载文件: 此外,在这个PDF版的文件中,还添加了前后两版的“愚公移山记”作为附录,大家可以对照着看(因为撰修杂事篇》中讲到了很多未修改前版本的内容)。 PDF中也将《大道至简》一书中的“再版前言”公开了,这主要是因为里面提及到了第二版新增了哪些内容,以及这些内容的安排与组织。这对第一版的读者来说,是一个不错的参考。我当然希望大家能够购买第二版来阅读。——这除了是不让出版社亏本的广告词之外,也是我个人希望更多人了解到我的一些新思,以及文字上的增改。 《大道至简》添加的两章三节的目录,可以从china-pub的目录中看到,为了方便大家对照,这里也公开一下。
最后,由于部分读者可能不愿意阅读这些“乱七八糟”的东西。那么,我想至少一份《大道至简》的勘误是对读者有益的。因此,我将这份勘误抄在下面,如有其它错误,请与我联系,并致谢意。 《大道至简:软件工程实践者的思想》勘误表
May 01 《大道至简》的幕后故事(5):“愚公移山记”军事谋略篇引子 1. 端木长出山第一策:藏器待时
==========
京城宜见晋王把公输同关了起来,要问死罪,急急地跑回来求计于端木长。一方面,他说公输同获罪,是当年两家的老爷子没有阻拦工程实施而犯下的错。这被端木长一顿批驳,说先辈人这样决策,以及今天公输同判有罪,都是世局变化的缘故,因此不要妄议先人的得失。况且,端木一家早就把钱财分散了,而这个目的,正是为了今日能用上它。
京城宜一听当然高兴了,但还是没明白其中的端倪——当日藏钱与今日用钱,以及搭救公输同有什么关系呢?
端木氏藏钱之时,是为了避祸。谁都知道端木一家是靠着愚公挖山起的家,而且也是愚公家族的支持者。话说树大招风,等到愚公一家有祸时,端木一族必然大受牵连。追根求底地查起来,要挖路的、要扩建的,还都是端木氏的肇因,同愚公一样定个死罪,也不为过。但反过来,如果端木一家无钱无权无势,等到公输同都封了大官了,端木家却只留下了吃饭的家底儿,估计也就没人来找事了。因此端木氏将钱财分散到各地,从而“富而不显”,是为避祸。明知大祸将至,明哲而保身,谋定而后动,至少算个聪明人。
而接下来,端木长又说藏这钱是为了今天来救公输一家,这救又是什么救法呢?是晋王下令要杀,你送上金银人家也不稀罕,说不定还招来罪祸。因此钱尽管是要用在救公输同身上的,却不是行贿受贿这样简单。固而这时端木长开始在冀、鲁、燕、齐这些藏钱的地方奔走,但却没有人知道他在干什么。
端木长还在等待一个时机。什么时机呢,也就是“(晋)王三伐广野,未果”——晋王数次发兵去征讨广野,却搞不定,这才是端木长要的机会。这个机会有什么特点呢?首先这时晋王的锐气受挫,急需解决广野的问题,因此听得进良言;再则数伐广野,军需财力都噬待补充。这种情况下,端木长赠金资军,才有价值,也才最为有利。
即使如此,端木长也不能送去十车黄金、三军之甲,然后就说:“晋王,你放了公输同罢。你若不放,我这些东西就不送了。”换作商业经济的社会,或许还行得通。但放在那个时代,这种逼宫的事,是做不得的。果然,当端木长献上黄金、甲胄,紧接着说“公输一家不是存心通敌,希望能宽恕他”的时候,晋王只消一句“你就不怕我也责你通敌吗”,就几乎将端木长陷入死局。
这时,我们才看到端木长藏金的真实价值。端木长说:“如果我通敌,那么我又何必来资助晋国的军队呢?”这一步最取巧的地方在于:现在晋国打了败仗,我还来资助晋国,那无论如何也不能说我是在通敌呀。——退一步来讲,如果端木长在晋国打败仗之前就拿出来些东西来,就未见得有这个效果了。
这才是端木长“藏器待时”的真实目的。这个目的就是在这种局面下先求保身。因为如果不能先洗脱自己的“通敌”之疑,那么还未能使公输同免罪,自己便要先被砍头了。所以端木家的黄金,其实并不是直接用来救公输同,而是先用来正言正身的。
果然,晋王神情稍见缓和(意稍懈)。
2. 端木长出山第二策:授人台阶
==========
三十六计里都是制胜之策,或是败中求胜,或是取势求胜,但是没有一个法子让别人占得便宜自己又不吃亏。
这看来起是兵家之忌。因为打仗嘛,总是趋利的,哪能便宜了别人。但如果你让端木长用三十六计的法子跟晋王干仗(如果那会儿有这三十六计的话),最终掉了脑袋的一定是端木长。因为晋王就是晋王,跟晋王谋利,可以称勇,但未见得是智。
我们看看端木长“正言正身”后又是怎么干的。他先用了“自相矛盾”这个故事,来说明两个事物之间的冲突,并不是事物本身导致的,而是出自参与者的主观判断或假设。因为矛、盾自已并不相攻,是你自己要让他们相互击打,这才成了解不开的问题。端木长据此推论出“广野者,取道而伐,据关而守,若守若攻,唯在王尔”。也就是说,广野挖开了,也可以是有利(于晋国讨伐别国)的。但这个有利与无利,全在于晋王对这件事的判定或者假设。
接着,端木长又设下了一个陷井。他说:大王今天因为他而烦恼,明天则可能因为他而欢喜。那么如果你今天杀了公输同,今后又怎么来奖赏他呢?换而言之,如果你以自已的喜忧来论赏罚,那就不是一个好的君王了。
这个陷井有两个目的。一方面看晋王如何解决这个反诘,另一方面则给晋王留下了一个台阶。这个台阶是:如果你放了公输同,反倒会是一个不以喜忧论赏罚的明君。
显然,这种局面下晋王放了公输同也是可以的。但是,晋王显然不是那么好糊弄的。因为他其实也发现了端木长的论辩中的问题:如果不以当下之事来论得失,那么就无所谓得失了;如果不以当下之事来论赏罚,那就没法论赏罚了。——很显然,看起来是塞翁失马焉知非福,但如果这样治国,那么杀人者也可以无罪:安知被杀者明日是否犯下更大的罪恶?
所以晋王就只问了一句:不审察于此时此事,那么刑法又有什么用呢?又或者此时没有战争,那么甲胄的作用就不存在了吗?
显然,晋王并不想顺着端木长给他的那个“不以喜忧论赏罚的明君”的台阶下来。因为顺着那个台阶下来,他反倒是做了一个被人忽悠的傻子。晋王抬出法典,意在说法典便用来治“此时之罪”,便如同甲胄用来防“它时之敌”一样,不因为时效而度有无。
端木长这时说出来的话,便有些讨价还价的意思了。他说:那是你不会用,要不然让我来试试,如果我不拿甲胄就搞定敌人,那你也能不拿法典来治公输同的罪吗?——哈哈,话的意思是这样子,但端木长说话却是客气得多了。他说“惟在用法而已”,便先设了一个台阶,就象是说,法典是人制的,也是人用的,用得不同便效用不同。
这个台阶看起来好象没有开始那个台阶漂亮。但这也是一个台阶,它的第一重要之处在于,这时正好需要这个台阶:晋王急需解决广野的战争问题。第二重要之处,则在于这个台阶出现的位置,是在一个论辩的后面。就如同说我们在讨论问题,你总要给我证明自己的论点的机会吧。这便成了晋王给端木长的一个机会。原本是端木长跟晋王讨价还价的事,换了一个场景,便可以看着晋王有胸襟气度,让端木长来证实他的观点。
所以事实上这个台阶比刚才那个台阶更高明。第一个台阶是给傻子的,第二个台阶则是给聪明人的;第一个台阶是给那个见眼前之利的,第二个台阶则是给谋治国之术的。
晋王是聪明人,杀个公输同有什么用呢?解决晋南的问题才是关键。公输同有可杀之罪,也有不杀之理,何况端木长不但给了“不杀之理”,还给了“不杀之利”。
于是,“王诺”。
3. 端木长出山第三策:借势谋子
==========
我们刚才说的“授人台阶”,是造势之策,用在二者取利的场景里。但接下来端木长的问题是他还是一介草民,人轻言微,做事时必有所碍。而且,他要做的事是不以兵戎而弥战端,这个事用鼻子想也能想出来:是游说。但人家一国之君,三军之帅,岂能随便由你游说去了?
这话其实也不全对,因为那时也有一介草民跑去自荐,而后被委以重任的。但这取决于你要做的是什么事,端木长在这里要做的事(具体的事下一小节再讲),就需要一个合适的政治身份。
端木长这次不再象前面准备黄金、甲胄那样秘密行事(无人知其事),他直接向晋王陈述说:“你在曲沃定都,是要镇守西边,而广野却象犄角一样远在东边。但你去东边讨伐广野,西边的虞、魏这些国家又来骚扰你,这是你不能取胜的根源。”这一番话一针见血,很见军事根基,我们前面花了一大堆文字来讲军事地理,其中一半便是为了说清楚这句话。简单的说,就是“左顾右盼”,所以打不胜。端木长这番推论的目的,是要推出一个结果:打不胜就先不要打。只有这个条件先成立了,他后面的“游说”才行得通。
晋王果然认可。接下来端木长的计谋,便是说在邘国的更东边有雍国,“与其交好,以共谋邘”,那么晋国就安全了。这里的关键,并不在于这个计策本身有多好,因为其实没有谁能一下子就听晋国的话,一起去打邘国,所以“游说得成不成”还很不好说。但“游说”则是必然的。
游说之势一旦形成,端木长可以顺理成章地拿到一个身份:使臣。在这一策上,端木长所谋的,未必是某个计谋得到晋王的许可,而是形成游说的形势,并合理的出使雍国。因为使臣是国与国交往的代表,使臣出面是代国而言事,这是至关重要的。
端木长借势谋子,所谋的不过是“使臣”的这个身份。那么这个身份又有什么用呢?
4. 端木长出山第四策:无中生有
==========
而现在,端木长已经得到晋王的信任,他必然要找出个法子,来解决晋南的问题,否则是说破天也没用的。他面对的局面,是各各争利的战争;他能用的办法,不过是游说而已。
端木长游说雍国,看起来有点象政治上的“远交近攻”(也是三十六计之一),但事实上略有区别。因为端木长的主要目的,在于“衡势”。他并不打算交好于晋南,也不打算征讨晋南,他的目标只是使晋南的力量相对平衡,互相牵制或者消解,不来攻打晋国就好了。
端木长使雍去了,他代表是晋王的意思,他向雍王进言说:“跟我们一跟打邘国去吧,邘国好呀,有粮食有土地。”但雍王会答应吗?
其实雍王答应与不答应并没有关系,因为端木长真正要做的是“令京城宜往邘”。京城宜去邘国看来就没有用什么身份,因为这里说的是“往邘”而不是“使邘”。京城宜跑去跟邘王说:我从东边来啊,我看见雍国的人都热情高涨,等着你们跟晋国打仗,你们打疲了,雍国就好乘机来攻打邘国了。
注意这里京城宜没有什么身份,因此他就是一介草民。他不过是从东边(的雍国)路过,看到了这么一些现象,为邘国感到担忧,跑来通风报信来了——这看起来很合情合理。如果京城宜从晋国来,那么邘王就不免猜疑了。当然,即使如此,邘王也不会就信了这个草民的话。因此还是要打探的。果然,“未几,刺得晋人果欲助雍伐邘”。这里的“刺”,就是刺探。
所以,端木长出使雍国,要的并不是雍王答应攻打邘国;京城宜去报信,也不要让邘王真的相信。但是当邘王真的打探到一个晋的使臣已经在跟雍王谈联盟的事时,京城宜的假消息也就有了真的成份,而一旦邘王认为雍国要助晋国了,那么雍国也就非攻打邘国不可了。
端木长无中生有,促成了邘雍之隙。从此雍邘互制,瓦解了广野之盟的中坚力量。但是,原、苏等国还在一侧,他们还需要一个撤兵的理由。况且他们不撤兵,安知邘国会不会利用联盟的优势,先灭了雍,再举伐晋?
5. 端木长出山第五策:狐假虎威
==========
端木长接下来要解决原、苏这些小国。他所倚仗的,却首先是地理条件。
我们前面讲地理的时候,已经把原、苏、单等国标在上面了。大家会发现这几个小国家都不远,事实上他们也都不大。但在它们更往南的地方,有一个重要地方,就是洛阳——图上只标了“孟津”,洛阳在其,相距仅13公里,比孟县到沁阳的距离还短2/3。
洛阳是当时周朝的东都,是用来安定东方地区的王城。原、苏、单这些小国其实都是东都王城的“畿内封国”,也就是王城所属领地内的封地。当王城有危险时,他们是要保护王城安定的。因此原、单这些地方,其实都封给了与周王朝为亲近的家族或王室——苏国却并不是王室内亲,而是降国,在原地上向天子称臣的。
这其中最至近的,就是这个单国。单国的封王是姬姓,也就是周朝天子的亲族,在数百年间、二十余世为官。在许多事务上,周天子也要听单公的劝谏。因此,单公之重任,便在于安定像苏国这些小国,以及镇守东都。所以“愚公移山记”中才说“(单)公辅天子以定王畿”,说他是安定王城的,这与史实相符。
显然,以单公的职责来讲,他是不希望王城周围打仗。因为打来打去,总会有一家坐大,有一家坐大就会危及王城。王城周边,最好就是些小国家,随时可奉天子令调遗。如果换成了象晋这样的大国,那么随时就有兵发王城,挟天子令诸候这样的事发生。
所以端木长出使单国,就说了一句“若晋兵决意向南,则必贻天子忧”。单公立即就明白了其中的意思。晋国不想往南方打仗,打胜了天子要怀疑;打败了自己又吃亏。所以端木长就说:广野的战局已经危害了晋国的利益了,我们如果真要打,到时候单公也没法子交待的。
单公既是重臣,既是留在这里守家园故土的,那么自然能得了天子之助。周天子令出,原、苏这些小国便也不敢在王城里征战不休了。
单之小国,兵不足以征,将不足以守。端木长出使单国,用的是王城安危的名义,要的是单公与周天子的关系。单公假天子之威,所以原、苏从此不敢再盟,也不敢再伐。广野的局势,就再无忧扰了。
6. 端木长出山第六策:以饵啖之
==========
果然,广野安定下来。晋王大喜,便要赐端木长的官了。按理说,端木长解了广野之危,愚公的事情也就算有了着落,不必要费心了。
但端木长却说:“虞国和魏国的危险还在旁边,所以说现在不过是苟安一时罢了。”这里面还有一层问题:如果虞、魏主动来打晋国,又怎么能保证原、苏这些国家不借机在广野分一杯羹呢?今日有天子之威撑着,哪天局势乱了,晋南既不还是麻烦?所以端木长看得还是长远:晋南要安定,不能偏安一侧,而要解了“左顾右盼”的劣势才成。
当晋王再次求计时,端木长说了一句经典的话:“邘王性疑,予故制之以诡。而虞王短视,犹待以饵啖之。”这其实就象今天的心理分析一样,端木长一言道出了前面“无中生有”计诈邘王的本实:如果邘王不疑,那么那个计策就不会有什么效果。同时,他也道出了虞王的弱点:短视。他的策略是“对短视者,就用眼前之利来蒙蔽他”。
接下来端木长“潜使”京城宜去虞国。潜使的意思,就是暗中派京城宜去。这样一来,京城宜有受命,却没有身份。没身份有没身份的好处:京城宜反而变成了虞国请出的说客,要来游说晋王了。
这是怎么做到的呢?
京城宜先给虞王说:打晋国,对虞国来说是无利可图的。因为大家都要抢的地方,就难于长久占领。要想长久占领,就得有足够充沛的兵力。然而“虞无一师之兵”,也就是连几千人的军队都没有,可见虞国之弱小。这一点点兵力,打胜了的时候,守不住;打败了的时候,又抵挡不住晋的反攻。因此,战争对虞国来说,是不利的。
这里京城宜就利用到了虞王的短视。简单的说:虞国现在兵少将寡,但如果在战争中争取利益,扩大地盘,那还是有机会由小渐大的。虞王短视,也就没有这种开疆拓土的雄心,所以不这样想,也是自然。
接下来,京城宜又说:“你现在帮魏国打晋国,其实是拿钱去资助敌人,让他来打自己。”接来下,京城宜又解释到:“晋国在虞的北面,于南而言,虞就象晋的脚一样重要;虞国在魏的北面,于北而言,虞就象魏的咽喉一样危险。”这个解释利用了中国地理条件中的“北高南低”的特点,因此当国家处于北面的位置时,是宜于南下攻伐的。所以呢,当晋国要攻打魏国时,虞就是要塞;当魏国要打晋国时,虞就是险关。
那么形势自然就明朗了:晋国必然要保护虞,而魏国必然要除去虞。既然如此,虞国现在的所为,不就是帮着外敌打自家人吗?
这下虞王就慌乱了。于是,他听从了京城宜的计策:跟晋合好,以魏为敌。
这里的虞王还是短视。因为一旦魏为敌,那么虞岂不成了晋的先锋?如此,虞常有战损,何来发展?没有发展,何来南图。况且一旦晋得以休憩,刀兵南向之时,虞岂不又成了危及晋国都城的咽喉?几百年之后,虞王受了晋王的厚贿,让晋王借道去讨伐南方的虢国,然而在回来的时候,却被晋王顺道灭了国。这就是短视者的悲哀之处了。
这个故事,我也写到了这篇文章里。“借道伐虢”的典故,变成了端木长料事如神的佐证。然而真是端木长料事如神吗?端木长就说了一句话:虞王短视,犹待以饵啖之。
看得到眼前的饵,看不到饵后的钩,短视者之所见,方寸之广,毫厘之远。然而兵无常势,“势”的变化,短视者何能得知。故而虞王看不到变化带来的后果,一厢情愿地认为跟晋修好,晋便会庇护于他。在我这篇故事里,只过变成了帮助晋国戍边守南的一个庸国;而在真实的历史中,虞王被灭了国,变成了晋王的奴隶。
7. 上者用势
==========
构思“愚公移山记”这篇古文时,我就知道端木长是整篇故事中最精彩的人物。但我不知道自己为什么,以及怎么能把他写得精彩。我只是自顾自地去写。
写完这篇古文时,我发现我为他花去了1/2的笔墨,而且他的出现,使得一篇原本讨论工程的文字,在这里变成了军事与谋略。而我,却并不清楚发生了什么。
我的意思是,我不清楚到底有什么本质上的变化。
这篇古文定稿有半年了,我自己还在一再读它。京城氏所写的《观势》之十势,被我的一个同事经常念在嘴边。而我却一直在想,京城氏最后的一本书,却是《趋避》。势的用法,势的创生,却都是“趋避”二字可概含的么?
端木长站在一个运筹谋划的高度,他的眼界里并不是几车黄金的得失,也不是游说某国的成败,他看到的是局势随着他的运作而发生的变化。端木长时而进,时而退,显时国公将相也听从遣度,隐时行于各国而无人知其事。
我所见的端木方公,或借势,或造势,或顺势而为,皆是在势中取利。未见十势的形态,也未见趋势的法式,但端木方公总是游刃有余,尽在算中。
用势者,知势而用,知用而势。
(这一节,写到这里的时候,我却是一个字也写不下去了。)
April 30 《大道至简》的幕后故事(4):“愚公移山记”军事地理篇引子 ========= 在前面我们已经讲到过“愚公移山”中的人物、事物,并且预告说现在这一节“军事地理”将非常精彩。但现在,这个精彩看来要打个折扣,因为这一小节只讲军事地理,不讲谋略,因此便只是一些背景性的文字交待,喜欢读的便读,不喜欢追根究底的,跳过去也可。 军事策略总是要与地理、环境等因素相关的,因此如果不先交待这些,那么策略也就讲不清。但所涉的国、域、地名和位置信息等都是古代的,所以就写得罗嗦了。大家姑且放开心情,当作历史书看看罢。 下一节将是“军事谋略篇”,那才是重点。:) 1. 愚公到底是哪里人 ========= 在开始写“愚公移山记”之前,我最先做的事是查地理书,以搞清这个太行、王屋的位置。所以我在便写了一篇“愚公到底是哪里人”,以讨论这个问题。 http://aimingoo.spaces.live.com/blog/cns!F9303C43D5CEAFB3!385.entry 需要强调的是,我们要想弄清的是神话寓言中的“太行、王屋二山”,在未被愚公移开之前是个什么样子。因为“愚公移山记”是要基于这种地理状况来展开故事的。 但大家都知道,《列子》中的愚公移山只是一个神话寓言,所谓“太行王屋,二山本一”原本就是当不得真的。那么,怎么解决这个问题呢?
《列子》中说太行王屋原本是在“冀州之南,河阳之北”。这冀州,包括现在河北省、山西省、河南省黄河以北、辽宁省辽河以西的地区。书中所说“冀州之南”,当是指山西的南边。而河阳也是地名,就是如今河南省孟州市(偏西),河南之意,即是指黄河之北。
这里,文章用了两种确定地理位置的方法。“冀州”是“九州”之一,是地域名,而“河阳”则是一个确切的地名。“九州”指的是古代对中国疆域的九个大的行政划分:扬州、荆州、豫州、青州、兖州、雍州、幽州、冀州、并州。其中冀、豫(主要是指今河南地区)的地理位置如下图所示:
为了对照这个地理图,我在图上确切的位置标上了“河阳”。注意这张图上的“冀州”南边是以黄河为界的,而“河阳”这个地名便有“黄河之北”的意思(我国自古称山的南面为阳、北面为阴,河的情况与山相反:南面为阴,北面为阳)。因此从这张图来理解“冀州之南”,其实的意思是在冀州的南部地区,但还未越出冀州的边界。
接下来的问题是原文中说“方七百里”,这个七百里是多大呢?在我以前的考证中,说“太行山,北起北京西山,南达豫北黄河北崖,绵延800里”,这其实是不对的。因为这里说的是“太行山脉”,而古人并没有山脉、山系这样的地理概念。古人说一座山,便是一座(最多也只是包括它周边的一些地方)。那么古人说的这个大行山,就并不是今天说的太行山脉,而是某一个确指的山。
这还得从另一处考证说起。古代神话中所说的太行,是指《山海经》中的太行之山。《山海经》中的这座山,又得到一个名为“山海图”的图中去找。该图(也叫天下图)也是有的:
这个太行山的所在地,有三种说法。其中,汉书地理志则两太行,懋王县(野王县、河内县,今河南泌阳)西北有太行山,河内山阳县(今河南修武县之西北)西北有东太行山。而现今的地理学,除了说太行山脉之外,还以山西晋城县南的太行山(山顶为天井关),作为山脉的主峰。我们把这三个太行山在现在的地理图上标志出来:
这三处在地理位置上,大概只差了二、三十公里。我们大概可将晋城县南的“天井关太行山”作为愚公移山之后的所在,但以野王县西北的太行山就不妥当,因为它正好在河阳的正北。这座太行山在古地图中也是有标注的,例如明代的《中国十三省图》:
此图(局部)中间便是“大行(太行)”,左下位置便是“王屋”。而左侧、下侧黄色带状的便是黄河了。
至此,我们说清楚什么了吗?没有。我们的问题还是:“愚公是哪里人?”这得把现今的几座太行山搬过来,与王屋山一起填在河南孟县与山西晋城之间。然后我们再来看看,如果愚公住在“太行王屋之北”,那么他到底是在山西境内呢,还是在河南境内?
这里还有一个方位名词要论一下。《列子》说“愚公惩山北之塞”,那么是指愚公的北面是山呢,还是愚公住在山之北面。如果是前者,那么愚公则是在山之南侧居住。但如果这样,那么他还要“指通豫南”干什么呢?他的目标是要去到豫南的话,他就不会为山所阻了。所以愚公一定是住在山的北面的,这样才会“出入之迂”的。
有了这些前提,我们来恢复一下愚公移山之前的太行王屋的情状。只有有了这些条件,我们才能还原广野关前的军事、地理和局势。所以下面这张图是非常关键的:
这张图是以今天的山西省边境作为参照的。我们假定愚公时代的太行王屋二山,就在图中“广野关”所指向的地方,它“方八百里,高万仞”。昔日愚公住在这里,靠向山西(晋)的一侧,后来因为要挖开太行,晋王便在这里建了镇,名为“广野”。
在地图上,我们看到一条蓝色的水系从此穿过,这就是沁水。而在愚公挖开这里之前,沁水是会因为太行、王屋的存在而受到阻碍,不能流向南边的。所以在书中有一节会说,端木氏建议扩大工程以“使沁通南”,就是使这个沁水能贯通到南边。
2. 诸侯国与地名、域名
=========
“愚公移山续”中写到十二个地、域名。这其中域名包括九州中的冀、豫、雍,地名包括太行、王屋、河曲、曲沃,河流名包括沁水(沁)和黄河(河)。还包括虚拟的地名广野镇(以及广野关),和一个难于考据的“朔”(这个在后面会讲到)。在地域名上,还有一个“(东都)王畿”,指的是古代王都所领辖的千里地界。
愚公移山的故事里一共提及到十六个国家:晋国,晋西南的邘、原、苏、雍、单,晋东南的虞、魏、郇、焦、虢(后世),晋北的燕,晋西的犬戎,以及东边临海的齐、鲁、越。核心的故事都是在晋国展开,书中交待过晋国(当时的)都城是“曲沃”。由于故事基本都是在冀、豫两地展开,所以十五个诸侯国中,有十一个是在这两处。我们先介绍这些国家(已在上图中标注):
晋:周成王封其弟叔虞于唐(今山西翼城西),叔虞子改称晋,后曾迁都于曲沃(今山西闻喜)、绛(即翼,今山西翼城)、新田(今山西侯马)等地。春秋时期,晋国伐灭耿、霍、魏、虞、虢等国,战胜骊戎、赤狄等族。又打败楚国,大会诸侯时被周襄王正式赐命为霸主。
邘:周武王封次子邘叔在商代邘国旧址,建立邘国,其子孙以国为氏,姓邘。在今河南省沁阳县北部西万镇邘邰村。邘城北扼上党之门,南控虎牢之险。战略地位十分重要。春秋战国时,战乱四起,郑国灭邘国。
原:武王封文王第十六子为原伯,国域在今河南省济源市。现济源市西北2公里的庙街有原城故址。晋文公于前635年围攻原国。原人因文公守信而主动投降。原亡国后,晋文公将原伯贯迁往冀(山西省河津县)。
苏:夏朝中期,帝槐(或帝芬)封昆吾氏后裔于有苏(今河南辉县西的苏岭),史称有苏氏,建苏国。商末苏国灭,族人以苏为姓,开始向四处迁徙。但留在苏岭的苏姓族人归顺了周朝,首领苏岔生入朝做了周武王的司寇,被封于苏地,国都温(今河南温县)。
雍:原为商代子姓小国,武王封文王第十三子于雍。雍国都城位于今河南焦作市西南7公里的朱村乡府城村。这里北望太行,南邻黄河,是夏商文化交汇处,商王畿西部的田猎区,也是东周时期晋国东进黄河下游,与齐楚争霸的战略要地。雍国于春秋中期被晋国吞并。
单:作檀,周成王之子所封的姬姓国。系东都王畿内封国,国域在今河南省济源市东南。单国之君世为王室卿士。杨树达注曰:“单音善,天子畿内地名。单伯,天子之卿,世仕三朝,此及文公之世皆称单伯,成公以下常称单子。”
虞:周武王封周太王古公亶父的二儿子虞仲的子孙在虞国(在今山西平陆县北)。春秋时,虞仲有个后人叫奚,因住在百里乡,又称百里奚,他在虞国任大夫。公元前655年,虞国被晋国所灭,百里奚和虞君都当了晋国的俘虏,成了奴隶。
魏:周成王分封的姬姓伯国,在今陕西大荔县和山西芮城县一带。古魏国原为商朝时的古芮国,西周分封时改为“魏”。《诗经·魏风》之“魏”,既是指此魏国。周惠王十七年(前661年),古魏国为晋国灭亡。
焦:周灭商后,“武王追思先圣王,乃褒封神农之后于焦”。焦国得名于焦水,即今苍龙涧河。焦国之城,当在今陕县七里村至湖滨区南关村一带的黄河阶地上。上阳(今三门峡市区)与焦城仅数里之遥。
郇:公元前11世纪时,周公旦公封文王第10子(一说第17子)于郇,史称郇侯、郇伯。地处山西猗氏县(今山西临猗)之境,其子孙以原国名“郇”为氏,后去“阝”旁,加草头为“荀”氏。春秋时为晋武公所灭, 晋国公族叔受封于荀邑,战国时属赵国,故荀子为赵人。
虢:周初始封姬姓国,有东、西、北虢之分,东虢、西虢已先亡于郑、秦。晋献公所伐为北虢,占地当今河南三门峡和山西平陆一带,建都上阳(今河南陕县李家窑村)。
其它的诸侯国只是被提及到,并末直接参与战争,包括:
齐:姜子牙就封在这里了。武王首封姜子牙为山东齐国侯。姜子牙建都丘(山东昌乐县),姜子牙的后人就以齐国的国名作为自己的姓氏。疆域最初在今山东偏北,后扩至整个山东半岛,与燕、卫、鲁、杞、莱接界。公元前221年,秦灭齐。
鲁:周成王封周公之子伯禽(代父就封),是为鲁公伯。诸侯国,姬姓。鲁国首都在曲阜,疆域在泰山以南,略有今山东省南部,兼涉河南、江苏、安徽三省小部分。在公元前249年被楚国灭亡。鲁国也是孔子的故乡。
燕:周武王封宗室召公于燕,在今北京及河北中、北部,史称北燕。燕国的都城在“蓟”,位于今北京房山区琉璃河。周的贵族和当地旧商的贵族以及当地土著建立了联合政权,使该地区原来的东胡民族逐渐融入华夏族。找荆轲杀秦王的,就是燕国太子丹。前222年燕灭于秦。
越:越国始立于公元前2079年,由夏六世帝少康所封(少康恐禹祭之绝祠,乃封其庶子於越,号曰无余),因此越国不是西周的封侯,而是以“圣王后裔”的名义,独自立“国”生存的部族。国都在会稽(今绍兴),公元前334年,楚国攻灭越国。
晋西的犬戎并不是诸侯国。它是一个古族名,是中国古代的一个民族,即猃狁,也称西戎,活动于今陕、甘一带,猃、岐之间。西周中期以后,西北地区的戎狄逐渐兴盛,不时入侵周朝。西周末期,褒姒祸乱周朝,激怒了申国申侯,便是联合了犬戎(和缯国),杀幽王于骊山下,灭了西周。东周后建都在至洛邑(今河南省洛阳市),东周又分春秋和战国两个时间。“愚公移山记” 所拟的故事,晚至春秋时期,以列子出现为止。
3. 朔东雍南的问题
=========
列子的愚公移山中一直有个疑难未解,因为列子说夸娥氏把二山搬走,“一厝朔东,一厝雍南”。按古文的惯例,因为雍是域名,所以朔也应是地名或域名。由于九州中并没有“朔”,所以不能作域名,只能做地名解。这样一来,“朔”就只能是指汉代的朔方郡,在今内蒙伊盟西北部。然而大家应该知道,太行山并没有延伸到内蒙地区,因此显然是不对的。
“朔”除了解作“朔方郡”之外,他作为方位名词使用的时候,也表示“北方”。所以单独来看,“朔东”可以解释作“(在原本位置上的)北边偏东的位置”。表面上看来,这个位置倒也与现在的太行山脉一致,但它又与古人作文的文法不协调。
因此“朔东”到底指什么地方,就难以解释了。现在的译文通常译作“朔方以东”,这种译法并不准确,因为没有解释朔方在哪里。——事实上也解释不清楚。
如果仅仅是“朔东”有问题也就罢了,但接下来“雍南”也有问题。因为“雍”是九州之名,位在今天的陕西地区,与山西(九州之“冀州”)以黄河为界。所以“雍南”必然不在今天的山西境内,而会在今天的陕西境内、西安以南的地区。但大家也知道,今天的太行山、王屋山都在山西境内(或边境)。
因此,列子说“一厝朔东,一厝雍南”,其实不对。我们今天也知道,《列子》这本书是后人托列子之名写的,所以也不能怪他老人家(不过也有人说这是冤案,这还待考证)。大概还是写书的人搞错了地方,我这里也只是记录下这件事,大家有个参照罢了。
4. 广野的地理环境
=========
原来的寓言中,“河曲智叟”是指住在河曲的智叟。这个河曲是地名,具体的位置呢,就在上图左下角的风陵渡一带。为了便于故事的发展,我把智叟改成了与愚公毗邻,只是在前言中交待,说他原是住在河曲,迁与愚公毗邻之后“仍以河曲人自称”。
原来的寓言中,并没有交待过愚公的背景。为了丰富人物,我把他说成了虞国人,就在上图的山西平陆县一带。愚公后来迁到太行之北居住,仍称自己是“虞人”;又因为他性情忠厚老实,便被人称作“愚公”了。这也算交待了愚公的背景。
在太行山被挖开之前,晋国之的西南有中条山,南边则被太行山阻断。所以晋国南边是相对安全的。晋国的北边则有大、小戎,西面有狄戎、犬戎。所以晋国的都城历来靠近西面,在西北和西南间辗转。晋国曾迁都三次,在愚公挖开太行山的时候(晋献侯时期),晋国都城从翼城南迁至曲沃,其用意便在于安定南方。所以我在“愚公移山记”中才说“王都曲沃者,在西定犬戎,南安虞魏”,并不是胡说,确实是当时军事情势上的需要。
在“愚公移山记”中,我说晋国都城建在西边,是因为西面是犬戎这些外姓氏族,而东边被太行所阻而没有危险。——这并不全对。历史上主要是因为象原、邘这些国家也是周朝的姬姓封国,是自家人——所以当愚公要把太行山从南边挖开,那么就失去了东南面的安全保障。这样一来,晋国建都在西面的条件就不充分了。
从军事上来说,一旦这种情势发生,通常就会成为战争的起始。在冷兵器时代,既然秦国的蜀道就可以成就统一的伟业,那么愚公挖开的这条道路,带来的后果是否同样堪虑呢?在“愚公移山记”中,京城礼准确地预见到这一点:战争不可避免地开始了。
而从这里开始,原来的“挖山工程”就已经彻底地变性,从利国利民的工程,变成了动摇国本的祸事。从这时此,所以的隐患都随着地理环境的变化而凸显出来。于晋国而言,优势变成了劣势,友国变成了敌国。
广野关外,虞、魏、原、邘、雍列阵以待,晋之危何以能解?
5. 其它
=========
本小节的内幕,基本都是历史、地理知识。其实在“愚公移山记”的撰写过程,有两个问题一直困扰着我,一是太行、王屋在《列子》版本的故事中的位置,二是如何将一个移山工程演变成一场合理的战争。
第一个问题并没有合理的解决。太行王屋在山海经中的位置其实是说不清楚的,因为山海经原书的山海图已失,而作为山海经讲述山川的基点的昆仑今天也考据不到准确的位置。因此,我们再也找不到座标将太行山、王屋山画在山海图上。同样的理由,《列子》中的这个以山海经(或同源的传说)为背景的故事,也就失去了地理考据的价值。
第二个问题解决的比较合理,在以沁河为标志的广野关外,邗、原、苏等国如虎狼而恃;而在晋国都城不远,更有狄、焦、郇、虞、魏恃机而动。因此京城氏所预见的战争,的确是迟早之事。然而我们要记住的是,这个时期是在西周中期,这时周王朝对诸候国的影响力还非常之强,而且我们从上面的各诸候国封国的史实中可见,这些国家都是同宗同族,或者本出一源的。因此在这个历史时期,事实上并没有太多的内乱纷争,大多数的战争是出现在周王朝(领率各诸侯国)与狄夷等外族之间的。
因此事实上第二个问题只是“地理形势”上可以构成战争的条件,在天时、人和两方面还构不成战争的条件。所以,挖开太行所以引来了战争,并不合史时,也不合局势。这一点,要把“愚公移山记”当成军事题材来看的话,就不得不注意了。
但是,为了让故事发展下去,“愚公移山续”中还是让战争开始了。现在,另一个人物将站出来,改变“愚公移山”的故事走向与焦点,这就是端木长。我们会看到,故事从工程成为战争,又从战争成为数人论道的资本。而在这些论道者的所论中,那座山或者那个工程,只不过是百千年后的一份谈资罢了。
April 23 《大道至简》的幕后故事(3):“愚公移山记”事物篇引子
========
以古文述事,难点之一便在于我们对历史了解并不充分,因此常常把这个朝代的东西放在了那个朝代,或者让原本是甲做的事,说成了乙做。这样与史不合,容易使文章出笑话。这一篇“幕后”,便来说说“愚公移山记”中的事物。
不过由于这篇故事重在述事,所以对于“物”的描写并不充分,能拣出来谈的并不多,望谅。
1. 铁器
========
“愚公移山记”中对铁器的考证是一个非常令人痛苦的事。我从一开始便设想,到底有什么法子让愚公在太行山中挖出一条路来呢。然而思来想去,只能让他用铁器。
但是在文章还没写完时,我就犯了嘀咕:京城氏生活在西周中期,有铁器用吗?那个时代的先民,要挖开一座山,到底该用什么器具呢?
中国的冶金技术的起源实在是讲不明白,大抵上来说,早至商朝就偶有陨铁的器物出现了,春秋初有铸铁,战国末有铁兵器,鲜有钢。晚至秦朝便有了锻钢。例如从历史上来说,秦统一六国时的主战武器还是青铜剑,包括像箭簇这种需要极尖利的小部件,也是用铜制,而非铁制。而当时,象鱼肠剑、干将莫邪剑这类以精钢为主要成分的武器也已经有了。所以炼铁的历史,早无出于夏商,晚不过于春秋。
《刀剑录》中说夏代便有“孔甲”采铁铸剑,但无有切实证据。郭沫若则提出周初便有铁器的说法,郭老是通过文字考据来论证,后来杨宽在《中国古代冶铁技术发展史》中解释,认为冶金史上总是先有块炼铁,而后才有生铁,而中国春秋时间已经有了生铁,那么块炼铁就应当出在西周中期至春秋中期之间。
关于这个年代,在较近的考古中是有实据的。在三门峡虢国墓地(西周晚期至春秋早期,约公元前700年)中出土过一柄块练铁制成的铁剑。因此可被考据的铁器历史,大致只能到春秋早期。
![]() (春秋早期的铁器(铁刃铜削) )
![]() (商代铁刃铜钺(陨铁))
“愚公移山记”所说京城初学得冶铁之技的时间,大概是在公元前990年左右。因此在这个时代,是不应该有“冶铁之技”的。这篇古文只说“(求之以)粗铁之器”,实在是想跳过这个细节,不确切地说明铁器的材质。粗铁在冶铁工艺中算作什么铁,我也说不清,大致说成是劣质的铁块吧。即使如此,要用这样的粗铁来做农具或民用,也实在不可能,因为这时的铁器(即使是劣质的)也不可能量产来做农具。
但是我又不可能在这篇文字中说京城氏用铜器来提高了愚公的工效。因为那个时代,铜是很珍贵的资源,有来做农具挖山,大谬。
所以这里说“京城初习得冶铁之术以归”,其实是假的。
2. 推车
========
京城初还学了一项技术,是“制车”。这里所说的车,当然不是战车,如果是战车,那对愚公挖山来说是没有什么意义的。
所以京城初学得的当是某种“人力车”或“畜力车”的制作工艺,例如推车或牛车。那个时代象马车、牛车这样的东西,是贵族或仕官的座乘,如果说它用来运土,得笑死N多人。所以更进一步地推论是,京城初所学的能用于愚公移山的“车”,是一种(人力的)推车。
这就麻烦了,推车这个东西,在京城初所在的时代,被发明出来了吗?
如果是“车”就比较好回答,黄帝时代就已经有了,而且还发展出了专司制车的官职(叫车正),但形制上是独辕车,到了战国时代,才发展出双辕的车。车的样式呢,则主要是两轮的,少有四轮的。畜力方面,在夏商之前最多是三匹牛马,周朝后有四~六匹牛马拉的车。
但推车呢?这个历史上也考证过,独轮推车出现在西汉(而且独轮车是中国传到外国的一项先进技术)。独轮车的问题在于制作简单,但操作复杂,一般人是不会用的。所以它出现的比较晚,后世学者推论,诸葛亮所制的“木牛(流马)”,就是一种特殊的独轮车。所以直到三国时期,独轮车的制作与使用,仍然是一件“技术活”。
![]() (单辕双轮战车(驷))
![]() (独轮车)
而自夏商至春秋,战车大多是双轮。所以后来秦始皇要“车同辙”,就是要求这两个轮子之间的距离一样。既然双轮的战车很早就有了,那么双轮的推车会不会早于独轮车而出现呢?是的,距古书的记载,早在夏朝晚期的时候,就已经能够制造有辐车轮的轻便两轮车,但是这个时期的两轮车是用人力牵引,而不是推的。商时称之为“胡奴车”,周代叫“辎车”,秦时称为“辇”。在秦、汉之后则一般用来特指君王、后的所乘的车。
两轮车有了,但初时是用来拉的(你看“辇”这个字,就是两人拉车),所以什么时候开始有用一个人来推的两轮车,就没得考证了。而我们在“愚公移山记”里说京城初学得的制车之技,就应归为这种两轮车(万不能变成了独轮)。然而是推还是拉,则不重要了。
关于这个细节,在本书第二章的四格漫画中就有表现。我当时写漫画脚本时就写着“双轮推车”,等到明明、丘宝画的时候也一再叮嘱,一定是“双轮推车”。所以我手边就有了下面这两个版本的“双轮推车”——最终使用的丘宝版本的漫画,所以大家只得看到第二种。:)
![]() (版本一)
![]() (版本二)
3. 茶、马与盐
========
基本上,原始商业交易是需求市场的一种表现。简单的说,是有需求就有市场。如果考究一下早期社会的资源分布,就会发现,如果一个地方缺乏某种资源,那么就不会建立起依赖这种资源的经济或文化。
虽然不会有这种文化,但并不会消除掉这种市场需求。相反,他们会把这些资源当成稀缺商品,既稀缺则必然价贵。用在“贱买贵卖”的基本商业法则上,就变成了:如果一个地方没有某种资源,则必然存在这种资源的市场;反过来,如果富余某种资源,则必然成为这种资源的产地。
基本的商业法则就是这样。而“愚公移山记”中的端木氏营商,有没有违反这些规则呢?换言之,就是三个问题:
这只要看看这些地方的资源情况,就可以有答案了。
“齐东”是指今天的山东东部。山东又叫齐鲁之地、渤海之滨,所以愚公填土石于渤海,京城游学于鲁国,和端木去齐东经营走的是同一条路,至多是远近不同而已。因此呢,说智叟命长子“荷担而从”,以及京城氏命子“随焉”,都是可行的。齐国的范围,大概包括今天山东省偏北的大部,兼有今河北省的东南部,全境东临渤海。自古便盛产海盐,也是中原地区的海盐的主要交易地。
再说晋国的茶。其实晋国(今山西)并不盛产茶叶,但晋商历来有交易茶的传统,他们主要在福建、两湖、安徽、浙江、江苏一带购买茶山,然后包销。所以晋国并不产茶(三国两晋前的文献中所见的重要茶叶产地,几乎都在巴蜀和荆楚),但也有茶叶交易的市场。因而在“愚公移山记”中说“(端木氏)晋中以易茶”也是可信的,但晋中不应直接理解为地理中心,而是政治经济中心就好了。
但这个问题还没有完,因为那个时候人们到底喝不喝茶,还是个问题。陆羽在《茶经》中指出:“茶之为饮,发于神农氏。”这个说法落不到实处,古人一说什么东西好,就归到神农、轩辕之类的老祖宗头上,这种言论拿来做考据,大多不确实。中国茶文化的考据中,只能确定在三国之前,但早到什么时候,就考证不确切了,但远在秦汉、先秦时期的说法也都是有的。所以说,关于茶和饮茶,京城氏那会儿大概还是有,只不过经不起考证。
最后我们说说“燕北易马”。燕国在哪儿呢?在夏商时期,今北京地区有一族人以“晏(燕)”为图腾,为族徽,为族名,并进而为地名、国名。后来周灭商,建立了诸候国“燕”,又称北燕。所以京城氏时期的“燕”就是这个北燕,位于今天的北京房山地区。从地理上看,燕北便是草原了,是游牧民族生活的地方,当然不会少了马。所以京城氏的生意,从晋中易茶,到燕北易马,南茶北马的生易,确实是可以做得的。
我们今天的人写古文,尤其是写古代背景的古文,应该要慎重一些。能考实的尽量考实,不能考实的,在用字措辞上便要虚些。例如前面写到的“粗铁”,其实后来任真先生改到这一处时,便问“何谓粗铁”。我笑着说,大概是炼不成铁的劣质金属块。这意思,便是考据不充分,不堪细究,所以虚写为“粗铁”了。
同样的道理,写贸易,起码要合符贸易原则。如果写错了,变成京城氏要拿晋地的盐去换齐东的马,那就得闹笑话:晋地虽也有(池)盐,但海边可不养马啊。
4. 布与衣饰
========
京城氏是拿茶、布去交易海盐的。这里的布是什么布呢?古人的布与帛是两种东西,前者是织布,后者是丝绸。帛这个东西,是要拿蚕丝来做的,出现的较晚。《孟子·滕文公》:“五亩之宅,树之以桑,五十者可以衣帛矣”,所以看起来,直到晚周战国时期,帛衣还是很名贵的,需要大户人家才穿用得起。
虽然布、帛这两种东西都早早是有的,但事实上当时的一般民众还是穿麻布和毛布的褐衣。所谓褐是用兽毛捻线织布,还将毛打成毡子。这样的毡、裘也有很多种,有粗毛、细毛之分,也有皮质之别(例如孟尝君的狐白之裘)。但到了细毛、狐裘之类,一般人也穿不起了。
所以那个时代,大略是敝体以布,敝寒以裘。大略就是这样一种衣着文化。从款式上来看,象安阳小屯出土的两个碾玉童子,都是头上两个丫角,身穿右衽,束带及膝的上衣,下穿长至脚面的裤子,脚穿平底鞋,其装束与辛亥革命以前的民间装束,并无多大差异。而早至商、周,象冕衣、寝衣之类就已经有了,也有冠、带、袂、履之类的服饰。
说这些细处,主要是因为那套漫画中的人物形象,大概也不差的。但细节上也讲不实,丘宝的画法,大概还是以影视剧作了些参考,所以像与不像,自有别人去研究。我们不要追究得太细,只消不是画成光腚,或者树叶遮体的原始时代,便已是不错了。
![]() (东周男子服饰)
但端木氏是要拿“茶、布”去齐东交易的,这个交易做不做得成呢?我想大抵做得。因为晋(今山西)、豫(今河南)之地当时是农耕文化,而齐(今山东)是渔业文化,农耕文化的织布技术当然强过渔业文化。所以不管端木氏是拿布还是帛去齐国卖,总还是能有些获利的。
5. 斗与车
========
大家现在读到的“愚公移山记”中是没有用到“斗”这个量器的。此外,虽然有几处用到了“车(和车马)”,但也没有用“车”来做量器的。
但在这篇故事的最初版本里却是有的。其一便是说“端木远商于诸国,钱资允盈,斗金而量,竟无数”。任真先生在回信中问:“斗金而量是何意。”我解释说,就是“以斗量金”。任真先生以为不妥,认为金不以斗量,便改成了“资财愈充”而已。
但金真的不以斗量吗?这个问题我查了很久,但查不实在。因为斗是个容器量具,不用来称重。古人说“千金”是泛指多,而说“千两黄金”才是确指。而这“千两”却是指重量,不是体积大小。所以,如果某人要算算自家藏了多少黄金,想来是不用斗的。至于常见的成语“日进斗金”,据说已是出自明清小说,在先秦时是不会这样用的。
所以在最终的“愚公移山记”中,没有“以斗量金”这样用来计算财富的写法。但是古文中也有以容器来度量黄金的,但不是用来计算个人财富,而是用来赐、赠之类。例如皇帝赏赐,有“斗珠”、“斗金”之类,这也包括有用斛来量的。因此,在这篇文言里面,还有一处说晋王“赐(公输)同金百斛”的,这一斛,就是十斗了。
在这篇故事的最初版本里面,还有一处是用“车”来量金的。这是说到端木长“备三军之甲,集十乘之金”去见晋王,这个“十乘之金”就是十车的黄金。但任真先生读到这里,又疑,注曰:“金以乘量,愿慎考于古为佳?”我的确找不到这种用法的出处,但是我也想不出一种法子,能叙述端木长向晋王献了这许多的黄金。于是求计于任真先生,无解;又求计于另一位深谙国学的朋友,仍无解。后来,任真先生建议去掉这对句的句式,改作了“备三军之甲,金以十乘”,才算了事。
“金以十乘”是指运了十车黄金,强调运送的方法;而“十乘之金”,则是强调度量的单位。相比之下,前者是要更合逻辑一些的,所以就有了读者看到的这个版本。
6. 工程
========
讨论“工程”这个词,是因为在文言中出现了“工程伊始”这句话。这句话大家都应该会读得懂,但问题是“工程”这个词,在讲述先秦的古文中能用得吗?
既是写古文,写文言,那就该写得象一些,太新近的词是不应该用的。例如要在讲先秦的文言中写上“摩登”一词,可能得令人笑掉大牙。那么“工程”这个词,用不用得呢?
其实“工程”在这个词,在唐朝之前是未见使用的。唐以前的文献里,多用“工事”。工程和工事其实是同义,在不混淆的情况下,也用“工”这个字。例如在任真先生批改另一处“工程始速”时,就建议用“工始速”。同样,“时工程殆半”,任真先生也批了一句:宜作“时工事且半”。
不过最终这个词还是用成了“工程”。因为这本书是讲工程的,如果再换个词,大家并不好理解,也没有必要。只是大家应该清楚,这不是那时的惯用词。
7. 其它
========
这一篇内幕写到两三处与任真先生商讨改稿的事,但这些记叙只是廖廖。我与任真先生在近两月的时间里,对这篇文言多番校改,其中的细节我放到最后一篇再讲,这里就先不细说了。
这篇文言里许多与史实相关的内容,大都经过考证。相关的资料文献,我也在最后一篇中去列举。大多数人不关心这些文献的细节,所以也不至于要在这里一一列出来。若只为图个门面上的事,便是不必了。
下一篇将是这辑内幕中最精彩的部分,要讲的是军事、地理、战争与谋略。个人以为,“愚公移山记”固然是写工程相关的事,但最终所述的道理,却不全用于工程。就如同我喜好古文,未见得便要与古人对话,拿到今天来,讲些今天的事,也是可以的。
器物之用,惟在人法。古文作为一种工具,一理相同。
|
|
|