“放弃 GitHub ,时机已到”,软件自由保护协会怒批!
诞生 14 年来,凭借完整协议支持、Git格式的版本库托管等优势,GitHub成为了最受开发者欢迎的代码托管平台。
不过,近几年来, 随着GitHub的一些转变,引发了行业内一些组织的不满。6月30日,软件自由保护协会(以下简称SFC)在官网发表了一篇题为《放弃 GitHub,时机已到》的长文,怒称:由于GitHub的不当行为,SFC将结束自己对GitHub的所有使用,并将协助其他自由软件项目从GitHub迁移。虽然SFC现在不会强制要求现有会员迁移项目,但他们将不再接受不打算从GitHub迁移的新会员项目。
SFC拒绝GitHub的服务是自由软件开发者向GitHub和微软抗议其不良行为而发出的强烈信号。
那么GitHub究竟是如何“惹恼”了SFC呢?
图源SFC官网
GitHub真在为自由软件“好”么?
在过去的十年里,GitHub改变了人们的编程方式。不仅让编程变得更简单,还改变了软件开发者对编程的看法。它找到了全世界数百万人正在努力解决的一个大问题——如何在代码上协作,并设计出了市场急需的的解决方案,实现了令人难以置信的增长和成功。
通过围绕开源项目Git构建SaaS服务,GitHub为开源生态系统提供价值并从中获利。具体来说,GitHub的利润主要来自那些希望使用GitHub工具进行内部专有软件开发的人。
然而,SFC认为,尽管GitHub一直标榜自己为这么多自由软件提供了大量的服务,但从大科技公司的许多免费服务中可以看到:如果你不是GitHub的客户,那么你就是其产品。科技公司用自由软件的开发方法开发成了GitHub的产品,而GitHub常常在对方不知情的情况下将其私有化并重新包装。
FOSS的开发者长期以来对于GitHub的这类行为一直以“温水煮青蛙”的心态。软件自由保护协会也意识到自己的包容造就了这个问题的一部分,当GitHub的行为变得越来越糟糕,而他们一直在原谅、忽视、默许......直到最近,终于该“秋后算账”了。
具体“引爆”SFC此次大动作的事件,则是GitHub在长达一年的时间内拒绝回应SFC对于Copilot(AI自动编程工具)在公开代码上进行训练的合法性的质疑。而就在上周,GitHub宣布Copilot成为一个商业化的盈利性产品,彻底激怒SFC。
事件经过如下:
2021年7月,SFC就曾与微软和GitHub的代表进行了视频通话,提出了几个问题,他们说当时无法回答,但会“很快回答”。
在六个月没有回应之后,SFC在其文章《如果软件是我的副驾驶,谁给我的软件编程?》(https://sfconservancy.org/blog/2022/feb/03/github-copilot-copyleft-gpl/)一文中公开提出了这些问题,但GitHub仍然没回应。
三周后,SFC成立了一个专家委员会,讨论“人工智能辅助软件的产生的伦理道德问题”(https://sfconservancy.org/news/2022/feb/23/committee-ai-assisted-software-github-copilot/),并同时进行公开讨论(https://lists.copyleft.org/mailman/listinfo/ai-assist)。他们邀请微软和GitHub的代表参加公开讨论,但微软和GitHub无视SFC的邀请。
2022年6月下旬,在SFC提醒GitHub关于以下2点:“1.这几个悬而未决的问题我们已经等了一年;2.你们为何拒绝加入关于这个话题的公开讨论?”
然而GitHub在一周后回应:他们不会加入关于这个问题的任何公开或私下讨论,因为“关于人工智能辅助软件的伦理”的讨论似乎不太可能改变SFC的立场,这就是为什么GitHub没有回应SFC的原因。
2022年6月22日,不仅拒绝回应SFC的GitHub还宣布将Copilot商业化,SFC的底线终于被突破。
由此可见,GitHub对Copilot的最终立场是:如果SFC不同意GitHub对Copilot相关政策事项的看法,那么SFC就不值得微软或GitHub回复。只有当SFC认为可以立即将其立场改为GitHub的政策立场时,GitHub才会费心回复。即便如此,就连这个答案微软和GitHub会时隔一年才告知!在这期间,GitHub还在一直努力推进Copilot的商业化!
而SFC一直希望微软/GitHub回应的关于Copilot的三个主要问题是:
1. 在微软和GitHub的公开声明中,依据的是什么判例法(如果有的话)。GitHub当时的CEO说:“(1)在公共数据上训练ML系统是合理使用(2)输出的代码版权属于操作者,就像编译器一样。”为了透明和尊重自由和开放源码软件社区,也请向社区提供你们完整的法律分析来证明你们这些说法是有理有据的。
SFC认为,微软和GitHub的拒绝回答,表示他们仍然坚持他们的前CEO的声明(这也是他们在这个问题上的唯一声明),但事实上他们没有相应的法律理论来支撑。
2. 如果像微软/GitHub所说的那样,允许在任何代码上训练模型(并允许用户基于该模型生成代码)而不受任何许可条款的约束,你们为什么只选择在自由软件上训练Copilot的模型?例如,为什么微软Windows和Office代码库不在你的训练集中?
SFC认为,微软和GitHub的拒绝回答也暗示了这个问题的真正答案。虽然GitHub很乐意利用FOSS,但他们对自己的知识产权的重视程度远远超过FOSS,并且满足于忽视和侵蚀FOSS用户的权利,而不是自己的。
3. 微软/GitHub能否提供一份用于Copilot的训练集的许可证的清单,包括版权人的名字和/或Git存储库的名字?如果不能,那么为什么不向社区提供这些信息呢?
SFC认为,GitHub拒绝回答的原因是他们没有仔细复制他们的模型,所以他们实际上不知道他们侵犯了谁的版权,以及何时和如何侵犯。
综上,这些不仅问题被挡了回来,最终,GitHub的做法,导致SFC愤而“暴走”。
Copilot的合法性是值得商榷的吗?
在宣布“离家出走”后,SFC的最新声明也在Hacker News上引来了400多位开发者的热评,针对SFC铿锵有力的指责,GitHub推出商业化的Copilot,其合法性是否真的有待商榷呢?
一名开发者指出,SFC提出的关于“为什么微软Windows和Office代码库不在你的训练集里?”是他最喜欢的问题。
还有开发者对于人工智能生产代码的知识产权问题报以同样的担忧:“人工智能有可能复制出与原作非常接近的东西,从而被认为是对原作的侵犯。”
然而,却另有开发者表示:“我想知道你们为什么把代码放在公开的GitHub FOSS仓库里,却不希望以任何方式复制......我还想知道为什么人们认为他们的代码是如此特别,以至于没有人能够独立地想出它。我想,Copilot的每一个“对手”都是有史以来最好的开发者吧?”
并且他指出:“如果有人在一个闭源的商业软件项目中使用你的(例如MIT许可的)代码,并没有解除你的代码被发布的自由,你的代码仍然和以前一样开放和可用,任何人都没有失去任何自由。”
这位开发者“阴阳怪气”的发言也遭到了一众人的反驳,其中一位开发者表示:“没有人声称他们不想让自己的代码被复制。人们只是想让自己代码的衍生产品遵守他们为自己的项目选择的许可证。而根据你的发言和总体语气,我认为你只是对自由软件有偏见,仅仅是因为你不理解,但这并不意味着这些想法是无脑的。我也很好奇,为什么版权法应该保护专利软件、音乐、游戏、写作等,而不适用于我的软件,即使它不是最高质量的作品?”
关于这场战争在各方争吵之下,似乎仍没有一个定论。SFC是否真的就此彻底与GitHub决裂呢?
SFC也承认,放弃GitHub会带来巨大的牺牲和不便,并且需要很多时间才能完成。但SFC也提醒大家,是GitHub需要FOSS项目使用他们的专有基础设施,而不是SFC需要GitHub的专有基础设施。
目前,SFC提供了GitHub的替代方案,尽管对于大多数开发者而言,其界面不那么熟悉,网站热度也不高,但SFC表示将帮助改进这些替代方案。目前SFC已经推出了一个网站:GiveUpGitHub.org,该网站将为那些希望离开GitHub的人提供指引、方法、工具和支持。
那么,作为在GitHub上的FOSS开发者,你会考虑与GitHub“分手”么?
参考资料:
https://sfconservancy.org/blog/2022/jun/30/give-up-github-launch/
https://news.ycombinator.com/item?id=31932250