我一直在想这个看似乌托邦的开源世界。
假设这里的绝大多数用户都是需要某种收入来源的专业软件工程师,我认为我们大多数人都持有稳定的赚钱工作。
那么谁是开源社区的主要参与者?谁是将这些宝贵时间用于这些项目的人?他们的好处是什么?大多数人只是看到错误,修复,提交和忘记项目的人吗?或者他们是否经常参与构建产品的过程?
您如何发现自己为开源项目做出贡献?
答案 0 :(得分:10)
我以开源框架或商业产品为基础的专业项目谋生,而且往往是两者的结合。
多年来我使用的很多商业产品最终都非常昂贵。假设您为网络应用购买单点登录解决方案。当你完成了你必须做的事情时,我和很多其他人都经历过你最终会重新实现它的2 / 3ds,有时几乎没有任何你认为你会去的商业产品使用。
因此购买东西的问题在于它永远不适合,并且购买决策通常基于比较功能的功能矩阵,而实际上没有考虑这些功能在您自己环境中的适用性。
我想要了解的是,成熟的组织明白,即使您支付了产品许可证,也没有免费午餐。您花费100万美元购买内容管理系统的事实并不意味着您不会再花费200万美元进行50%的计划活动和50%与此相关的计划外活动。
因此,我们可以,将会并且确实为我们参与的所有OSS项目编写补丁。有时候我们会修改子系统,而且大部分时间我们都会提交子系统。有时候我们决定只需要50%的框架,我们只需要为自己分配其余部分。但我们仍然希望继续使用我们使用的50%的框架。尝试使用商业产品;)一般来说,我们会尝试留在“开发者”邮件列表中,但我们很少费心去获取项目的提交权。
答案 1 :(得分:6)
我对开源项目的最大贡献不是为他们贡献代码,而是实际上使用。
从哲学上讲,这可能与项目的健康和效用,实际用户提交反馈,在日常会话或此类网站中留下建议和评论几乎同等重要。
答案 2 :(得分:5)
大多数人只是看到错误,修复错误,提交错误的人 忘了这个项目?或者他们是否经常参与其中 在构建产品的过程中?
我绝对属于第一类(专注于长期项目不是我的事)但是有很多人属于第二类。没有它们,我们就没有太多可行的自由软件生态系统。这些人中有很大一部分是为编写和维护开源软件而付费的,但仍然有很多业余爱好者为了好玩而这样做。事实上,我认识的大多数支付给开源软件工作的人如果必须免费(我当然会)这样做,他们仍然会有所贡献。捐款的频率会降低。
您如何发现自己为开源项目做出贡献?
当我还是学生时,我玩过各种免费/开源软件(包括gdb,OpenSSH,arping,一些IRC客户端,Snort,各种Perl模块,一些Debian特定软件包,......)的内部构件,并修复了一些这样做时会出现错误以及实现一些功能。没有什么比SLOC更重要的了,其中一些贡献被拒绝了,但它仍然很有趣和有趣。
我共同创立了一个自由软件用户组,该组已经运行了4年多。在会议上,我有时会提供有关免费软件的技术演示。我们还尝试定期参加LUG / FSUG的外部活动。
我也经常从我喜欢的项目中购买T恤,毛衣和绒毛,以便为他们提供一些经济贡献。
我现在正在开源公司做技术支持,因此我会定期报告错误并编写修复程序。而他们实际上是为此付钱给我的。为什么选择在开源之间做出贡献并在你可以同时做一份真正的工作?
答案 3 :(得分:3)
很多关于你做的事情的自豪感。当你做的代码被同行接受时也会获得信心。
在初始阶段之后,很多关于能够管理代码构建和发布,提出新想法和练习技能。
开源项目中的一些人会这样做,因为他们觉得他们没有从工作中获得的自由正在解放。
我个人尝试尽可能多地贡献,从文档到错误修复。这并不是说我做了很多,但我喜欢它,但我可以。
答案 4 :(得分:3)
我已经启动了我的项目,因为当时我找不到任何我想到的应用程序。我已经把它作为开源的,因为Sourceforge有一个很好的基础设施,我不愿意亲自应对。
我几乎没有足够的谷歌adsense来支付域名和托管费用,除此之外,这些年来很有趣。并且能够完全控制您的工作,这是一种令人耳目一新的体验,这在我的日常工作中肯定不是这样。
答案 5 :(得分:1)
我依靠开源网络框架(Aida/Web)开展专业项目,这是我的作者和积极贡献者。我们社区的其他人也越来越多。他们赚钱,同时回馈工具,实际上可以赚钱。因此,循环关闭,造福所有人。我很确定这样的模型对于开源来说是最好的,许多其他开源人员也都在关注它。
答案 6 :(得分:1)
我的所有操作系统项目都是以需要满足的实际业务需求开始的。完成工作后,我可以通过Google Code向公众发布applet或其他内容。到目前为止,我还没有任何人提交错误报告,我怀疑自己会不会。我发布的大部分内容都相当小,但希望是有用的。就个人而言,我并不相信使用操作系统软件的人会提交错误报告:他们只是去装载实际有用的东西。
答案 7 :(得分:1)
我同时做到了。
我不是一个“主要参与者”,但如果我可以帮助改进一个我感兴趣的项目,我尽我所能,从添加一些文档,指出一些可能的改进,修复一个bug ,提供补丁。
例如,我帮助改进了PHP框架。有时我会提供或改进法语翻译。我至少有一个项目(现在仍然是,现在花费的时间少得多)参与其中,Scintilla and SciTE(我在SciTE学分中按时间顺序列出了贡献者名单)。当然,我的主要兴趣是让编辑符合我的需求和品味。这是开源的精神,为那些对项目有浓厚兴趣的人们做出贡献。
我帮助了,但同时,我学到了很多,所以对每个人来说这都是一个很好的协议。
答案 8 :(得分:0)
我一直专注于开源三年,此外我还把FOSS作为“业余爱好项目”。我们正在使用我们自己的Ra-Ajax来获得咨询服务。首先,我们可以创建非常奖励和乐趣的OSS!其次,它为我们自己创造了更好的工具,因为我们知道进出的工具通常可以收取更好的价格然后如果我们正在处理一些“随机的东西”“其他人制造”......
答案 9 :(得分:0)
您如何发现自己为开源项目做出贡献?
我认为,就像编程本身一样,它与你的激情和兴趣有很大关系。如果您正在处理某个项目,或者对某个主题感兴趣,并且发现自己需要一个工具或一个执行X的模块,请搜索它。有可能至少有一个人已经发布了一个已经完成它的开源项目。根据您的发现,您可以:
当你第一次开始时,你很可能不会成为一夜之间的开源摇滚明星。就像互联网本身一样,你可能不会马上注意到它。但是,只需完成整个过程就可以教你足够的时间。
我就是这样。我没有在开源社区为自己命名。我通过阅读博客和使用代码了解了一些关键玩家的名字,但这确实错过了开源的重点。我发现了一些非常好的工具,并且显着提高了我的知识和编码,这对我来说非常重要。
根据我的经验,我通过以下一种或多种方式与许多人交谈过看到开源:
我认为这是一个很好的学习机会,可以为您的工具箱添加工具,了解有关您所在行业及其他行业的更多信息,并同时享受乐趣。
答案 10 :(得分:0)
好吧,我已经在我的博客上启动了一个操作系统项目,以解决Visual Studio XAML过程中的一些感知缺点/进程加速。目前它不是100%开源的,因为我是该项目中唯一活跃的开发人员,但我让人们为该项目贡献了资源,这对我来说是一个很好的激励我继续开发它。
稍微不同的是,我编写了已在Code Project上发布的应用程序和文章,因此人们可以自由下载并按照自己的意愿使用它们。我的理论 - 如果我把它放到公共领域,那么你可以自由地使用你认为合适的东西;我不想要任何钱 - 这不是我写这篇文章的原因。
为开源项目做贡献是磨练可能不在主要开发项目中的技能的好方法,因此这是提高简历的一种非常好的方法。
答案 11 :(得分:0)
报告错误。书面文章。在论坛/ IRC上回答了问题。甚至开始了我自己的OSS项目(自那以后我已经交给其他人)
答案 12 :(得分:0)
我真的很想为OS项目做贡献,但是有三个孩子和一份全职工作,我从来没有发现自己有足够的时间做任何事情而不是消耗操作系统。希望这会很快改变,但我相信至少有少数开发人员和我在同一条船上。
答案 13 :(得分:0)
诚实的回答:不多。
我自己写了很多,但我并没有真正考虑那个贡献。我给其他项目的最多的是一些错误报告。
答案 14 :(得分:0)
答案 15 :(得分:0)