编程是一门艺术

raptor.zh(at)gmail.com Creative Commons License
本作品采用知识共享署名-非商业性使用-相同方式共享 2.5 中国大陆许可协议进行许可。

archives 存档

01 Jan - 31 Dec 2018
01 Jan - 31 Dec 2017
01 Jan - 31 Dec 2016
01 Jan - 31 Dec 2015
01 Jan - 31 Dec 2014
01 Jan - 31 Dec 2013
01 Jan - 31 Dec 2012
01 Jan - 31 Dec 2011
01 Jan - 31 Dec 2010
01 Jan - 31 Dec 2009
01 Jan - 31 Dec 2008
01 Jan - 31 Dec 2007
01 Jan - 31 Dec 2006
01 Jan - 31 Dec 2005
01 Jan - 31 Dec 2004
01 Jan - 31 Dec 2003
01 Jan - 31 Dec 2002
01 Jan - 31 Dec 2001
01 Jan - 31 Dec 2000
01 Jan - 31 Dec 1999

--

links 链接

--

软件与中国古代史:大历史观

年初的时候,我写过一篇《人件管理与中国古代史:程序员豫让》[8],本来想写成一个系列的,结果因为种种原因,至今还只有这一篇。

因为前一段时间刚刚看完了黄仁宇的《中国大历史》[1],所谓学以致用,于是便想到将此“大历史观”套用到软件业里来看看。既然是说“大”,所以我首先就把原来的“人件管理”扩大到整个“软件”业里来了。

《中国大历史》一书的内容贯穿了秦以来两千多年的中国历史,力图用一种“大历史观”的看法分析中国历史上种种典型情况的成因。而所谓“大历史观”的“大”,就是要放宽视野,不局限于一朝一代,而在于纵观全面。

我不是专业研究历史的,所以在这里只能借用一下黄先生的分析结论:

在 两千多年的皇帝极权统治下,中国的政治结构始终是由一帮官僚以粗线条的方式管理着千万下层农民。维系二者的除了少量的刑法(即使是仅有的刑法的执 行,在很大程度上也要有赖于执法的官员--如包公--其实这对于法律来说是一种讽刺)以外,就是靠道德和文化传统(比如三纲五常、三从四德之类)。缺少像 民法这样的用于约束社会日常事务的法律。

这一被黄先生称为“间架性设计”[2]的结构源于春秋时期李悝在吴国所创的“郡县制”。后由 汉武帝听取董仲舒的建议,将以伦理道德为核心的孔孟哲学 奉为统治之本。最终完成了这个超越时代的统治结构。由于这一管理机制沿用了两千年而没有什么变化,使得这种极权统治的政治制度在很大程度上代替了法律的作 用。

虽然这一官僚政治结构曾经非常有助于当时皇权的巩固以及经济的发展,但是它也存在着很多的问题:一般政令上面冠冕堂皇,到下面却有名无实,官僚间的逻辑被重视的程度超过实际行政效能,又礼仪也可以代替行政等等[2]。

由于这一切存在的历史实在太过于长久了,以致于它们与中国的传统文化完全融合,时至今日还随处可见。王小波就曾说过:中国的文化已经被拿来与孔孟哲学等同而论,忘记了文化应该是多方面的[4]。这也从另一个角度说明了这一传统是何等的根深蒂固。

回到软件上来。

上面所说的“统治结构”,“文化传统”等等,在中国的软件公司里也是随处可见。在今年第六期的《程序员》上,有一个专题报告《论托普的“倒掉”》[3]很详细地解析了托普的方方面面,揭示了一些在中国软件业中存在的典型现象。这就是一个很好例子。

正 如报告所展示的那样:托普就是一个典型的中国式软件公司。宋如华相当于公司的皇帝,十二年前他靠五千元发家的历史,像亭长出身的刘邦一样充满传奇 色彩。而公司的结构也大致相当于上述的官僚统治结构,最上面是以宋为首的高层管理层(相当于古代的统治官僚阶层),最下面则是以“5000人”为代表的普 通开发人员(相当于古代的农民阶层)。

在中国有无数的软件公司都是采用与此类似的结构,只是大小不同而已。至于某些所谓的“大”软件公司,其结构是在内部有许多各自相对独立的类似分公司的机构组成,在这些分公司中的结构还是如此。

也许有人会说:貌似国外的软件公司大体也是如此。

然而形似毕竟不是神似。国内公司的结构采用的还是传统的以伦理道德作为维系上下层的纽带,而国外公司的结构则更多的是依赖于长期形成的一套制度化机制。这里的区别是人治与法治的区别,是极权主义和自由主义的区别。

关于这二者的区别,我曾经在BLOG上与人作过一些讨论,我的观点大致是这样的:

