读本好书《大教堂与集市》

我有幸和世界上一些最有趣,最杰出的人一起共事,一起去解决那些令人着迷的问题。

他教导我:要尊重能力,要珍视和捍卫自由,特别是:昆虫才讲究技能专一


这两句话,摘自这本书的序言。很好的两句话。

简介

  • 书名:《大教堂与集市》
  • 作者: Eric·S·Raymond
  • ISBN:9787111452478

Hackdom的的简史

(dom)的后缀有时候被音译为道,其意就是圈子的意思。

Linux的最重要的特点并不是在技术上的,而是在社会学上。在其被开发出之前,人们都认为,如此系统需要一个精心协作的团队,其规模较小,且紧密互动。实际上的linux 选择了一个人们的志愿的开发方式,使用像是物竞天择的机制,来对功能进行取舍和改进,这种方式工作的让人吃惊的好。

在1996年2月,为限制和阻止网上的部分内容对青少年和儿童的危害,克林顿签署了《通信合宜法》,很快 美国公民自由联盟(ACLU),以其侵害公民言论自由权利为由,对美国政府提起诉讼。1997年6月26日,最高院判定CDA违背美国宪法,并立即废止。

大教堂与集市

绝大多数公司的商用的“大教堂模式”和linux采用的“集市模式”,其两种的根本不同点在于对软件排错的完全对立的认识。所以这里证明了一个命题(linus定律):只要眼睛多,Bug容易捉

小工具,快速原型法,演化式编程 作为unix信条。

Linus 的开发风格是:早发布,常发布,委托所有能委托的事情,开发到几乎混乱的程度,所有linux社区更像一个乱糟糟的大集市。linus总是说:"我基本上是一个很懒的人,别人做事,我得名誉"

在大教堂的模式下,bug是棘手的,需要数个人月来发现和剔除问题,而越是这样发布间隔越长,如果最终等待的版本又并不完美,人们的失望就越发不可避免。

系统的安全只取决于他的秘密,谨防虚假的秘密。

书中多次提到了 brooks定律:"向落后进度的项目添加人手,只会使得项目更加落后"。因为项目的复杂度和人员是平方相关的。这样看来linux项目好像无法完成了。这里又提到了一点"无私编程",和商业软件不同,开源软件的信息共享,带来了对开发者之间的互相激励。(在极限编XP(extreme programming)程里的结对编程也是很好的一个例子)。

软件管理的五个功能:

  1. 确保同方向努力

  2. 监督确保关键细节不被遗漏

  3. 激励人们去做乏味但是必要的“体力活”

  4. 组织人员以获得最佳的生产力

  5. 调配项目所需资源

开源项目的动力,的在于这个问题本身的魅力激发了开发者的热情,这种激励效果比单纯的金钱是要有效的多的。


书中提到,世界上的建筑可以分两种:一种是集市,天天开放在那里,从无到有,从小到大;还有一种是大教堂,几代人呕心沥血,几十年才能建成,投入使用。

经典的商业软件就是我们的大教堂模式,开源软件就是集市的模式,Eric Raymond就问了一个问题,有没有可能用修建集市的方式,造出一所大教堂?

答案是肯定的,并且,这个教堂已经十分宏伟壮丽了,linux作为典型的各种的开源工程现在已经是很可观的数量了。总结集市的软件开发模式。想了想总结以下几点

- **只要眼睛多,Bug容易捉** ————linus定律
- **早发布,常发布** 缩短周期,使得新的特性的融入以及看得到的变化
- **egoboo**————指的是做志愿活动得到的满足感,使用社区的力量使得开发者们易于驱动。(对违背Brooks定律的解释 )
- **马其诺防线**————商业管理往往是防守的,不如自我组织

开垦心智层

这里,感觉是深入了人们的心理,来分析黑客(开源)文化中的特点。

Lockean财产权理论仅仅产生保卫成本的地方。把软件项目比作一块农田,谁耕种和维护那么其所有权便是谁的。

在使用Lockean的逻辑理解,开源黑客之所以遵循这些传统,为了保卫其劳动付出的某种预期回报,理解来可以是自己种过的麦田。类比为维护自己项目的冲动。

人类组织模式:这里比较有意思,

大多数的人类组织模式都是为了适应稀缺和匮乏,每种模式有其不同的社会获取途径。

  1. 命令体系 稀缺物品被中心化的权力分配并以武力为后盾。拓展性差,规模大了问题就大了,社会地位取决于强制力量的使用(政府,军队)
  2. 交换经济 延展性很好,稀缺物的流动取决于贸易和自由合作。在这种模式下社会地位取决于你的资源占有量

上面两种都是对物质稀缺的适应,下面的是对物质充裕的适应,充裕性会使得命令关系难以维持,会是交换关系变成无意义的游戏。在礼物文化中,社会地位不取决于你控制了什么,而是取决于你给予了什么。

  1. 礼物文换 所以,才会有散财宴,才会有千万富翁的精心准备的公开的慈善行为,才会有黑客编写高质量开源代码的不懈努力

有了上的几点,可以很容易的看出开源就是一种礼物文化。没有非常稀缺的生活必需品,(磁盘,带宽,计算能力);软件自由共享,那么物质充裕导致了礼物文化。

书中其他内容

其实最后把这五种语言(Python,Java, C/C++, Perl和LISP)都学了。他们不只是最重要的黑客语言,还代表着截然不同的编程方法。

随手翻翻这本书,感觉自己有了些妙不可言的感觉。直言,笔者对黑客文化是十分向往的,也希望自己会是在这个魔法锅中的一员。
对 hack 这个词,从之前的知识感性上的很酷,到了现在的更加深入的理解。这便是一种文化吧,一种圈子。书中,从原理级的挖掘了,开源文化之所以那么生机勃勃的原因,文章在1997年5月27日发表,正如其所言的,现在便是开源的天下!

所表达出来的价值观,类似于中世纪欧洲骑士时代精英团体所宣称的理想(通常总是无法实现),这些社会精英有足够的财力超脱于所处的稀缺经济。像人们期望的那样,一个有抱负的骑士为正义而战,他追求荣誉而非获取钱财,他站在弱势和受压迫者一边,不断寻求机会挑战自己英勇才能的极限。也正因如此,他会认为自己(并被别人认为)是人中翘楚——前提是他的能力和品行已获得其他骑士的承认和正式认可。在亚瑟王传奇(Arthurian tales)和武功歌(chansons de geste)所颂扬的骑士精神中,我们看到了理想主义、对自我的不断挑战和对地位的追求,这与当今激励黑客的要素是类似的。

留下点什么吧