附二:本来面目——大教堂、集市,与作坊
节选自《程序员》杂志 2009 年第 3 期同名文章。
不管是理想化的,还是神化的方法与论断,在《梦断代码》里都用到过。当然这些方法、论断也确如乩言一样灵验或失灵过。正因其灵验,以及偶尔的失灵,才让那些崇信者拜服与生畏(更何况一些崇信者原本就是这些方法与论断的始作俑者)。
《梦断代码》中的团队有一个绝对集市的名字——OSAF,也有绝对集市的原则:开源且接受大众的眼球(眼睛足够多,缺陷无处躲)。但是这个项目启动了一年之后,这个团队还没有一个真正意义上的领导者:他们(包括那些从来不出现在团队中的志愿者们)总是在不停地开会、讨论,以及推翻上一次的开会与讨论。
团队和产品的精神人物,是又出钱又做事的卡普尔。他声称要做一个能打败一切 PIM 软件的 PIM 软件。简单地说,直到这个软件只剩下以自己为对手,这就是目标。类似的目标也出现过、成功过,例如 Internet Explorer。因此,看起来卡普尔是要在开源界打造一个类似的神器。正是在这样的精神感召下,一批热血之士“混成”(混然天成的混成)了这个团队。
卡普尔看着大家积极地讨论着他的“原始需求”,并接受了他们制造出来的更多的需求。在这些目标堆积成山之后,卡普尔开心地聆听了第一任项目经理基尔默(或只是一个技术首领)的预期:我们将在年底发布该软件的一个早期版本,预计明年年底或稍迟的时间即可以发布 1.0。
“他的预估太过乐观了”,Rosenberg 在后来说。
在《大道至简》一书中,我写过:做了这么多年项目,当我一听到“那我们就开始开发吧”这句话,就哆嗦。因为大多数人在说这句话的时候,连组织结构是什么都还没搞清楚呢。
果然,接下来 OSAF 团队陷入了“与组织作斗争”的阶段。没有决策者,这意味着任何一个“看起来像决策的东西”都可能在你背转身去的时候被打破(P.154);没有设计者,这意味着任何“看起来应该已有雏形的东西”其实都未曾现身(P.132);没有跟踪与限制,这意味着任何人都可以停下手中的工作,去做另一件“看起来更要紧的工作”(所以他们制造了大把大把的工具并不停地废弃它们,P.129);没有……是的,OSAF 团队没有任何可以依赖的组织结构,直到一年之后,他们把项目组分成了三个小组,并设立了正式的团队经理,由卡普尔兼任(P.157、P.158)。
“别再继续发疯了!在书里,他们该错的都错了!”Rosenberg 在后来说,“我自己也在怀疑,他们何时才能起步?要花多长时间?障碍是什么?”(P.158)在这个时候,《梦断代码》这本书正好写到一半。你可以猜测另一半的结果,或者干脆直接给它判死刑。
但真正的问题是在哪里呢?是集市工程的失败么?问题是,《梦断代码》在后面还记叙了微软 Longhorn 项目的失败,那里有着最具规模的教堂队伍,从神职人员到扫地的,一个不缺(据说连扫地的都至少是硕士以上学历,以备将来发展为扫地老僧)。
具体工程也会失败,给一个工程冠以“具体”的名字,并不代表它就成功了。《梦断代码》讲述了一个具体工程的失败,失败的过程闪耀着光辉:集市的、教堂的,以及牛人们的、有钱人们的……无限光辉。
但是他们想做什么来着?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论