在 人治的情况下:统治者以家规进行管理,虽然传统上皇帝的家规便是国家的国法,但它完全没有“法”的精神,只是家规而已。家规的特点便是,它通常是 由个人所建立,并且可以以最高统治者的意志为转移的,受个人的影响很大,并且家规的核心是伦理道德。比如三纲五常,三从四德之类的,便是这种伦理道德在古 代被发挥到极致的表现。在这样的情况下,家规对于处于结构中不同位置的人具有不同的作用力。虽然中国古代也有过如“王子犯法与庶民同罪”的说法,不过这只 是说说而已,个别的几个案例完全不足以说明,因为反面的例子远远多于它,就算是那几个仅有的案例,也多半是政治斗争的牺牲品(关于软件公司中存在的政治斗 争方面的问题,我将另外撰文讨论)。

而在法治的情况下:所有人在同样的法律下受到同样的约束和保护,法律代表着大多数人的意愿。一方 面法律不以个人的意志为转移,但它也并不是一成不变 的。它的发展变化原则只有一个:对大多数人有利。这一法律制度应该是“充满活力”(此处借用C·亚历山大对“活力”的定义[5])的,能够在以上述原则为 基准的情况下自我完善和自我发展。但是这种发展完全不同于家规通常存在的那种朝令夕改,它是一种在上述原则限定下的逐步改进的过程。

虽然在大多数情况下,我是认为法治要优于人治的。但是就中国的实际情况来说,人治具有比法治好得多的文化基础。特别是目前中国软件业界的环境,非常适合于产生人治结构的软件公司。

这同样要从历史上说起。

古 代的中原地区,东有大海,南有长江,西有荒漠,北有苦寒,中间的黄河流域造就了一个安全的农业环境。这一地理因素造就了优越的农耕条件,产生了过 度发达的农业文明。而这种由大量的小自耕农组成的农业文明最适于用一个高度极权的管理体系来管理,这是中国古代人治结构得以产生并发展巩固长达两千年的一 个重要原因。

当然,后来这一过度发达的农业文明对工业的发展产生的抑制作用,并且高度极权的统治又限制了商业的发展,与之相关的金融、法制无法产生,以致于这种小农经济在发展到一定程度后就无法有大的突破,最终走向衰落。

现在的中国软件业环境,与此有相当的相似之处。

在 《论托普的“倒掉”》一文中说到:托普基本上没做什么通用软件,都是靠项目维持软件业务的运作。 而项目的来源,则主要是靠关系,在这种情况下,销售市场的地位就会远远重于技术,而国内的软件厂商就在这样的环境里拼成本和业务。在这样一个不规范的环境 中,往往几个人碰到某个关系,拉到一两个项目就可以造就一个软件公司,如同古代的小自耕农,有一小块地就可以自力更生一般。

另一方 面,由于这个不规范的市场环境,决定了软件公司无从做大做强,如同过度发达的农业文明对工商业的抑制作用。所以软件公司只能转向其它的方向, 如资本运作、房地产、保健品等,因为如文中所说:反正是靠关系,靠技术不如去“赚快钱”。所以才有当托普进入资本市场后,技术成为了资本运作的一个幌子, 成为资本玩弄的工具。

记得在第一次中央台评选年度经济人物时,柳传志是当选者之一,他在当年的电视访谈上谈到技术环境时说:中国现在的环境还不行。

只 是四五年过去了,这个环境好像还是不行。在这样的环境下想模仿国外的软件公司搞“法治”,结果不过是画虎不成反类犬。所以在这样的环境下,加上前 面所说的那些历史渊源,专心搞好人治恐怕是一个比法治更好的办法。而且事实上,国内大多数软件公司采用的也都是这样的人治之法。还是以托普为例,在《论托 普的“倒掉”》中,经常可以看到对托普这样的评论:任人唯亲;上面老板拍脑袋,下面跟着转……这些都是典型的人治特征。

既然要以人治的方法来管理软件公司,首先就要有“鱼与熊掌不可兼得”的心理准备,不能指望采用人治时,同时还想享有法治的好处。

在 《程序员豫让》一文[8]中,我已经说过的关于员工忠诚度的问题:一个很重要的原因是所谓的“士为知已者死”。其实在人治下,公司就是老板的公司 --如同古代所谓的“普天之下,莫非王土”--在这种情况下要求员工表现出“以公司为家”的精神是没有道理的事,因为这不是员工的公司--当然,如果换在 法治的背景下就又不同了。

正是因为在这种情况下,老板就是公司的“君主”,所以不要试图引入国外公司通常用的法治手段,正确的做法应该是参考学习马基雅维里的《君主论》[6](或国产的《厚黑学》),靠自己的手段来达到目的。

在《君主论》中明确地指出,一个君主如果丧失了他的国家,只能归罪于自己的无能,而不可能是其它什么别的原因。对于一个君主国来说,这是毫无疑问的。这与我在《程序员豫让》一文中的观点是一致的,把公司失败的责任推给底层开发人员是没有道理的。

