在解雇了大部分技术人员的同时,Twitter 新所有者兼首席执行官 Elon Musk 似乎也放弃了对其开源工作的支持。
与大多数现代软件公司一样,Twitter 依赖于开源程序;其基于 CentOS 7 运行,该版本将于 2024 年 6 月结束生命周期。因此,Twitter 方面原本的计划是迁移到 CentOS Stream。但鉴于目前的情况,Twitter 方面好像已经没剩下什么人来推进这个操作系统迁移了。
而 Twitter 对开源软件的依赖也远不止其基础操作系统。Twitter 前开源负责人 Will Norris 在接受 ZDNet 采访时表示,他曾与当时的 Twitter 首席执行官 Parag Agrawal 详细讨论过关于改进 Twitter 对关键开源项目的投资事项。
当我加入时,已经有许多大型的现代化工作正在进行中,其中包含大型开源组件。Pants 构建系统正在被 Bazel 取代,准备用 Kubernetes 取代 Apache Aurora 和 Mesos 的工作也正在进行中。而且,我们已经是 Apache Kafka、Hadoop 和 Scala 的最大用户之一。我们还有一个 JVM 的自定义分支,我们希望它最终能够开源。有很多令人惊叹的工作正在发生,他们成功地从这些社区聘请了非常优秀的人来从事这些项目。
然后今年发生了这些变故 :-\
首先,马斯克开始时断时续地收购 Twitter。因此在看到一条明确的前进道路前,Twitter 高管选择冻结了其开源计划和投资;但最终,马斯克解雇了所有高管。 很快,大多数开发人员也被解雇。如今,Twitter 一半以上的员工要么被赶走,要么跳槽。
Norris 指出,“大多数在 Twitter 从事开源工作的关键人物都离开了。所有与我一起从事开源工作的工程师都离开了”。他认为,这对 Twitter 意味着:
短期内,可能不会有太多开源工作计划。对于 Twitter 来说,变回仅仅作为开源的消费者而不做出任何有意义的贡献是相对容易的;反正很多公司都是这么做的,他们可以像以前一样继续使用 CentOS、Scala、Kafka 和其他所有软件。对于处于迁移过程中的项目,例如 Bazel 和 Kubernetes,停止可能会更痛苦,但这取决于事情处于什么状态。我不得不想象所有的重点只是保持服务运行和添加 Musk 想要的任何产品改变。
Twitter 的现任员工透露,他们目前所能做的就是“keep the wheels turning”。并表示,Twitter 每月 8 美元的蓝 V 认证服务延迟推出的真正原因不仅仅是因为被冒名账号所滥用,而是因为开发人员还无法自动化阻止此类滥用行为。
从长远来看,Norris 认为 Twitter 在开源社区中已经变得无关紧要。“他们已经失去了作为一个严肃的工程组织的所有信誉,我不在乎你如何称自己为'hardcore'。开源社区建立在关系和信任的基础上,而现在 Twitter 与这些团体没有任何关系。他们已经失去了任何有意义地参与这些社区的能力。”
但是,有一个迫在眉睫的问题是:Twitter 自己的开源项目。Norris 表示:
它们中的许多不再被积极维护(这是它自己的问题),但它们非常流行,尤其是在 Scala 世界(Finagle、Twemoji、Scalding 和 Algebird)。Twitter 有适当的流程来维持其中一些开源项目(如 Finagle)与代码的内部副本保持同步,但这些都不是完全自动化的。我非常怀疑是否有人留下来做这项工作。那么这些项目的外部用户 (包括 ING Bank、Pinterest 和 SoundCloud 等公司)会怎样呢?
此外,Norris 指出,https://github.com/twitter 中的项目维护将会变得很奇怪。因为 Twitter 有一个内部系统来管理它在 GitHub 上的存在。它允许 Twitter 员工注册自己的 GitHub 帐户来访问他们的 Twitter 开源项目。过去的情况是,当某人离开公司时他们的访问权限会被留下,但他们会从 GitHub 上的 Twitter 组织的成员转为外部合作者。
然而即使在马斯克接手之前,Twitter 有时也没能让离开公司的开发人员很好的剥离权限。在 2022 年 8 月,一名员工在离开公司 18 个月后就仍能访问 Twitter 的 GitHub 和源代码。Twitter 在今年早些时候对这一问题进行了修复,但相关工作并未正式完成。因此,Norris 称,“一些维护人员已经在多年前离开了 Twitter 的项目,可能仍然有感兴趣的人在继续访问。”
当然,那些最近被解雇或辞职的人以及“最了解剩余活跃项目的人,几乎可以肯定已经被删除了他们的访问权限” 。几个月前甚至几年前的 Twitter 前员工则很可能仍然拥有代码访问权限,而那些知道谁应该拥有代码访问权限的、但在最近已经被解雇了的员工将不再负责解决问题。
至于 Twitter 自己的开源项目 (如 Finagle),Norris 预计 Twitter 不会做任何事情来继续维护这些项目,至少不会达到以前的水平。因此,从现实的角度来看,所有这些项目可能都需要分叉并转移到一个新的地方,但这将是一个混乱的过程,而且可能会有很大的破坏性。