《大教堂与市集(The Cathedral and the Bazaar)》书评

出版社:欧莱礼出版社
出版日期:1999
ISBN:9781565927247
作者:Eric Steven Raymond
页数:279页

殊途同归还是分道扬镳

感谢洛基开放文化实验室的译文https://code.google.com/p/book-on-foss/downloads/listRaymond这本书中也大量引述了Brooks《人月神话》中的观点,并予以讨论Brooks的新作《设计原本》的提到了这本书,并给了很高的评价,真实英雄相惜啊这本书旨在探讨Linux集市式的开发模式是成功的原因和意义写于1999年,13年后,除了linux以外,Mozilla Firefox的成功再次印证了集市模式的可行性如今虽然集市模式并没有成为主流,但是可以明显的发现,传统的软件开发模型中注入了大量集市模式的元素,如今流行的Scrum等敏捷方法论中大量借鉴了集市式开发的思想和实践,比如code review、pair programming、self-organize等等。软件产品日趋复杂,工作趋于细分,开发者已经逐渐不是自己产品的用户,这种状态下只能引入大量的管理手段来控制项目。集市模式提供了一个反管理的模式,一个自组织的社区,自发的培育出高质量的软件目前集市模式两个成功的例子:Linux和Firefox都是技术型产品,但是Firefox比Linux往前迈了一大步,毕竟firefox的大部分用户不是开发者,我很期待一个集市模式下产生的商业产品摘要个人热情(01) 一个好的软件的起因都是戳到了开发者本人的痛处(02) 好的程序员知道写什么,伟大的程序员知道重写和复用(03) “放弃一个,无论如何你总要放弃一个”(《人月神话》 11章)(04) 如果你有正确的态度,有意思的问题会找到你(05) 当你对一个项目失去兴趣的时候,你的最后职责是把他交接给一个称职的继任者有用户(06) 将用户吸纳为合作开发者,是快速改进代码和调试bug的最佳途径不停快速发布(07) 早发布、常发布,听取用户意见通过快速发布反馈把在bug上的重复做功最小化(08) “只要眼睛足够多,所有bug都好捉”源码级别的bug报告比一般用户和测试的bug报告更有效,因为开发者和其他人的脑中的程序模型不一样,开发这从里往外看,测试者反之作者Fetchmail项目实践(09) 聪明的数据结构比逻辑良好的代码更重要(10) 重视你的beta版测试者,他们是项目的重要资源(11) 自己拥有好主意固然不错,但有时候用户的好主意更好(12) 最有突破和创新的方案常常来自于意识到自己把问题的模型弄错了(13) 设计达到完美的时候,不是增加的不能再增加了,而是减少的不能再减少了(14) 任何一个工具都应该达到预期的用处,但是真正好的工具会带来意料之外的用处(15) 写任何网关软件的时候,不要干扰数据流(16) 多数时候语言对于人的方便比对于计算机的方便更重要(17) 一个安全系统的安全性取决于它保守的秘密的安全性,小心伪秘密市集式开发的必要前提(18) 要解决一个有意思的问题,首先得找到一个有意思的问题项目不能从零开始,至少有一个可以跑的原型设计的原创性不是成功市集项目的关键项目发起者有一点吸引人的本领是十分重要的封闭环境中只使用个人脑力的开发者,将会输给一个知道怎样创造一个开放的、进化式的环境——从中吸收成千上万人的探索设计空间的反馈、编码贡献、bug hunting和其他改进——的开发者执照许可、专利、贸易秘密和商业利益等法律限制会抑制集市的发展(19) 如果开发的协调者有一个至少和互联网一样好的通讯媒介,而且懂得如何不通过强迫来领导,多个头脑不可避免地优于单个头脑linux黑客们的功效方程是他们的自我满足和在其他黑客中的声望这些摸不着的东西 “egoboo”集市模式 or 大教堂?管理 or 反管理钱 or 兴趣在构建成功软件的路上,大教堂和集市是殊途同归还是分道扬镳,作者没有给出答案,但是从现代软件工程方法论的进化来看两条路在越走越近

大教堂与市集

挺好。读了之后,对开源和linux有更深的见解。很短的文章,中文1个半小时内读完^_^

评论大教堂与市集

“大教堂和集市”是软工界的奇文,文章的源起在于作者对于Linux类系统开发方式的质疑以及后继的学习反思和实践。传统的软件工程无论是什么模式,都讲究一板一眼,学究气十足。基本上我呆过的商业公司,也是一板一眼的执行各自的process。但是我们可曾反思过,linux内核的看似杂乱的开发流程如何产生出那样高复杂度、高质量的软件产品。我们可曾反思过,是否可以将自组织的类linux开发方式引入到公司内部呢?其实在国外流行了一阵子的极限编程也算是一种小反思。作者对于Emacs开发的描述我也很认同,对于某些大型开源软件,其核心部分可以采用大教堂模式,甚至可以Overengineering,对于周边的东东采取集市模式。我觉得这种方式成功的原因就在于看似乱的集市之中有其内在的控制力,这个控制力就是人心或者可以说是自尊、Reputation。因为开源项目所有的资料源码都是公开可见的,人人可以参与,因此大家都有主人翁的感觉。为了不因为code 太烂、进度太慢被别人骂白痴,个人也都格外的用心,这就是集市模式的成功之处。另外作者对于bug fix的感受我也赞同,容易复现的bug的fix速度和质量取决于owner对于模块的理解能力,而困难的不易复现的bug修复的速度和质量取决于关注该问题的人员的数量,人数越多,短期覆盖的逻辑路径越多,复现的几率越大,这就是大集市的力量。很多开源软件的bug刚出现,就已经有用户直接将fix的 diff发送过来,这就是集市的力量。基于上述两种现象,我一直希望公司可以允许QA(或者叫测试人员)可以同developer一样看到Code。我相信如果上述理论是正确的,这种模式对于提高开发质量是有帮助的。

教堂与市集

作者以自己的fetchmail项目,讲述了软件开发的市集思想,“linus理论”。这也是linux成功的关键吧。linus作者很懒,但他能调动大家的力量,也能包容粗糙的代码。让linux的开发像个市集。而不是像其他unix那样的教堂模式,只靠少数几位牛X的人在那里搞。


 大教堂与市集(The Cathedral and the Bazaar)下载 精选章节试读


 

外国儿童文学,篆刻,百科,生物科学,科普,初中通用,育儿亲子,美容护肤PDF图书下载,。 零度图书网 

零度图书网 @ 2024