请问各位:什么是开源社区?怎么加入开源社区?怎么去做开源?

256 天前
 WindWarrior

起因

  1. 在看各类技术相关的视频的时候,经常提到开源社区,同时使用开源社区的活跃度作为对一些开源技术/中间件的评价,也积极鼓励大家去开源社区提问和交流。

  2. 经常看到在社交媒体活跃的大佬都鼓励去做开源。

  3. 出于个人原因,希望在开源社区学习技术,更希望贡献力量。

问题

针对以上的点,我有很多疑问,希望大佬们帮忙解答

  1. 什么是开源社区,GitHub 算开源社区吗? Discord 、telegram 群算开源社区吗?怎么在开源社区里交流?怎么评判开源社区活跃度?不同的软件的开源社区的形态是不是不一样的?

  2. 怎么学习开源?怎么做贡献?我感到迷茫是因为例如 Kafka 这种开源软件代码非常庞大,无名之辈怎么去学习、去哪里交流、又怎么做贡献?

  3. 网上很多关于学习和贡献开源都说的很笼统,比如去看 pr ,学习规范,然后 fork 提交。但是没有教你怎么去从头开始学习开源,我相信不是每个人把整个大项目源码都看了然后去贡献的。那在这种前提下,我该怎么去做开源?

  4. 如何将开源和自己的学习和职业相结合?

最后

如果我提问有问题,我可以继续补充。希望各位不吝赐教,能回答任意一点都好,也可以畅所欲言。

提前感谢大家的经验。

3264 次点击
所在节点    程序员
33 条回复
opentrade
256 天前
jixiaopeng
256 天前
我刚好有一套 react 完整的开源,包含了 web 、app 、小程序(已经开始),https://github.com/huanghanzhilian/c-shoppinghttps://github.com/huanghanzhilian/c-shopping-rnhttps://github.com/huanghanzhilian/c-shopping-weapp ,我也是刚做,不知道会怎么样,但我感觉,行动起来比不动强点吧!
WindWarrior
255 天前
@Lychee0 感谢哈哈,给了我莫大的鼓励
WindWarrior
255 天前
@SiLenceControL 是通过什么方式联系上仓库的开发者的?
WindWarrior
255 天前
@dayeye2006199 感谢,我后面会去尝试一下
WindWarrior
255 天前
@mcfog 认可你的观点,也接受批评。不过我觉得弄清楚参与开源基本的思路,少走弯路也挺重要的。所以在做这件事之前,先弄清楚疑问,看看大家有没有什么前辈经验可以交流一下的。总之老哥话糙理不糙,爱听。
WindWarrior
255 天前
@mercury233 嗯嗯,是的,心态“端正”也很重要。
WindWarrior
255 天前
@opentrade 在职打工人还能参加开源之夏吗
SiLenceControL
255 天前
@WindWarrior cfd 论坛和 github 上放 issue ,后面认识了就发邮件
WindWarrior
255 天前
@SiLenceControL #29 了解了,十分感谢
waterlaw
255 天前
首先,知名开源项目大多是是有一个公司在主导,他们内部员工是最熟悉相关代码的,我们参与首先要使用该开源项目,clone 代码先看下第一个版本是怎么写的,第一个版本往往比较小且功能完善。
然后看下 git 提交记录看下他们是怎么修复的,可以去 github 看下 issue 看有没有能解决的,一般相对简单的 issue 都被解决了。
我觉得最好的办法其实是加入开源公司或者做开源项目的二次开发,因为这样离开源项目最近,因为这样容易提 pr 和 issue, 对开源也会有更多了解。开源项目一般是庞大的,代码功能多,而我们经常使用的往往是某一部分的功能,盲目阅读庞大的代码对我们精力也很有影响。
当然,有些牛人已经帮我们梳理过开源项目了,比如
黄健宏的《 redis 设计与实现》,可以找找该开源项目的书籍,博客等相关材料,先阅读下,理解项目脉络。方便我们后续进行阅读项目。其他的我就不得而知了。
Johnathan
255 天前
国内那些所谓的培训机构/教学视频的老师,为了给他们的讲义上增加一些内容,都会给初学者建议“参加开源项目”,但事实上以大部分人的实力和能力,根本做不到去长时间持之以恒地维护某一个开源项目,也没有足够的耐心去学习那些没有文档的开源项目,更没有好奇心去查找自己感兴趣的项目。他们不过就是觉得这个词高大上,觉得自己也在推广开源罢了。

我也曾对此表达过疑惑,看我之前的帖子。https://v2ex.com/t/882818 现在我没有什么疑惑了,开源不过就是工具之一,就像一个论坛,有兴趣发帖子就发,有兴趣聊天就聊,有兴趣提交代码就提交。带上太多功利的想法,反而容易陷入内耗之中。当你想学什么新技术,对某个公司、项目感兴趣的时候,开源项目就是一扇窗,看看别人怎么写代码的。这就是意义所在。
WindWarrior
251 天前
@Johnathan 感谢,不过我不是因为机构的老师有开源的想法。大部分的原因是在推特上面关注了一些开发者,让我觉得一起去维护开源软件、各自贡献自己的力量,逃避公司的屎山业务代码转而去写一些真正有意义的代码等这些都很有意思。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/1030415

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX