Coder Social home page Coder Social logo

linuxsuren / open-source-best-practice Goto Github PK

View Code? Open in Web Editor NEW
366.0 12.0 31.0 1.83 MB

This is an open-source best practice for those who want to participate in open-source projects 参与开源过程中的一些最佳实践

Home Page: https://linuxsuren.github.io/open-source-best-practice/

License: MIT License

Makefile 4.78% Smarty 95.22%
open-source best-practice

open-source-best-practice's Introduction

本文潜在的目标人群:

正在(或希望)从事以下工作的人:技术岗(研发、测试、运维)、运营、市场,其他对开源开放性协作感兴趣的人。

欢迎添加我的微信(同 GitHub ID)入群交流!

LinuxSuRen/open-source-best-practice

为什么?

为什么要编写这一份《开源最佳实践》呢?

对于初次尝试参与开源的人,在面对完善、成熟、大型的开源项目时,往往会有无从下手的感觉。《开源最佳实践》将从如何选择合适的项目、如何参与贡献等多个角度引导读者。

国内(**)已经有 Gitee 发起并由众多开源爱好者共同编撰的《开源指北》,还有 GitHub 官方提供的《开源软件指南》,那这一份最佳实践和这些有什么区别吗?开源不仅仅是把代码开放出来就好了,更加重要的是一种协作精神的体验,以及具体落地操作。所以《开源最佳实践》更多会从落地实践的角度来讲述。

不管你是一名普通的研发,还是一名非技术人员,参与开源必将使你受益匪浅。万事开头难,希望这一份最佳实践可以帮助到更多有意参与开源的人们。

寻找起点

参与开源有很多的形式和途径,对于刚开始接触开源的人而言,非常重要的一点就是——基于已有的经验、技能选择适合的开源社区,并且坚持较长的一段时间

开源社区通常会在一些平台托管代码、发布文章或音视频资料,大家可以在这些常见的平台中寻找适合自己的社区。

对于一个开源社区来说,通常可能会有多个开源项目。社区的自我发展,也要求不同技能、不同背景的人加入,而为了保证社区以公开、透明、平等的方式得以适当的治理,也会出现多种不同类型的项目。例如:存放社区治理规则的 community 项目,存放与图片设计、logo 相关的 artwork 项目,存放社区文档、网站的 website 项目等等。甚至,在发展过程中还可能会出现“子社区”。

和传统的、自上而下的团队管理不同,在开源社区里,虽然存在着不同的角色、分工,但这些角色既不是任命也不是申请来的。角色或影响力,都只能通过贡献(contribution)获得,任何人没有所谓的特权。如果你已经习惯了按部就班地完成分配好的任务,在开源社区里可能会有无所事事的感觉,进而找不到自己的“位置”。而对于愿意自发地做事情、喜欢拥抱变化、追求变得更好的人而言,则会在开源社区中找到“如鱼得水”的感觉。排除涉及到权限的事情,大部分情况下都是不需要“等拿到授权后”再行动。例如:代码(或其他类型的 Pull Request)的 review 并不是 maintainer 独有的权力,每个走过路过的人都是可以针对自己熟悉的领域给出观点、评价。

接下来,会从不同的角色、角度来阐述如何更好地参与到开源社区中。

贡献者

对于贡献者(contributor)来说,熟悉通用的贡献指南可以在参与贡献的过程中少走弯路、获得更多帮助。

维护者

项目的维护者(maintainer),通常指的是有合并(Pull Request)权限的贡献者。在不同的社区中可能会有不同的叫法,例如:committer、PMC(Project Management Committee)、owner 等等。维护者更多的会考虑如何促进项目、社区的健康发展,以及 review 相关仓库的 PR。

关注贡献者

项目维护者,一般情况下是愿意花更多精力、时间到某个项目上的人。如果是纯个人项目,或者并没有期望有很多贡献者协同参与的话,并不需要特意关注贡献者,只做自己喜欢做的事情即可。反之,维护者更多应该做的事情是去关注贡献者,帮助愿意参与项目的人贡献他们的聪明才智,也就是所谓的发挥“杠杆作用”。换个角度考虑,对于“能力很强”但对上述事情没有兴趣的话,其实是没有必要赋予“维护者”的权限。

