开源软件本就应该是以松散、自组织的形式开发和发展,开源社区的存在,为开源软件开发者和使用者提供赖以生存的土壤。开源社区可以是网站、论坛,也可以是松散的交流、展演等。当然,开源社区第一步要解决的问题就是自己的生存问题。
笔者的建议是,开源社区应该尝试在现有法律框架下,以有限责任公司的治理结构来做国外开源基金会所做的工作。通过这样一种方式,可以有效避免无法注册NGO组织的问题,然后从企业(尤其是那些大型互联网企业)当中募集捐款,通过赞助一些开源项目,逐步推进开源软件社区的良性发展。
另外,国内开源社区还需要从使用者社区转向开发者社区,为开发者参与开源软件提供便利,如建立类似 GitHub/SourceForge 那样的开源软件托管站点,为开源软件项目提供邮件列表、论坛、博客服务等等。
7.结语——给那些仅仅使用开源软件但不做贡献的企业
将开源软件和商业结合,不管是在自己的项目中使用开源软件,还是靠自己的开源软件来赚钱,都无可厚非。关键是,我们需要尊重开源软件著作权的拥有者,按照开源软件所采纳的许可证办事,只有这样,开源软件才能得到长足发展。
通常,开源软件的作者发布开源软件,是希望获得最多用户使用的,在此基础上,作者要么会获得业界的追捧而一夜成名,要么获得一定的商业利益。所以,从某种角度上讲,使用开源软件本身就是对开源软件的一种支持。
但是,这并不意味着你可以随意使用他人的开源软件。合法使用开源软件的前提,就是遵守开源软件的许可证规定的各种义务。
当然,更有积极意义的方式是,将使用开源软件中遇到的问题或者修正、增强代码提交给开源软件的作者,帮助其改善作品。其实,这是任何使用开源软件的企业都能做到的。