通告
一旦项目可以展示了—不必完美,只要能看—就可以将其通知给世界了。这是一个非常简单的过程:来到http://freshmeat.net/,在顶端的导航栏点Submit,然后输入你的新项目的通告。Freshmeat是一个大家关注新项目通告的地方。你只需要在那里用项目新闻抓住一些眼球,就会众口相传。
如果你知道某个邮件列表或新闻组会对你的项目合题或感兴趣,那么请在那里通告,但请注意,一个论坛只有一个通告,将人们引向项目本身的论坛,进行后续的讨论(通过设定Reply-to
头)。这种发布一定要简短扼要:
To: discuss@lists.example.org Subject: [ANN] Scanley全文索引项目 Reply-to: dev@scanley.org 这是关于Scanley项目的一次性公告,Scanley是一个包含丰富API的开源全 文索引和搜索引擎,主要为程序员提供对于大组文件的搜索服务。Scanley 现在是可运行的代码,正在进行活跃的开发,征集开发者和测试者。 主页: http://www.scanley.org/ 特性: - 查找纯文本、HTML和XML - 单词和短语查询 - (计划) 模糊匹配 - (计划) 增量更新索引 - (计划) 索引远程网站 前提条件: - Python 2.2或更高 - 包含索引的足够空间 (大约原始数据的2倍大小) 更多信息,请访问scanley.org。 谢谢, -J. Random
(有关后续发布版本,以及项目其他事件的通告建议,请看Chapter 6, 交流的the section called “公开性”。)
对自由软件世界是否应该以一个可执行的代码作为开始,以及在设计/讨论阶段就进行公开是否有益还存在着争议。我过去认为从一个可执行的代码开始是非常重要的因素,这是成功项目和玩具的重要区别,慎重的开发者只会加入有一定事实的软件。
但也有例外。在Subversion项目,我们从设计文档、一组核心的感兴趣和紧密联系的开发者、许多热闹的介绍和不能运行的代码开始。完全出乎我的意料,项目从一开始就获得了活跃的参与者,当我们可以运行什么时,已经有不少志愿开发者已经深入参与进来。Subversion不是唯一的例子;Mozilla项目也是从不能运行的代码开始,现在成为了成功和流行的web浏览器。
面对这种证据,我必须回过头来看可运行代码是启动项目必要条件的断言。可运行程序仍然是成功的最重要基础,一个好的经验法则是直到可以运行再开始公告项目。然而,有一些环境下,尽早通告是有意义的。我想这时起码要有完成良好的设计文档,或其他代码框架—当然,这也许需要根据公共反馈调整,但是要有一些实际的东西,比好的意图更确切地东西,让人们可以动动牙齿。
无论你何时通告,不要指望立刻有一大堆志愿者会到来。通常情况下,通告的结果是得到很少随意的询问,以及一些人加入你的邮件列表,除此之外,一切如常。但随着时间的流逝,你会逐渐发现代码贡献者和用户参与的增加。通告仅仅是播下种子。消息的传递需要很长时间。如果项目持续回报参与者,这个新闻就会传播,因为人们喜欢分享他们所发现的好东西。如果一切都好,指数级交流网络的动力会慢慢将项目改变为复杂的社区,你不必再知道每个人的名字,也不必跟踪每一次对话。下一章我们将讨论在这个环境下如何工作。