你没法想象开源项目离你有多近。它早已融入你生活的方方面面,从办公室到家里,从健身房到餐厅等等。git
俗话说:“开源项目属于咱们,而不是我”,这就解释了为何这些项目很受欢迎,以致于连知名的商业巨头都将开源计划归入他们的商业计划中。可是对于普通人来讲,究竟是否有必要又是否有可能加入开源社区呢?它的魅力何在?程序员
在这篇文章中,我将经过介绍优势和缺点来回答这些问题。咱们都知道,奖励比惩罚更好,那咱们就先从奖励开始提及。github
01 掌握一项新技能
你是否厌倦了天天疏远和重复的工做?你是否想学习新的、使人兴奋的、有价值的技能?面试
在线课程(MOOCs)或书籍绝对是提升你的技能和扩展你的知识的好方法。然而,我想推荐另外一种高效,有趣的方法,那就是加入相关的开源社区,在生产环境中解决实际问题的同时学习新技能。这些活跃的开源项目之因此如此受欢迎,是由于它们帮助用户解决实际问题并知足他们的需求。经过参与开源社区,你学习到的是真正能解决现实生产上的实战知识,而不是书本上的条条框框与课本理论。数据库
让咱们以 Apache ShardingSphere 为例。Apache ShardingSphere 受到了全世界程序员和学生的赞扬。以现有的社区数据为参考,ShardingSphere 拥有 14K+ 的 GitStars ,近 5K 的 fork,GitHub 上近 250 个贡献者,以及 160+ 的真实用例场景,基于这些数据,任何人都会得出这个结论。更重要的是,它也是 Google Summer of Code 202一、Summer 2021 和 Open source Day 2021 的合做项目。apache
它的功能,如数据分片、数据加密、数据扩展、分布式加载测试的影子数据库等,都是出于解决大数据数据场景、分布式数据库和高并发性的真实行业需求而产生的。换句话说,人们选择它是为了解决他们的生产问题,并有机会将意见和优化再回馈到社区。这种先后呼应的模式使得这个社区变得活跃、多样化而且能够蓬勃发展。并发
02 就业机会
现在,人力资源部门和招聘经理常常对候选人的资料和我的或职业发展项目进行筛选,由于他们认为这是一种实用和有效的方法,能够挑选出最佳候选人。从雇主的角度来看,这些作法是合理的。若是与传统的纸质简历相比,GitHub 能够更详尽地介绍你的资历、经验、技能,甚至个性。若是你参与的开源项目,在生产环境中被普遍使用,或者有同行业开发的解决方案,那么你在就业市场上就会很是具备吸引力,得到更好的机会。分布式
若是你时常由于内卷或 30 岁求职而焦虑,那如今你将有新的应对之策。因而,当你得到了新发现的市场对你的技能和专业形象的赞扬的时候,你的自信心就会瞬间被提高了。高并发
我听过不少这样的故事,Apache ShardingSphere 的 contributors 和 committers 收到了 HR 的面试电话,由于考虑到他们在开源社区的持续贡献和互动。此外,SphereEx 正在积极招募对分布式数据库中间件垂直领域的全职开源事业感兴趣的人才,以及 Java 开发人员,请点击这里查看适合你的机会。学习
03 兴趣
“Yep, I did it just for fun”,这是我从咱们的 contributors 和 committers 那里听到的另外一个缘由。我在开源社区所作的事情与个人工做无关,但这是个人爱好,我想参与到社区中去,与他人交流思想,这就是我在这里的缘由,就是这样一个简单而又有说服力的答案。一个简单的事实是,尽管咱们是以利益驱动的心态来处理咱们职业生活中的大部分问题,但咱们可能会发现,在作这些事情时并无把咱们的“真心和灵魂”放在里面。找到属于你的激情或者副业可让你从新发现本身,而且把这种积极的能量能带到你喜欢的事情上,这也会为你带来巨大的知足感,从而造成一个自我实现的循环。
坦白来讲,这一直以来都是个人主要驱动力之一。每一个人都在与不一样的生活、工做或家庭问题做斗争,但目标、但愿和来自社区的支持使咱们不断努力,跌跌撞撞地向前走毫不放弃。
04 社交
一个开源社区是由多种元素组成的,其中最重要的是代码和人。打个比方,咱们能够把代码看做是建筑材料,建造完成一个城堡须要许多种材料。而且不管位置、设计或材料有多好,若是没有人们的参与和承诺,一座城堡永远不会竣工,甚至随时均可能会倒塌。Apache foundation 的成功很好地证实了“社区大于代码”这一口号的重要性。创造、发展和滋养一个社区的重要因素在于参与者自己,而不是其余东西。
反之,参与者经过社交交流想法和意见,找到志同道合的人,在共同目标的驱动下,从社区中受益,而这最终会有助于社区的改善。
你的朋友不只包括直接在你身边的人,还包括分布在世界各地的人。这听起来是是否是很棒?我说它彻底是这样,至少对我来讲是这样。在咱们的社区里,咱们互相成长,有时咱们也会约在一块儿见面。咱们的一些员工来自 Apache ShardingSphere 社区,从早期开始,咱们就经过社区认识对方。吴晟(Apache Skywalking 的 VP),姜宁(华为开源部的技术专家),Ted Liu(开源社的联合创始人兼董事长),Jerry Tan(Apache brpc 的 VP),温铭(API7 的 CEO),黄向东(Apache IoTDB 的 VP),郭炜,代立冬,李岗(Apache DolphinScheduler 的 PMC),这些只是我遇到的部分开源社区的合做伙伴。
05 商业
这部分要留到最后说,由于它既是一个挑战也是一个优点。一些但不是全部的开源社区项目维护者,都有机会经过利用他们在开源社区所作的、所学到的东西来建立成功的商业企业。
现在,在技术自己、风险资本、社会和不一样行业需求的推进下,开源业务正在蓬勃发展。这积极地鼓励了旨在商业化的开源项目,以提供愈来愈专业的产品。然而,发展一个繁荣的开源社区并寻求将其商业化,须要一个漫长而艰巨的旅程,这并不适合胆小的人。做为目前正在走这条路的人,个人建议是,在进行这段旅程以前,至少要深入考虑你的承诺。固然,最终的奖赏是有吸引力的,但这将意味着你必须在你的生活中作出无数的牺牲。我不想让我听起来很讨嫌,不管如何,若是你想试一试,那就放手一搏,祝你好运!
若是你正在寻找一个活跃的开源社区,Apache ShardingSphere 绝对是你应该考虑的一个好选择。另外,SphereEx 目前提供了许多工做机会,可让你成为全职的开源开发者或社区经理。
感谢你阅读本篇文章,下一篇文章将会是“如何加入开源社区”。欢迎持续关注咱们,谢谢!
做者
潘娟 | Trista
SphereEx 联合创始人,Apache 成员,Apache ShardingSphere PMC,Apache brpc(孵化中)导师
Twitter: https://twitter.com/trista86934690
Github: https://github.com/tristaZero
ShardingSphere GitHub:https://github.com/apache/shardingsphere