那么,对贡献者的关注包含哪些方面呢?

  • 定期查看新提交的 issue、PR,通过打标签(label)等方式进行分类,根据情况 ping 相应的团队(或者贡献者);
  • 时间允许的情况下,选择自己熟悉领域的 issue、PR 做尽可能详尽的回复。切忌随意回复,随意对自己和其他贡献者都是不负责的一种行为,同时也是对时间的浪费;
  • 邀请贡献者参加社区的各类活动,例如:社区例会、Meetup 等。鼓励贡献者深度参与社区;
  • 熟知成员的贡献,在相应的社区角色、奖励(ambassador、top contributor 等)给与提名;
  • 发现、挖掘潜在的项目维护者。

Review

在 PR 的 review 过程中,通常会涉及到三个角色的人:作者、维护者、其他。

首先,我们要想明白一个问题——为什么要进行 review ?不管 PR 中提交的是代码、文档还是其他类型的文件,进行 review 的都有着非常重要的意义。

而不管是对项目维护者,还是贡献者而言,了解如何 review 以及在 review 过程中有哪些需要注意的地方,都是很重要的一件事情。

社区治理

随着社区规模的变大,社区治理的重要性会日益凸显,可能遇到的以下问题:

  • 如何帮助新人快速地熟悉、适应社区的氛围、玩法;
  • 如何利用适当的社媒、多媒体平台宣传社区理念、技术,吸引有相似兴趣的人加入;
  • 如何结合社区成员自身的特点、发展诉求,通过复盘、再组织等方法,适时地调整社区结构;
  • 如何从合规(许可证选用、商标、专利等)层面确保社区的利益;
  • 如何维护社区基础设施;
  • 如何设置沟通、交流底线(或规则,code-of-conduct),避免不好的行为、言论。

对于社区(Community)这个词,不同的人有着不同的理解。本文的社区专指:开源社区(Open Source Community)。

在社区运营过程中,有很多好的实践和方法,例如:Technical Oversight Committee (TOC)、SIG、Meetup、Workshop(工作坊)、社交媒体推广等。下面,给出部分组织形式的最佳实践指导。

TOC

TODO

SIG

Special Interest Group,特别兴趣小组,简称 SIG。在大中型开源社区中,这是一种便于社区成员在特定领域交流、讨论,更加聚焦地解决相关问题的组织形式。

开源社区中,可以根据不同的领域设立相应的 SIG。每个 SIG 往往会有一名或多名 lead(领队),以及多名活跃的社区成员作为 SIG 的成员(member)。在不同的社区中,领队可能会有不同的叫法,例如:co-chair、co-lead 等。值得注意的是,这里所使用的表述是——“领队”,而不是领导、经理(manager)、管理员(admin)、负责人;领队的重要意义在于维护 SIG 的积极、活跃,而不是特权。

Work Group

TODO

活动

不管作为开源活动的组织者还是参与者,相信这份开源活动指南可以给你提供一些帮助。

参考

采用该实践的项目

如果你比较认同这一份最佳实践,欢迎把下面的 badge 添加到你的项目中:

