`
xpp02
  • 浏览: 1053610 次
社区版块
存档分类
最新评论

一个开源工作者对开源与赚钱的一些想法

 
阅读更多
摘要:本文作者长期以来一直定期为开源世界贡献代码,最近重新思索了一下开源软件的意义,在开发者中引起了强烈共鸣。

15年来,我一直定期地贡献开源代码,但是现在我停下来思考这对我自己究竟意味着什么,也许仅仅是因为我喜欢写代码,也许是我消遣时间的方式:写代码而非思考其中的意义……但是最近我开始反复思考开源、它与IT行业的关系,以及对我——一个开发者来说,OSS(开源软件)究竟是什么。

首先,开源对我来说与自由软件运动无关,而是为了对全人类做贡献。这意味着很多,比如我从不关心别人是如何对待我的代码,也不关心别人是否会发布自己的修改版本,我只希望他们愿意使用我的代码,而不论是以哪种方式。

我还非常希望别人能从中获得乐趣、学习新的知识,甚至挣钱。别人使用我的代码挣钱,并不意味着我失去了什么,恰恰相反,我从中获得了我所想要的:

  1. 如果别人使用我的代码挣到钱,意味着我对世界产生了更大的影响。
  2. 如果有N个项目使用了我的代码并从中受益,他们很有可能会愿意与我分享其所得收入,或者直接雇佣我。
  3. 我也可以使用自己和他人的开源代码,并获得收益。

出于以上原因,我选择了BSD这个几乎等同于“做你所愿”的开源协议。

但是,很明显并非所有人都这样想,很多开源代码贡献者并不希望别人将其想法用于商业产品,他们只希望继续发布同样许可的作品。

对我来说,使用GPL协议所需要遵守的众多规则如同枷锁,限制了人们使用开源代码的自由。但是,接收的回报跟协议本身没有多大关系:如果它真的有用,那么人们会愿意以某种方式进行回馈,而非维护一个分支。发展才是真正的价值的。同样,不能进化的代码库也没有意义。如果你贡献的开源代码很有价值,相信其他同行也愿意把自己的修改合并进去。

无论如何,作为一个用户,我喜欢更少的补丁集和更多的自由。这没有什么可多说的。

在我看来,开源最缺乏的回报在于金钱,而非补丁。创业公司,以及众多低成本运营的IT企业都强烈依赖于众多开源程序。企业应当向他们所使用的核心开源软件的开发者捐赠一部分收入,因为他们的成功离不开这些软件,我认为更理智的方式是雇佣这帮人专门负责开源软件的开发(就像VMware和我的关系一样),或者直接捐款。

很多开发者的工作仅仅是因为一时的激情,只有很少一部分从中受益。如果能分配些捐款,相信人们会更关心他们一时激情的开源作品,因此带来的经济价值可能比日常薪水工作更多。很可惜,你无法pull request不会付款,虽然通过提交源代码来帮助源代码很有意义,但在我看来还不够完美。

也许你的视角完全不一样,但在我看来,当今IT行业很多的价值都是由开源软件所驱动的,其中很多又是在业余或工作间隙时间努力完成,当然,前提是有个允许允许你这样做的雇主。

从经济角度来看,我觉得这样做还不够好:如果聪明的程序员有机会自由地做自己所喜欢之事、为流行的开源应用贡献代码,一定可以创造更多的商业价值。

各位网友,你们是如何看待开源与赚钱的?
原文链接:Antirez weblog
分享到:
评论

相关推荐

    linux与开源软件

    本文将深入探讨Linux与开源软件的核心概念、发展历程、以及它们对现代IT行业的深远影响。 ### 自由软件的起源:Richard M. Stallman与GNU项目 自由软件的兴起,离不开一位关键人物——Richard M. Stallman。作为...

    一个开源的播放器,JAVA写的

    开源意味着该项目的源代码对公众开放,允许开发者查看、学习、修改以及分发代码,这为技术爱好者和专业人士提供了深入理解软件工作原理的机会,同时也鼓励社区协作和创新。 【描述】:“一个JAVA写的开源播放器,...

    开源新闻发布系统

    开源新闻发布系统是一个面向初学者和开发者的项目,它允许用户创建、管理和发布新闻内容。这样的系统通常基于Web,采用开放源代码模式,鼓励社区参与和改进。以下是对这个主题的详细解析: 一、开源概念 开源意味着...

    一个开源的会议管理系统

    对于初学者,通过学习和实践这个开源项目,可以深入理解JavaWeb开发,提高软件工程能力,特别是对MVC模式、数据库操作、Web安全等方面有更深入的认识。而对于企业,选择开源的会议管理系统不仅可以节省开发成本,还...

    C#开源项目汇总

    - **简介**:JBpm移植到.NET平台下的开源工作流软件。 - **特点**: - 容易与.NET应用程序集成。 3. **BpmTool** - **简介**:支持将业务模型转换成软件模型。 - **特点**: - 使用模型驱动的方法来设计、...

    我的一些开源软件 我的一些开源软件我的一些开源软件

    标题中的“我的一些开源软件”表明这是一个包含作者个人贡献或收集的开源软件集合。开源软件是指源代码可以被公众查看、使用、修改和分发的软件。这些软件通常遵循特定的开源许可证,如GPL、MIT或Apache License等,...

    一个网络资源管理器,学习用开源

    综上所述,这款开源的网络资源管理器不仅提供了实用的功能,还为开发者和学习者提供了丰富的学习素材和实践机会,无论是对个人技能提升还是团队协作都大有裨益。通过深入研究其源代码,可以更好地理解和掌握网络资源...

    一款开源的 NVR 集群服务器

    总之,这款开源的NVR集群服务器项目旨在创建一个高效、可靠的监控解决方案,通过结合RTMP、RTSP和vod服务,满足多样化的视频流需求。集群架构则确保了系统的高可用性和可扩展性。期待更多的开发者和行业人士加入,...

    OSTC开源技术大会-陈阳-女性如何参与自由开源软件社区

    申请者参与开源项目时,需要提供一个贡献作为申请的一部分,这有助于确保申请者对开源社区的承诺。社区还应该提供一些资源,如示例电子邮件、社交媒体更新内容和宣传册,方便人们帮助传播信息。在项目进行中,鼓励...

    开源六位半万用表.rar

    综上所述,这个压缩包是一个全面的开源六位半万用表资源集合,涵盖了从理论学习到实际操作的多个层面,对于电子爱好者和专业工程师来说,都是一个极好的学习和开发平台。通过深入研究这些材料,可以增进对数字多用表...

    台湾开源软件刊物资料

    例如,可能会有对台湾特色的开源项目如Gitorious Taiwan(一个开源的代码托管平台)或者Taiwanese Linux User Group (TLUG) 的介绍,这些都是台湾开源运动的重要组成部分。这些组织不仅提供技术交流的平台,还通过...

    崔宝秋:拥抱开源,小米的开源经验分享

    业务需求永远是第一位的,开源工作是第二位。公司要求业务驱动,不凭空提出新功能,而是优先解决业务需要的功能特性和bug修复。公司也鼓励团队学习开源代码,并向社区提交各种patch。 崔宝秋的分享不仅仅为小米的...

    转载一个优秀的开源项目

    本篇文章将详细探讨一个名为"SUSHIDO Project"的开源项目,旨在帮助读者理解其核心功能、设计思想以及可能的应用场景。 【描述】:尽管描述信息为空,但通过提供的博客链接(https://auauau.iteye.com/blog/716596...

    开源时代:杂志(1-5)

    《开源时代》杂志是一本专注于开源技术和文化的出版物,它以深入浅出的方式传播开源理念,探讨开源软件在各个领域的应用,并关注全球开源社区的发展动态。这个压缩包包含该杂志的前五期,分别是2008年9月的创刊号、...

    一种开源业务系统框架winform源码

    【标题】"一种开源业务系统框架winform源码"揭示了这是一个基于Windows Forms(Winform)的开源软件开发框架,专用于构建业务系统。Winform是.NET Framework中的一个UI库,用于创建桌面应用程序,它提供了丰富的用户...

    开源双接受.5.8G图传接收资料开源zip

    这个开源项目的核心理念在于利用两个接收器同时接收5.8GHz频段的信号,并通过特定算法整合这两个信号,以提高接收质量。 标题中的“开源双接受5.8G图传接收资料”意味着该项目不仅提供了硬件设计,还开放了软件源...

    OSTC开源技术大会-李道兵-重整工具箱:从开源软件到开放服务

    李道兵在其演讲《重整工具箱:从开源软件到开放服务》中详细地探讨了软件开源运动的发展及其带来的变革,并对如何适应未来软件服务的趋势提供了深入见解。以下是他演讲中的主要知识点。 首先,李道兵作为Debian...

    开源时代(1-4)开源时代 1-4

    开源时代,一个在信息技术领域备受关注的话题,涵盖了从操作...开源不仅是一个技术现象,更是一种社会和技术结合的创新模式,它正在深刻地改变我们的工作方式和生活方式。理解和掌握开源,对于理解现代IT行业至关重要。

    开源雷达处理代码 开源雷达处理代码 开源雷达处理代码

    开源雷达处理代码是针对雷达信号进行采集、分析和处理的一系列公开源代码,通常由开发者社区维护和更新,旨在提供一个灵活、可扩展的平台,让研究者和工程师能够理解和定制雷达系统的各种功能。这些代码可能包括数据...

Global site tag (gtag.js) - Google Analytics