前言
近几年国内外开源软件的成倍增长,以及开源软件在互联网领域的比重越来越高,开源软件扮演者越来越重要的角色,所以开源软件不仅推动了技术领域的不断创新和发展,也给个人开发者们提供了越来越多的合作机会和获利的机会。同时,开源软件已成为许多互联网厂商选择的商业模式,全球顶尖的软件商业公司如阿里云、谷歌、亚马逊、华为云等都建立了属于自己的开源产业生态,而且专门围绕开源软件创业的公司如红帽、Elastic、PingCAP也取得了不同程度上的商业成功。但是除了这些从开源中获利的商业公司以外,开源社区中还有着大量的个人开发者,他们是否能靠开源获利呢?那么本文就来分享讨论一下个人开发者是否能借助开源获利这个问题,以及如何实现从开源中获利的方式。
参加开源社区的主要目的
以我个人的经历来讲,我参加开源社区的主要目的就是为了提高自己的技术能力,以及在参与开源项目的时候贡献自己的一份力量。个人觉得参与开源社区的建设,是提高自己能力的最好方式之一,不仅是技术能力,还有协调、合作能力,以及个人的影响力。尤其是刚参加开发工作不久的开发者,参加开源社区及具体的开源项目,对自己的开发之路有着非常大的帮助,能够让自己的专业技术能力在短时间内有质的提升。我觉得开源社区是一个共享合作的平台,个人开发者通过参与社区建设等活动获得更多的机会和资源,助力个人成长。
开源社区/开源项目中的贡献
我参与开源项目已经2年左右的时间,首先来了解一下这个项目的背景介绍:
规则/流程擎想必大家并不陌生,耳熟能详的就有Drools,Esper,Activiti,Flowable等,很多大厂也热衷于研究自己的规则引擎,都是用于解决灵活场景下的复杂规则与流程问题,想要做到改改配置就可以生成/生效新的规则,脱腐硬编码的苦海。毕竟改改配置和在已有基础上编排规则/流程,比硬编码的成本低很多,但是使用市面上现有的规则引擎来编排,一来接入成本和学习成本都不低,二来随着时间的推移,规则变的越发庞大以及一些场景的不适用,更加让人叫苦不选。
再来看看项目简介:
Java规则引擎-ice(用全新的思想编排规则) 针对复杂/灵活变动业务,提供一个新的抽象编排解决方案,轻量级,高性能并提供可视化操作页面。
这个项目是一个非常不错的项目,分为JAVA和HTML两部,我是参与前端部分,我个人觉得通过和其他社区的小伙伴进行协作,让这个开源项目不断地完善,是一个非常cool的过程,不仅提高了自己的业务能力,也提高了自己的团队协作、产品思维能力,受益匪浅。这里打个广告,我们的项目链接,感兴趣的开发者可以进入了解:
- github: https://github.com/zjn-zjn/ice
- gitee: https://gitee.com/waitmoon/ice
- doc: http://waitmoon.com/docs/#/
个人开发者从开源中获利的点
个人觉得开源市场是一个非常庞大的市场,尤其是对于个人开发者来说是一个非常不错的投入领域,因为开源领域是一个非常有前途的领域,缺少很大一部分各种技术领域的贡献者。个人开发者可以通过开源领域的需求来寻找自己感兴趣的工作,而且开源领域的工作岗位待遇都非常不错,还可以远程办公。随着开源领域规模不断扩大,越来越多的开源软件横空出世,开源领域的开发者需求依然呈上升趋势,但是需要看个人开发者的技术能力来选择对应的岗位。另外,个人开发者可以通过参与一些商业的开源项目来获利,商业的开源项目一般预算都很客观,分配到个人开发者手中也是非常不错的部分。还有一种情况是创业,个人开发者通过自己开发一款商业类型的开源项目来获利,这是更大的获利机会,只是需要更多的精力和人力来构建项目。最后一种,是个人开发者通过自身的开发经验,以及参与开源的经历,来为有需要的人提供定制化解决方案,或者推出付费咨询,但是这需要个人开发者有着丰富的开发经验积累和开源经验做支撑。
最后
通过本文的介绍,开源社区不仅为商业公司提供了商机,也为个人开发者提供了丰富的获利机会。个人觉得开源软件为个人开发者提供了丰富的商机和合作机会,个人开发者可以通过参与开源社区、贡献代码和开源项目,以及利用开源软件进行商业化策略等方式从开源中获利。但是,在借助开源获利的过程中,个人开发者也需要保持对开源社区的贡献和回报,以维护共享合作的精神,遵守开源协议和法律道德规范。也希望越来越多的个人开发者参与到开源中,在开源世界中贡献自己的一份力量。