而要保持一个君主拥有国家,必须要注意三个方面:一支强有力的军队;人民的拥护;提防贵族

对于一个软件公司来说,一支团结高效的团队(包括开发及市场等各个方面)就是公司最有力的军队。正如雇佣军和外国援军是靠不住的一样,作为公司老板,必须自己拥有一支这样的力量,而不能指望临时招聘人员能够达到目的。

在《人件》[7]里提到过,某些老板忌讳这样的团队,害怕他们会形成私党,甚至为此故意造成内部斗争,制造团队自杀。其实这正是因为老板对控制团队没有信心。马氏对此提供了一些值得借鉴的做法:

一个英明的君主必须找到一种办法,使他的市民无论在哪个时期都对国家和他本人有所求。因为惟有如此,才能保证臣民永远为他效忠。/损害应该一次干完,而布惠则需一点点进行。

还有很重要的一点是:老板必须具有相当的个人魅力。这一点无可替代。

作为《君主论》的核心思想,那就是:为达目的,不择手段。绝大多数人治的公司也都是这么干的,但问题在于这种不择手段必须做得隐蔽

只有用了上面说的这样的一些做法,才能够保证得到“人民的拥护”。

而 提防贵族则是指需要提防某些高层管理人员。他们是可能形成私党的潜在力量,他们比老板更接近下层人员,可以屏蔽老板对下面的视听,或是造成下层人 员的不满,以致于瓦解团队。另外,通常他们还控制着公司相当部分的资源,我就听说过有软件公司的高管利用公司资源接私活的事。

正是因为一个有问题的高管可能造成的危害性相当巨大,所以需要对他们加以提防。但并不是说所有的高管都有问题,如果不加区分地对他们加以约束,那当然也是不行的,这必然影响到公司的正常运作。

对于有问题的高管,还是有迹可循的。比如说,如果一个高管在碰到功劳时都往自己--或打着自己团队的幌子--身上揽,而碰到问题时却一味地往下面推,那这样的高管一般都是多少有点问题的。

最后来谈谈在人治下那些不可避免存在的问题。

前面我已经说过,人治管理的一大特点就是由上下分离的两大层所组成,中间依靠道德和文化传统来维系。

由于上下两层分离,高层的管理人员无从对下层技术人员的工作有深入了解,但偏偏上层又经常在这种没有深入了解的情况下对下层的具体工作作过多的干预。这就是一个需要注意的方面,高层领导人不应该对过于具体的细节横加干涉。

而 作为上下层维系的表现,就是上层管理者按照自己的主观意愿进行管理,缺乏制度的稳定性,通常表现为朝令夕改,或如托普那样“拍脑袋”,结果就是造成下面的 人员无所适从。此外如果还有别的什么的话,那就是虚无的“企业文化”。余世维[9]说过,企业文化需要有时间的积累,并且所谓的企业文化就是企业最高管理 者的个人文化的表现。对于大多数没有什么厚重历史的软件公司,所谓的“企业文化”弊大于利(所以我说它虚无)。

对于这样的问题的解决 办法就是:制定“家规”--公司规章制度。公司规章制度在某种程度上就像国家的法律,包括宪法,刑法等,但通常存在的问题就是 缺乏民法的部分。虽然民法部分对于人治的公司来说,不像在法治的公司里那么重要,但是适当地加入一些民法的部分,对于稳定团队是有极大的好处的。并且,按 照马基雅维里的说法,君主仍然具有随时背信弃义的权力和自由。但是我认为这还是需要保持适当的稳定性--也可以理解为将背信弃义做得隐蔽一些。

具 体的做法可以参考从前我一个做人事工作的朋友的经验,当时他在为公司制定规章制度时,就建议老板在其中加入一条:公司可以随时对规章制度进行修 改,但所有修改都会发公告,并且修改后的规章都是在公告后执行。这样就保证了老板可以在觉得对原规章不满意的时候有修改的自由,同时又保障了员工不会因为 老板一时的主意改变而遭遇莫明其妙的处罚。

以上均为个人读书后的一点体会,结合个人的一点点工作经历,偏颇之处在所难免,仅供参考讨论。


参考文献:
[1]黄仁宇《中国大历史》
[2]黄仁宇《赫逊河畔谈中国历史》
[3]熊建国《论托普的“倒掉”》(《程序员》2004年第6期)
[4]王小波《我的精神家园》
[5]C.Alexander《建筑的永恒之道》
[6]马基雅维里《君主论》
[7]T.DeMarco&T.Lister《人件》
[8]猛禽《人件管理与中国古代史:程序员豫让
[9]余世维《成功的职业经理人讲座》

Nov.14, Dec.12-04

Trackback link:

Please enable javascript to generate a trackback url

No trackbacks

评论(0)


 
   
 
  表情图标 

 


提示: 除了 <b> 和 <i> 之外,其他的Html标签都将从您的评论中去除.url或mail地址会被自动加上链接.