大教堂与集市

大教堂与集市

  • The Cathedral & the Bazaar: Musings on Linux and Open Source by an Accidental Revolutionary
  • 非常经典的一本书,过去很多年在不同的场合都看到过这本书。昨天抽空找到读了一遍,最近这些天对于互联网隐私这个话题很关心,不可避免要了解开源,自由软件等运动。 作者是开源社区的一分子,这本书应该是首次自觉的反思开源运动,试图总结 Linux 神奇现象的原因,提出了软件开发的大教堂与集市两种模式。书中也无数次提到了人月神话这本软件工程的力作。 写在20实际末的这本书中,微软还是开源社区的最大低人,20年后的今天,谁能想到微软已经如此拥抱开源? 硬件厂商如 NVIDIA 之流,已经没有将驱动开源,闭源驱动的性能依然是吊打开源驱动。 站在今天回顾,书中的一部分观点当然是不准确的,但是更多的观点还是经受了考验,开源运动在这20年如火如荼,虽然没有蔓延到所有地方。 如今正在 Firefox 中写下这段话的我,当然要对开源报以感激,开源运动也让我对人类抱有希望。
  • Outline
      • Red hat 董事长及 CEO Bob Young
    • 前言:为什么你应该关心这些
      • 计算机软件在世界经济和商业战略决策中扮演着越来越重要的角色。不管你是由于什么原因打开这本书,大概你对那些关于信息经济、数据时代、互联世界的说法都听得太多了,我不想在这里复述那些。我只是想说,如果我们能对如何编写更优质、更稳定的软件有更深入一点的认识,都将会产生滚雪球般的深远影响。
      • 开源软件系统性地利用开放式开发和分布式同行评审(peer review),不仅降低了成本,还提高了软件质量。
      • 黑客文化及其所取得的成功,对于研究人类动机、工作组织方式、专业主义的未来、公司形态等一些基础性问题,以及这些内容在21世纪信息充裕的后稀缺经济时代中如何变化和演进,都提供了一个很好的研究范例。此外,黑客文化还颇具说服力地预示了人类在适应和重塑经济环境方面将会发生的一些深刻变革,因此,对任何一个要在未来工作和生活的人,懂一些黑客文化都是很有意义的。
      1. 黑客圈简史
      • 1.1 序:真程序员
      • 1.2 早期黑客 [[黑客]]
        • 起源时间 1961 年
      • 1.3 UNIX 的兴起
        • 1969年,Ken Thompson
      • 1.4 远古时代的终结
      • 1.5 专有 UNIX 时代
      • 1.6 早期的自由 UNIX
        • 1991年 [[Linus Torvalds]]
      • 1.7 Web 大爆发
      1. 大教堂与集市
      • 2.1 集市模式的成功
      • 2.2 邮件必达
          1. 好的软件作品,往往源自开发者的个人需要
          1. 优秀的程序员知道写什么,卓越的程序员知道改写(重用)什么
          1. “计划好扔掉一个吧,迟早你会这么做的” [[人月神话]]
          1. 如果你有正确的态度,有趣的事情自然会找到你
          1. 当你对一个程序不再感兴趣时,你最后的责任就是把它交给一个可以胜任的接棒者
      • 2.3 拥有用户的重要性
          1. 把你的用户当成开发合作者对待,如果想让代码质量快速提升并有效排错,这是最省心的途径。
      • 2.4 早发布,常发布
        • 7.早发布,常发布,倾听用户的反馈。
      • 2.5 多少只眼睛才能驯服复杂性
      • 2.6 何时名不再符实
        • 9.聪明的数据结构配上愚笨的代码,远比反过来要好得多。
        • 10.如果你把beta测试者当做最珍贵的资源对待,他们就会成为你最珍贵的资源。
      • 2.7 popclient变成了fetchmail
        • 11.仅次于拥有好主意的是,识别来自用户的好主意,有时后者会更好。
        • 12.通常,那些最有突破性和最有创新力的解决方案来自于你认识到你对问题的基本观念是错的。
        • 13.“设计上的完美不是没有东西可以再加,而是没有东西可以再减。”
      • 2.8 fetchmail长大了
        • 14.任何工具都应具备预期内的功能,但一个伟大的工具能给你带来预期外的功能。
        • 15.写网关类软件时,尽可能不要干扰数据流,而且绝不要扔掉信息,除非接收方强迫你这么做。
      • 2.9 从fetchmail学到的其他经验
        • 16.当你的语言还远不是图灵完备(Turing-complete)的时候,语法糖[4]会让你受益良多。
        • 17.系统的安全性只取决于它所拥有的秘密。谨防虚假的秘密。
          • 比如配置文件中用加密的密码hhh
      • 2.10 集市模式的必要条件
      • 2.11 开源软件的社会语境
        • 18.想要解决一个有趣的问题,先去找一个让你感兴趣的问题。
        • 19.如果开发协调者有一个至少像Internet这样好的沟通媒介,并且知道如何不靠强制来领导,那么多人合作必然强于单兵作战。
      • 2.12 管理与马其诺防线
      • 2.13 后记:网景拥抱“集市模式”
        • 1998年,宣布开放源代码。成就了今天的 Firefox
      1. 开垦心智层
      • 3.1 关于“矛盾”
        • 开源文化的“官方”意识形态和他们的实践并不一致。
        • 本文将挖掘这种矛盾的根源,并探明隐藏在其后的动力和压力。我将推导黑客文化和其习惯中一些有趣的东西,并以建议的形式给出结论,以更好发挥黑客文化中这些潜在认识的作用。
      • 3.2 黑客意识形态的多样性
        • 两方面:对开源的热忱度,对商业软件的敌对程度
      • 3.3 理论宽松,实践严格
        • 1997年Debian自由软件准则,形成了开放源码定义 OSD
      • 3.4 所有权和开放源码
      • 3.5 Locke及土地所有权
      • 3.6 黑客境遇和礼物文化
      • 3.7 黑客的乐趣
      • 3.8 声誉的多面性
      • 3.9 所有者权利和声誉激励
      • 3.10 “自我”的问题
        • 黑客本人一般不承认荣誉模型
      • 3.11 谦逊的价值
        • 抑制声誉模型中的噪音
      • 3.12 声誉竞争模型的推论
        • 开源项目发展的总体趋势:填补空白,类别杀手
      • 3.13 什么才是好礼物
        • 1.如果它不能像我所预期的那样工作,那就不是好的——不管它多么聪明和有原创性。
        • 2.在心智层的拓展性工作要比在某功能域内(对现有作品)的重复性工作好。
        • 3.能进入主要发行版的作品比不能进入的好。在所有主要发行版中都包含的作品最令人尊敬。
        • 4.“使用”是最真实的赞美,类别杀手比同类竞争者好。
        • 5.相比那些只挑有趣和简单工作的人,长期致力于艰苦和乏味工作(如调试、写文档)的人更令人钦佩。
        • 6.重要的功能扩展比低层次的修补好。
      • 3.14 心智层所有权和动物行为学
      • 3.15 冲突的起因
      • 3.16 项目组织结构和所有权
      • 3.17 冲突和冲突解决
      • 3.18 文化移入及学术界关联
      • 3.19 礼物胜过交换
      • 3.20 结论:从习惯到习惯法
      • 3.21 进一步研究的问题
        • 缺少善意独裁者的项目大多失败了
      1. 魔法锅
      • 4.1 与魔法无异
      • 4.2 礼物文化之外
      • 4.3 批量制造的错觉
      • 4.4 信息要免费的神话
      • 4.5 反公地模型
      • 4.6 闭源的理由
      • 4.7 “使用价值”资助模型
      • 4.8 为什么销售价值问题多多
      • 4.9 非直接的销售价值模型
        • 占领市场 网景公司 Mozilla
        • 硬件糖霜 硬件公司开发驱动代码
        • 送配方,开餐馆
        • 附属物策略 周边
        • 当下收费,未来免费
        • 软件免费,品牌收费
        • 软件免费,内容收费
      • 4.10 何时开放,何时关闭
      • 4.11 用开放源码做战略武器
      • 4.12 开源和商业战略风险
      • 4.13 开源的商业生态
      • 4.14 应对成功
      • 4.15 研发开放和资助创新
      • 4.16 走向彼岸
      • 4.17 结论:变革之后
      • 4.18 后记:为什么驱动程序闭源会让制造商坐失良机
      1. 黑客的反击
      • 5.1 黑客的反击
      • 5.2 超越 Brooks 定律
      • 5.3 模因和神话创造
      • 5.4 山景城之行
      • 5.5 开源的起源
      • 5.6 意外的革命者
      • 5.7 运动的各个阶段
      • 5.8 陆战进展
      • 5.9 走进未来
    • 后记:软件之外
    • 附录A:如何成为一名黑客
    • 附录B:fetchmail成长的统计趋势
    • 正文注释 SNAFU Situation Normal All Fucked Up
  • links