[![LinuxSuRen/open-source-best-practice](https://img.shields.io/static/v1?label=OSBP&message=%E5%BC%80%E6%BA%90%E6%9C%80%E4%BD%B3%E5%AE%9E%E8%B7%B5&color=blue)](https://github.com/LinuxSuRen/open-source-best-practice)

open-source-best-practice's People

Contributors

dependabot[bot] avatar donhui avatar kang8 avatar kayw-geek avatar leonharetd avatar li-clement avatar linuxsuren avatar mangogoforward avatar stevending1st avatar wey-gu avatar wjsvec avatar yuluo-yx avatar yuzp1996 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

open-source-best-practice's Issues

微信群 vs GitHub issues

微信群、GitHub Issues、Slack 都是比较流行的沟通工具(平台),但在开源社区(项目)中,什么场景中使用何种工具比较合适呢?

开源之夏 2022 非正式对话(北京站)

背景

Hackathon 可能是每一位程序员都喜欢的编程活动,而 Rick 作为体验过多次 Google Summer of Code 这种全球性开源编程活动的开源爱好者,深切地感受到了这种活动的巨大魅力。因此,当看到国内也能有中立性的大型开源编程活动时,倍感兴奋,这简直就是开源爱好者(尤其对于开源参与经验不多的朋友们)与开源社区之间的盛筵。开源之夏进入第三年,每一年都迈出了不大但坚实的前进脚步,在不断的积累中,开源之夏将越来越多的高校学生和开源社区联结起来,也帮助高校学生逐渐成长为开源世界的星星之火。

开源之夏同样也希望通过不同的方式展现学生参与活动过程中及结项后的成果价值,在《开源之夏专访》这个栏目中,已经有 30 多位优秀的 contributor 以公开的形式分享他们的参与经验和成果。他们分布在不同的城市,甚至有些同学在海外求学,将这种差异不吝啬地聚集和展现出来,也正是开源的魅力吧!不过,文字分享之外,还有更多精彩。只不过也许是没有意识到除了代码以外,开源还有更多有趣的地方;也许是觉得自己成长不显著,不好意思拿出来说;也许觉得发不发这类文章也无关紧要。

但是,Community Over Code!人与人之间通过交流、互动,从而实现互帮互助、共同成长,才是我们更希望在开源社区中看到的。线下面对面的交流,更是有助于大家增强对开源的认识、理解,每一位关注开源之夏的开源爱好者也可以互通有无。在此,Rick 以个人的身份来获得了开源之夏官方对活动的认可,以召集参与开源之夏活动的同学们、社区 mentor、开源爱好者,一起聊开源。

活动日程

  • 自我介绍环节
    • 参与者自我介绍,限时 2 分钟
  • 休息 5 分钟,进入正式环节
  • 对话环节
  • 自由发言:开源之夏中遇到的高光时刻及开源吐槽
  • 展望期待:开源之夏能为参与者带来什么
  • 建言献策:对开源之夏的建议
  • 开放型问题:
    • 考虑成立开源之夏城市站的可行性

参与指南

本次活动旨在发挥桥梁的作用,了解到身在最一线的社区 mentor、学生等的真实体验、反馈,帮助开源之夏变得越来越好。我们非常期待每一位参与过、想要参与到开源之夏的社区 mentor、学生来参加我们的活动。

  • 地点:北京海淀区中关村微软大厦 1 号楼,***会议室
  • 时间:11 月 19 号(周六),下午 2 ~ 6 点

点击此处报名

FAQ

  • Q:我没参与过开源之夏,可以参与到本次活动吗?
  • A:非常欢迎,这将会一次极好的深入了解开源之夏的机会。
  • Q:一个开源社区,可以来多少人?
  • A:考虑到疫情、场地限制,每个社区有 1~2 个参与名额。
  • Q:是否考虑社区、企业合作?
  • A:这是一次个人发起的活动,没有社区、企业的合作环节,但欢迎给本次活动提供各种形式的支持,包括:活动转发、物品等;但是,不会有传统活动的 Logo 展示。

鸣谢

  • 微软的场地赞助(陈阳、周鹏飞的场地协助)
  • 开源之夏的周边赞助(书包、T恤)
  • Miya 赞助三本《拥抱开源》
  • 古思为赞助三本《开源之迷》
  • Rick 赞助零度可乐一提
  • 李梦赞助零食包一份
  • ALC Beijing 周边纪念币、T恤

思考:开源运营中的 over marketing 行为

开源与传统的商业行为不同,并不是可以通过造势、华丽的外表、大量资本注入就可以做好的。开源的大部分行为都会被永久留存,那么,在开源运营过程中有哪些可能会是:过度的市场行为(over marketing)、过度的修饰,而这些行为又会给开源社区(项目)本身带来什么影响呢?

案例1

项目 A,在正式版本 v4.0.0 发布前,运营人员希望在项目的 alpha 阶段,通过发布一个功能新特性的预告,让社区成员得以提前体验并反馈。在博客的文章中,有类似如下的一段表述:

除上述功能外,有更多重量级功能会在正式版本发布后在 Release Notes 中详述

首先,我想补充一个软件迭代以及版本的背景知识。一个软件项目,大致的迭代过程可以是:alpha、beta、rc,等功能稳定后发布 GA 版本。但是,通常会在 feature 开发完成后,才会进入到 alpha;此时,表明了功能基本完成,主要流程可以走通,但不够稳定、可能会有 bug 出现。因此,大概率不太会出现 alpha 版本之后还会有更多重量级功能进入到正式版本中。

其次,即使是想要给读者留下悬念,以吸引大家的注意力,但也应该能够自圆其说、确保语言表述不是错误的。

细心的开源参与者,是希望参与到严谨的开源社区(项目)中来。而对于开源项目的用户,也不要“轻易”相信“鼓吹”式宣传文案。

在这个案例中,我呼吁开源运营人员尽量在了解软件发布基本常识,并尊重事实的前提下,再发挥文字的“修饰”效果。宣传文案虽然不需要像源代码那么严谨,但至少要确保实事求是,不打插边球。

思考:开源世界里的心里健康问题

鉴于开源的一些特点,例如:代码、制品可以免费拿到,在没有适合的商业模式下,开源项目的维护者往往难以得到响应、甚至基本的经济报酬。当一些开源项目维护者遇到经济上,或者生活上的重大困难时,难免会由于投入和他的预期汇报不对等而导致负面情绪,

如果想要更好地参与开源,而减少消极、负面的情绪,我们该怎么办呢?

参考

检查:在README和SIG章节有一些表述的问题

我在阅读的过程中,遇到了以下问题,希望大家能指正。

  • README
    • 为什么?
      1. “首先”。有了首先,却没有然后。
      2. “对于首次准备尝试参与开源的人来说”。可以去掉准备或者尝试。
      3. “很容易有无从着手的感觉”。缺少对做什么事有无从着手的感觉。
      4. “万事开头难,希望这一份最佳实践可以帮助更多有意参与开源的人们。不管你是一名普通的研发、还是一名非技术人员,参与开源必将使得你受益匪浅”。建议调整一下语序,“不管你是一名普通的研发、还是一名非技术人员,参与开源必将使得你受益匪浅。万事开头难,希望这一份最佳实践可以帮助更多有意参与开源的人们”。这一句可以放在“为什么”这一节的最后。
      5. “那这一份最佳实践和之有什么区别吗?”陈述的区别不明显。
      6. “例如:存放社区治理规则的 community 仓库,存放与图片设计、logo 相关的 artwork 仓库,存放社区文档、网站的 website 仓库等等”。前面陈述为项目,这里是仓库。
    • 社区治理
      1. “随着社区规模的变大,社区治理的重要性会日益凸显。可能遇到的问题包括如下:”。这里的“。”可以换成“,”;“可能遇到以下问题”。
      2. 后面的几条也应该是以“如何”开头。
  • SIG
    • 会议
      1. “可以在线参加例会的成员数,毕竟是有限的,”。“参加在线例会的成员”;“有限的,”后面应该是“。”
    • 退休
      1. “因此,如果社区的 lead 如果希望能有源源不断的新成员加入的话, 就不能任由 SIG 的“堕落””。有两个“如果”。

直播邀请:我们为什么需要 DevRel

备选议题:

  • DevRel 普及介绍
  • DevRel 在国内外的发展概况
  • DevRel 和开源的关系
  • 什么样的公司(团队)需要全职 DevRel
  • DevRel 和市场、运营、产品、研发、销售之间的关系、互动

平台:视频号
时间:TBD(某个晚上)

2021年底开源爱好者聚会(AA 自助餐)

正如我在《开源面对面》中所推崇的,“人人都可以参与开源”。借 2021 年底之际,我特此以个人身份发起开源爱好者聚会。

Why

  • 边吃边聊是一个氛围相对轻松环境
  • 自助餐可以尽可能照顾到更多人的口味
  • 年底是一个比较好的自我总结、交流的时机

How

任何人都可以参与这个活动,不管是是否在参与开源、参与了多久、甚至是对开源不理解的人都是非常欢迎的。

参与者可以提前思考自己参与开源过程中的困境、心得体会。

特点

  • 没有主题分享,但你可以准备好耳朵和自己的个人观点
  • 以开源为主题
  • 消费 AA 制

时间地点(待定)

  • 北京某自助(人均消费少于100
    • 欢迎推荐地点
    • 五道口购物中心5层501室10号(地铁十三号线五道口站B西南口)
  • 1月8日,周六,下午六点

注意事项

  • 期待高质量主题分享的同学,慎入

更多详细内容,尽情期待。有意参与者请添加发起人微信(备注缘由):linuxsuren

思考:开源社区(项目)中,到底怎么才能算是“共建”

以下是部分人多国内一些所谓“共建”行为的评价

  • 很多人在谈“共建者”,但实际却看不到是怎么“共建”的
  • 某些人理解的共建就是来给我免费打工
  • 反正我只提供平台,你们赶紧来共建
  • 在他们的认知里 contributor 都是天神下凡,自己就能解决一切问题

参考链接

思考:参与开源贡献过程中,有哪些礼仪规则我们需要遵守?

参与开源,在某种程度上可以认为是在参与某种社交活动。而在涉及到人与人之间的互动,“礼仪”就会成为避不开的话题。

以 GitHub 平台为例,很多情况下,我们是通过 issue 或者 PR 来和开源项目的维护者、用户进行交流、互动。邮件,是异步沟通的一个重要工具,贡献者可以通过多种方式(包括:watch 一个开源项目、订阅 issue、订阅 PR 等)关注到某个项目。如果说,贡献者在 issue 或者 PR 时,对自己的评论内容不加思索就发出的话,可能为导致很多其他贡献者收到大量没有必要的邮件通知。

PR 是一个非常容易遗忘的地方。作为开发者,尽量避免在代码自测通过之前提交 PR,大量缺乏实际意义的提交记录会让项目维护者感觉到很疲惫。

代码强制推送带来的问题?

持续更新中。。。

收集:开源项目中经常使用的英文缩写词

对英文不是很熟悉或初次接触开源贡献的人来说,可能会对一些英文缩写词不是很了解具体的含义,下面是部分缩写词以及解释(欢迎补充):

  • BTW - by the way
  • cc
  • LGTM - look good to me
  • BDFL - 终身仁慈**者( Benevolent Dictator For Life)
  • TSC - Technical Steering Committee

开源故事推荐:欢迎大家帮忙推荐你喜欢的开源人的故事(文字版本)

探索:开源项目之沉浸式工作坊

草稿:
这是一个“不同寻常”的workshop,预选准备good-first-issue若干,开场介绍下这次issue的大致解决思路,期间涉及到少量的技术分享。之后,大家自行挑选issue来做,。。。。。。。大家基本完成后,来针对大家提的PR做分析、讨论、总结
为啥要这么做呢,首先,这样可以很好地让大家了解到为什么、怎么样参与开源社区,参与过程中的good case、bad case是什么样的。对开源或者技术感兴趣的人应该能有不小的收获。当然,对社区来说,也收获了贡献者

GitLink 编程夏令营

官网:https://www.gitlink.org.cn/glcc

GitLink编程夏令营(GLCC),是在CCF**计算机学会指导下,由CCF开源发展委员会(CCF ODC)举办的面向全国高校学生的暑期编程活动。活动将覆盖近千所高校,并联合各大开源基金会、开源企业、开源社区、开源专家,旨在鼓励青年学生通过参加真实的开源软件开发,提升自身技术能力,为开源社区输送优秀人才。为青年学生提供开放友好的交流平台,希望进一步推动国内开源社区的繁荣发展。

思考:如何避免让好的 issues 石沉大海?

当社区用户提了一些 issues 后,可能长时间都没有人来响应,但有一些可能还是比较有价值的。

对 issues 响应慢,甚至石沉大海的坏处可能有:

  • 可能会打击贡献者的积极性
  • 社区也有可能会失去某些很有价值的 issues

这些issue如果有人互动起来的话,有可能让更多的贡献者参与进来。然而对于这类issue,社区贡献者可能会感觉到很无奈,找不到很好的办法。

思考:开源协作中需要注意的一些表达方式

好的语言表达方式,会起到比较好的效果,大家在阅读的时候感到舒适。但,一不小心的“表达方式”、“语言句式”可能会让其他人感觉到不舒服:

推荐的

  • Investigating it, sorry for inconvenience

避免的

  • 麻烦添加一个 xxx 功能、修复一个 issue

  • 所以,请认真看一下文档

    • 听起来可能有“责备嫌疑”
  • 我们很需要 xxx,这个对我们很重要,可以 xxx 吗

    • 伸手党来要东西,拿来主义
  • I want something

  • Please fix xxx

    • [Suggestion] I'm wondering if you could see why xx is wrong
  • Why don't do something like xxx

    • [Suggestion] I'm thinking if we can try another solution xx

欢迎补充“好的”、“坏的”案例

北京线下小聚会~商业与开源软件都是怎么销售出去的

写了很多年代码,却一直也不了解软件后续是怎么销售出去的,期待从事过产品、销售等工作的朋友来聊,我也可以从开源的角度分享下不同的视角。

感兴趣的朋友们,留言报名。5人+ 即可启动。最后是商业、开源领域的朋友们都有,也方便互通有无。

场地:TBD(某个交通方便的地方)
时间:TBD(某个周末)

思考:该如何运营你的开源用户(contributors)“群”

建立“群”、channel 等是一个相对普遍的开源社区(项目)运营手段,所谓“群”的数量甚至会被当做数字化运营的指标之一,在这样的价值导向前提下,运营人员会可能会夸大“群”的价值,以至于滥用“群”。

而在国内,2022 年前后可见的时间范围内,微信几乎是逃不开的一个“私有”渠道。

写给社区运营人员——随着大家接触开源的时间越来越久,可能会加了非常多的微信群,以至于他们无法关注到大部分的群。而微信提供了一个“很有趣”的功能——群折叠,也许你在运营的群多半是“被折叠”了。

Bad case

有一些运营人员,为了能够“最大化”地广播某个活动、事件,会同时向很多群进行无差别地推送消息。下面给出一些体验很差的案例:

  • 某 user 或 contributor 发了一个比较重要的信息,结果很快地被无差别运营消息刷屏
    • 例如:机械地通知社区例会、直播之类信息

Good case

为了避免信息爆炸,一些社区会选择分门别类地创建不同的群,并约束大家只在对应的渠道聊相应的话题。一些常见的分类有:

  • end-user、contributor
  • 按照不同的 SIG 来划分
  • 按照活动来划分的临时群,结束后会解散

北京线下小聚会~开源人才招聘主题

本次线下聚会由 @LinuxSuRen 发起。

大家可以参考下面的话题来交流:

  • 开源商业化公司的开源人才招聘
    • 招聘渠道
    • 人才考核标准
  • 任何开源相关
    • 吐槽
    • 有趣的经历
    • 个人体验
    • 困惑
  • 其他

时间:周末,待定
地址:北京朝阳广顺南大街16号嘉美中心写字楼30层
形式:待定

报名方法:

  • 在帖子后面留言(表示要报名即可)
  • @LinuxSuRen 微信,进微信群

鸣谢

  • 感谢声网为本次活动提供场地及点心赞助

注意事项:

  • 这次活动没有人数预期,没有预期达成任何目标
  • 活动费用以 AA 制为主,如有赞助的话,费用会平均减少
  • 活动没有演讲要求,但也欢迎有兴趣的同学来个快闪分享、交流
  • 以圆桌交流为主(可能是大圆桌或小圆桌,根据具体场地以及大家意愿等情况来定)

如果您有合适的(距离适中、免费、可以容纳 10 人左右、夏季有空调),欢迎联系 @LinuxSuRen ,或者直接在下面添加回复。
上次活动 opensource-f2f/episode#145@LinuxSuRen 上次发起的 AA 制聚会活动。

收集:有哪些社区(以 GitHub org 为载体)会建立名为 community 的仓库

思考:PR 的 review 过程中,如何证明自己的观点?

  • 很明显的、约定的观点,需要证明吗?
    • 这里,关键在于“很明显”、“约定的”这样的结论是谁下的。某个人觉得是“约定的”,不代表其他人也这么认为。那么,总是有一些公开的、公认的资料可以查询,例如:维基百科
  • 我“感觉”某个地方不对、不合适,该怎么提 PR 或者 comment?
    • “感性”的回答,可能很难得出一致的讨论结果。我们需要尽可能给出“理性”的证据来证明自己的观点。
  • 如何防止 review 过程中有无限的 comment 持续发生的
    • 热烈讨论,不代表应该无限去讨论。因此,讨论的技巧、取舍、妥协都是需要的。

思考:参与开源与经济基础的关系

参与开源的好处几乎无需多言,是显而易见的。但在很长时间内,活跃份子似乎总是那几个熟悉的面孔,这是否同样能验证了一句名言:经济基础决定上层建筑。

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.