关于开源的争论
今年夏天,我在工作时间里花了很多时间来编写各种框架,以方便我的日常工作。简而言之,它加载带有标记的xml,该标记定义了站点的块,它们的内容和样式(非常类似于html),并处理资产的加载等。
现在,我对结果如何感到非常满意,并且我一直渴望发布一些代码以供公众使用(并仔细检查)。我还可以合理地确定,它可以填补空白,以便快速,轻松地构建网站(或者其中的一部分)。
说服我的老板/同事以开放源代码许可证发布它是一个好主意,那么最好的论据是什么?
解决方案
回答
- 人气度
- 社区贡献
- 公众监督
- 我们将被迫遵守标准。 (这反过来会使产品更好)
- 善意
回答
我认为,开源是一个好主意的关键在于,因为我们将一大批通常免费工作的人聚集在一起,以创建有用而令人兴奋的东西。像Digg这样的网站正在发布比Slashdot员工更多和更好的故事,因为社区推动了它。同样,如果我们有一个足够令人兴奋的项目来吸引参与,那么一个开源项目是否可以比一个专门的团队完成更多的工作。还有许多其他好处,例如改进代码和一路学习。
回答
宣传:我们可以以Ruby on Rails框架为例。
它是为执行37signals Web应用程序而创建的。他们将其开源,然后有人来构建Twitter。想象一下他们的宣传!
回答
OSI有许多不错的资源,其中http://www.opensource.org/advocacy/case_for_business.php可能与我们最相关。
有大量的开源项目,当流行时,我认为最大的优势是将错误修复和增强功能归功于该项目。我们倾向于只在工作时为用例开发必要的功能(当然确实存在例外情况),最好让其他人在项目的其他领域工作。
就是说,人们通常只会这样做,如果他们自己对该项目有用途,并且提高知名度与营销商业项目一样困难,我们可能会发现只有少数人通过模糊的Google偶然发现该项目搜索!
因此,尽管有很多面向开发的优势,但即使没有多少(或者任何)实际用户,从业务/公司的角度来看,组织仍在支持开放源代码下的内部项目的发布,这看起来非常好。许可证。这向准员工展示了组织的开放性,这是件好事。
因此,尽管我们只能从规模上获得巨大的开源优势,但是很少有明显的优势可以立即开始工作,即为公司树立好名声。
回答
使产品开源的最重要的贡献在于,它使人们立即可以更容易地使用它。
它还可以帮助对工作真正感兴趣的人查看工作,提出改进建议,甚至有时还可以。此外,我们还可以为庞大的开源软件资源库做出贡献,并以自己的小方法帮助社区发展和学习。
回答
给公司带来的好处很少。其他人给出的所有原因都假定某种程度的……不太可能。大多数商务人士将意识到,无需费劲思考,因此他们不会找到足够的广告或者杠杆作用,公共审查或者工具改进来承担将其发布为开放源代码的"风险"。
也就是说,这是公司将内部工具发布为"开源"的"风险"论点的最佳对策:如果它不是我们核心能力的一部分,并且要谨慎行事,以免它占用公司资源(或者揭露公司的机密/基础架构),实际上没有任何风险。即使损失很小,公司也不会损失任何东西,并且会获得潜在的收益。
回答
我已经发布了几个公司时间开发的软件包作为开源。基本音高:
发布此消息对公司而言更有利可图或者更有利:
- 此套餐不属于我们的核心业务。我们不会把秘制调味品的配方丢掉。
- 我们将吸引更多的人来执行代码,查找错误并由此提高代码质量。
- 我们可能会找到一些人,他们会为我们认为有用的功能贡献代码。
- 优秀的招聘工具,第1部分:优秀的程序员将被我们开明的开发人员友好型组织所吸引。
- 优秀的招聘工具,第2部分:我们可以看到一些在行动中的人,我们可能对招聘感兴趣。
这是通过这种方法发布的两个独立软件包:
- http://code.google.com/p/orapig-最近
- http://sourceforge.net/projects/kap/-在我的老公司