Why Don't You Contribute to Open Source?

The following text is a partial translation of the original English article, performed by ChatGPT (gpt-3.5-turbo) and this Jekyll plugin:

在我去年的《你值多少钱?》帖子中,我说开源贡献是衡量程序员好坏的一个非常重要因素。我是说如果你不参与开源项目,如果你的 GitHub 个人资料没有充满项目和提交记录,那么作为一个软件开发人员,你的“价值”就很低,因为这种缺乏开源活动告诉所有人,你对软件开发并不“热衷”,而只是为了赚钱而工作。我每周都会收到关于这个问题的愤怒评论。让我在这里回答他们。

所有这些评论的要点是:“我不参与开源,但我仍然对软件开发非常热衷。”然后,评论作者列举了一些原因,解释为什么他们不参与开源:

  • 我已经在办公室很忙了,为什么要我做额外的工作呢?

  • 我薪水高,为什么要免费做任何事情呢?

  • 我的雇主不允许我为开放源代码做贡献。

  • 我的公司不会为我编写开源代码支付报酬。

好的借口,但让我们从不同的角度来看一下。

今天,没有使用开源组件就无法创建软件。我相信没有人会对此有异议。只有非常基础和简单的东西才能在没有代码重用的情况下创建。哎呀,我错了。即使是非常小的软件片段也不能在没有开源的“邻居”情况下创建。至少需要一个操作系统和一个编程语言。在大多数情况下,它们都是开源的(微软是个例外,它必须消亡)。

因此,不管你在创建什么软件,你都是在使用别人为你创建的模块。别人花费了自己的时间来帮助你。

现在,你没有回馈任何东西。我很好奇,为什么会这样?

可能有两个原因。第一个原因是你根本不在乎。他们给了你东西,而你却没有回馈。你只是不想成为这个市场的一员。你使用他们的库,在你的产品中重用它们,拿到工资就回家。你不关心行业会发生什么,不关心那些程序员,不关心你所写的语言,不关心平台等等。你不想改进库,不想创造和分享新的库,不想报告错误和功能请求,也不想向他们发送补丁和拉取请求。

我理解这一点。数百万的程序员都是这样的,你并不孤单。但请不要告诉我你对软件开发充满热情。请承认你并不在意。这毕竟不是犯罪。你并没有偷走任何东西(尽管我认为你实际上是在偷,但那是另外一回事)。

这是你可能不贡献的第一个原因。然而,在大多数情况下,我的对手告诉我,他们确实在意,只是无法做到。有一些障碍,对吧?你的家庭占据了你所有的空闲时间,在办公室里,你根本没有权限从事与业务范围无关的工作。我可以想象,但让我们看看幕后发生了什么。

你告诉我,你的公司不关心软件行业,对吧?他们不允许你向开源社区做出任何贡献。他们希望你使用那些免费的库,但不回馈任何东西。这是他们的公司策略。我对此表示怀疑。你有没有问过你们的首席技术官?

我坚信,在95%的情况下,当你解释说你的软件严重依赖于一些可能需要改进的开源库时,你的老板不会反对你成为一个贡献者。试试看。

有时候,老板说他们不关心任何开源,并希望你专注于你的产品。也许这种情况经常发生,我不知道。

在这种情况下,我的下一个问题是哲学性的。你为这样的人和这样的公司工作。你接受他们的薪水。你不就是这个团队和这种心态的一部分吗?如果你不离开,你就接受了这种态度。你是其中的一部分。正因为你的存在,他们才能不在意。

如果明天他们要求你使用盗版软件,你可能会说你别无选择:“我的老板要求我这样做。我非常关心版权,坚信软件作者应该得到报酬,但我不得不盗版,因为这是我的公司要求我这样做。”这听起来像个好借口吗?

同样的事情也适用于开源。如果你在乎,对软件开发充满热情,你要么积极地进行贡献,要么离开不与不分享你的热情的公司共事。什么,因为某些原因你不能离开?那就别告诉我你对软件开发充满热情。简单地承认你太软弱,无法追随你的热情。

再次强调,这不是犯罪。这只是你的本性。

Translated by ChatGPT gpt-3.5-turbo/42 on 2023-12-17 at 15:50

sixnines availability badge   GitHub stars