这是针对英文原版页面的中文翻译。

为什么黑客马拉松应该坚持自由软件

黑客马拉松是一种为数字开发项目提供社区支持的常规方式。社区邀请开发者参加活动,活动的氛围令人鼓舞,并且活动提供为实际项目工作的机会以及辅助资源。大多数黑客马拉松都会按照预定的标准选择他们支持的项目。

黑客马拉松契合社区合作和互相尊重的精神。与此精神相应的软件是自由软件,自由的意义。自由软件的许可证给予其用户(包括开发者)合作的自由。因此,黑客马拉松在自由软件社区合情合理。硬件设计项目 也可以并且也应该是自由的。

对自由的尊重并不是理所当然。与之相反,我们周围的公司毫不知耻地发布(非自由)软件,只为那些向他们臣服的人使用。这些公司开发软件作为 主宰和控制他人的手段

这些公司带有伤害的成功驱使年轻的开发者以它们为榜样开发程序或硬件设计来主宰用户。有时,他们会把项目带到黑客马拉松,寻求社区的支持,但拒绝社区的精神:他们无意以合作回报合作。接受这些项目的黑客马拉松破坏了他们赖以维系的社区精神。

有些任性的黑客马拉松是专门为帮助某些公司的计算而开展:例如 欧洲加拿大银行 Expedia 等的一些案例。虽然他们并没有明说,但是他们的声明给人的印象就是他们的目标是推动某些非自由软件的开发,而参加者正是要为这些非慈善性的项目提供帮助。

这些例子告诉我们,黑客马拉松会堕落到何种程度。我们再回头看一些比较常规的黑客马拉松案例,它们不那么商业化,但是也接受专有的项目。

当开发者带着项目来到黑客马拉松,而没有公布项目是否是自由软件,这并不是明显地和社区精神对立,但是它损害了社区精神。黑客应该为自己立足的社区添砖加瓦,坚持按照社区精神发布黑客马拉松项目就是这样的行动。

这意味着要告诉开发者,“为了赢得我们的支持和帮助,如果你觉得你的项目可以使用或发布,你必须同意让社区有自由使用你的项目成果。”

作为一个黑客马拉松的个人参加者,你可以支持我们的原则:在加入黑客马拉松之前,请询问,“你们的项目将会按照什么许可证发布?在加入之前,我希望确认你们使用的是自由许可证。”如果项目开发者说他们会以后再定许可证,那么你可以回应你也以后再决定是否加入。不要不好意思——如果其他人看到这样的讨论,他们可能也会这么做。

要想知道哪些许可证是自由许可证,请参看 GNU 许可证列表。大多数 “开源” 许可证是自由的,但是 有些开源许可证因为限制太严而不是自由许可证

个人的坚定有效果,但是黑客马拉松自身的政策会有更大的效果。它应该请每位参加者承诺遵守以下规则:

如果你要发布或使用这里的代码或设计,那么你会按照自由许可证发布源代码。如果你发布项目的可执行文件,那么你也会让它自由。

许多黑客马拉松由学校组织或赞助,这是它们应该遵循这个规则的又一个理由。自由软件是为公共知识做贡献,而非自由软件不向公众公开知识。因此,自由软件支持教育精神,而专有软件与之背道而驰。学校理应坚持其所有的软件都是自由软件,包括它们支持的黑客马拉松。