一年前,我是.NET的忠实粉丝。我正在按需开发自定义应用程序,并且不难理解如何通过这种工作来生活 - 客户要求您制作自定义应用程序,安排价格,完成工作并赚钱。
现在我听到越来越多的人谈论开源项目和集体智慧,这似乎是一个伟大的概念,为创新做出贡献。但当然作为一名全职员工,很难找到免费工作的时间,而且我不明白除了个人满意度之外,还有什么其他好处可以促进开源项目。
如果你能解释一下如何为开源项目做出贡献,我将非常感激。
感谢。
答案 0 :(得分:15)
开源项目有一些好处。我会在这里简要介绍一下你可以随时弄清楚细节。
仅仅因为某些东西是开源的,并不意味着它不具有“商业可行性”。例如,您可能会收取使用该应用程序的客户端的安装,配置和指导服务的费用,以及该软件是开源的这一事实是一个很大的卖点。你不从许可费中赚钱,你从咨询公司赚钱。
答案 1 :(得分:5)
就工作能力而言?街头威望。
同行采访者经常在同事程序员对开源项目的贡献中采用(不同程度的)股票,特别是如果你处于初级水平。它显示了自我激励,积极主动,在分布式团队中工作的能力,证明您实际使用过某种版本控制等等。
答案 2 :(得分:4)
另一个原因:假设您使用1.4版本的开源产品并希望添加一项功能。您将其添加到您自己的副本上,并且不会回馈到开源版本。当1.5版本与你希望拥有的许多其他好东西一起发布时,你将再次需要使用你所需的功能修补1.5。如果您已经回馈并且它进入了开源版本,那么您将不会遇到此维护问题。
答案 3 :(得分:2)
对我来说,在开源项目中工作具有以下优势:
答案 4 :(得分:1)
对于个人用途,许多人想要为开源做贡献,因为他们自己使用了这么多。他们可以使用开源的唯一方法是人们为此做出贡献。此外,如果人们想要添加一个功能,他们可以通过赠送它来帮助其他人。
对于许多公司来说,创建开源软件意味着他们可以从其他人的补充中获益,同时仍然可以获得他们需要的软件。
此外还有大量的个人经验,以及您的简历中的一个好项目有帮助。
然而,最终,大多数开源项目都是由人们运行/创建的,这样做可以使他们更好地运行的软件,以帮助他人。
答案 5 :(得分:1)
对开源的贡献表明,您喜欢软件开发,而不仅仅是工资 - 这可以让您对未来的雇主更有兴趣。
答案 6 :(得分:1)
这是我的理由: Why I spend so much time working on an Opensource project
我对differences between paid jobs and working on open source projects的看法在这里也可能很有意思。
答案 7 :(得分:1)
您可能还会问,为慈善机构捐赠或志愿服务有什么好处?
在获得报酬方面,一些公司雇佣人员从事全职开源项目。但绝大多数的小额捐款都没有直接的货币回报,除了知道该软件已经为使用它的每个人进行了改进。当然,可以建立声誉之类的东西,你可以学到更多的技能,潜在的雇主可以看到你的工作,但这些本身并不一定等于货币回报。
如果您编写自己的软件和开源,您仍然可以销售它,并为其销售支持服务(例如帮助热线,支持,纸质手册,自定义编程)这是开源公司的常见商业模式。 / p>
答案 8 :(得分:0)
帮助改进代码
您可以获得软件的所有更新。如果其他人在您的代码中编辑了某些功能,您可以在代码中找到陷阱和缺陷。
添加了功能
任何人都可以为您的软件添加功能。通过这种方式,您将了解设计中遗漏的所有内容,并为您未来的软件开发做出贡献。
答案 9 :(得分:0)
您可能想尝试阅读由Eric S Raymond(一位大型开源撰稿人)撰写的The Cathedral and the Bazaar。这是一个非常好的概述开源运动的历史,它是如何工作的,它可能在哪里,以非正式和平易近人的风格写成。我非常熟悉开源的来龙去脉(我丈夫的最后两份工作都是基于开源的公司),但我还是从中学到了很多东西。
答案 10 :(得分:0)
您将在项目网站(如果有)中列为贡献者,这很好,因为您可以告诉您的客户您是该开源产品的贡献者。它会增加你的价值。
如果你过去/现在都参与了开源项目,对你的portofolio / resume会有好处。
为了好玩。你热切地帮助自己和他人制作更好的软件。看到你的开源项目增长并被许多公司使用也很有趣。
体验您作为团队一起工作的必要条件。你也可以向别人学习如何编码。