我正在开始一个开源项目。有什么建议?

时间:2009-11-11 19:14:43

标签: open-source agile scrum

首先,我回顾了this question,但我想我需要更多信息,因为我之前从未参与过开源项目。

我正在启动一个开源项目,目前托管在Google代码上。它是在ActionScript3(面向程序员)中创建Flash游戏的框架。到目前为止,这么好,但我想开始围绕它建立一个社区。该项目的第一次正式稳定发布完成了60%(我使用Scrum来指导开发过程,目前我们在开发团队中有3人)。顺便说一句,该项目拥有MIT许可证。

您对如何指导开发有什么建议,我应该看看哪些工具?

Assembla vs Google代码与Trac vs Pivotal跟踪器?

你对此有什么经历?

7 个答案:

答案 0 :(得分:5)

如果您正在寻求建立社区,那么并不总是关于工具,更多关于您可以用来构建社区的流程。有很多人会使用你给他们的任何工具,或者会选择(或拒绝)参与基于这些工具的项目,但如果社区发臭,很少有人会徘徊。

我建议花点时间考虑如何拥抱社区。您准备好花时间回复错误报告吗?您将如何处理增强请求?如果有几个人想要它,你是否愿意在代码中加入一些东西,但是你却不愿意?这些都是关键问题,最终将比Assmebla和Trac重要得多。

您可能需要查看Karl Fogel的“制作开源软件”一书或Jono Bacon的“社区艺术”,以获取有关管理和建立社区的更多提示。

答案 1 :(得分:2)

首先,明显的下载按钮,以便一个人可以下载您的项目,使它简单易行。其次,论坛让人们可以给你关于项目的好坏反馈。

祝你的项目好运!

答案 2 :(得分:2)

对我而言,指导开发更多的是优先考虑必须做的事情,因此我很想说:为什么不使用Google Code问题跟踪器,因为您的项目已经托管在那里?我认为它提供了你所需要的一切。自定义它以添加 Estimates 字段(如果您需要)(对于Scrum)并在那里进行。

为什么你认为你还需要别的东西?您已拥有源存储库,代码审查工具,Wiki,邮件列表,问题跟踪器,贡献者的安全访问权限。您不需要更多的协作工作。你错过了什么?即时通讯?使用Skype或Gtalk。 IRC?你现在不需要它。不,真的,我认为一个工具不会在这里解决任何问题(即使你不能绘制你的燃尽图,对于非全日制项目IMO也没什么大不了的。)

因此,因为任何其他工具与其他Google Code服务的整合程度较低(例如,我喜欢在自动链接的评论中使用“问题#ID ”将我的提交链接到问题),我坚持你现在拥有的东西(也许只是添加Gtalk / Skype以简化沟通/协作),我开始创建问题并优先排序。良好的工作优先顺序是项目成功的关键,没有银弹工具可以为您做到这一点。然后,计划固定日期里程碑(发布)并将最重要的问题分配给即将到来的里程碑。在截止日期前尽可能多地解决问题。当发布时间到来时,释放已完成的内容,将未实现的问题推迟到下一个里程碑并重新开始。

答案 3 :(得分:2)

  • 努力采纳。您获得的用户越多,回馈的人就越多。

  • 在wiki上包含大量代码示例,让用户下载示例应用程序。

  • 确保使用ASDoc详细记录您的API。

  • 提供路线图,以便潜在用户可以看到您的方向和意图。

  • 努力确定功能请求和错误的优先级。您和您的团队没有时间做任何事情。

  • 尽可能无缝地进行集成。希望用户只需下载.swc(Flash库)并将其链接到他们的应用程序中。

  • 提前发布,经常发布。我讨厌必须从存储库下载并使用HEAD修订版,因为团队只正式发布了他们项目的一个版本并且已经有一年了。

答案 4 :(得分:2)

我建议查看这本书:http://producingoss.com/

我相信有免费的在线和pdf版本。

我已经搞乱了Trac,它肯定可以完成工作但是如果你已经在进行敏捷开发过程,我会查看Pivotal Tracker。我在侧面项目中使用它,它非常漂亮,更不用说免费使用了。 Pivotal拥有您所期望的所有东西:故事,积压,速度计算,一些图表等等。

答案 5 :(得分:1)

如果您需要一个软件来支持您的scrum项目... agile42为开源项目提供free Licenses of Agilo for Scrum Pro

答案 6 :(得分:0)

不要在codeplex上托管您的代码。我最近创建了一个开源项目,作为article series on DotNetSlackers。com的基础,向人们展示如何构建像SO这样的网站。我错误地在CodePlex上托管了这个项目。我的自动构建会定期向我发送破坏的构建电子邮件,因为CodePlex会一次随机下载几个小时。它推动了我的努力!

如果您计划开发免费的代码但不打算让任何人和每个人向您的项目提交代码...托管您自己的源代码控制(perforce对于几个用户是免费的)或使用像谷歌一样来托管你的代码。