Ruby Central's Destructive Legacy

Ruby Central’s Destructive Legacy

Ruby Central 的破坏性遗产

30 Jul 2026 2026年7月30日

At conferences and meetups, and in conversations online, many Ruby developers have asked me about Ruby Central and my disagreement with them. This post is my attempt to answer the questions I’ve been getting over and over, covering: 1) what is Ruby Central doing now? 2) has the dispute over Bundler and RubyGems been resolved? 3) what has Ruby Central said about the dispute? and 4) what can Ruby developers do now? 在各类会议、聚会以及在线交流中,许多 Ruby 开发者问起我关于 Ruby Central 以及我与他们之间分歧的问题。这篇文章是我试图回答这些反复被问及的问题,内容涵盖:1) Ruby Central 现在在做什么?2) 关于 Bundler 和 RubyGems 的争议解决了吗?3) Ruby Central 对此争议有何说法?以及 4) Ruby 开发者现在能做什么?

What is Ruby Central doing now?

Ruby Central 现在在做什么?

To talk about what Ruby Central is doing now, we need to start with a bit of historical context. What was Ruby Central doing before this saga began? About 18 months ago, Ruby Central: 要谈论 Ruby Central 现在在做什么,我们需要先了解一些历史背景。在这场风波开始之前,Ruby Central 在做什么?大约 18 个月前,Ruby Central:

  • ran 2 conferences every year, RubyConf and RailsConf
  • 每年举办两场会议:RubyConf 和 RailsConf
  • had an Open Source Committee with 3 members (Ufuk, Gabi, Mike)
  • 拥有一个由 3 名成员(Ufuk, Gabi, Mike)组成的开源委员会
  • funded 7 part-time community OSS contributors (André, Arun, Ellen, Gift, Irene, Josef, Martin)
  • 资助了 7 名兼职社区开源贡献者(André, Arun, Ellen, Gift, Irene, Josef, Martin)
  • funded 3 full-time OSS developers (Colby, Samuel, David)
  • 资助了 3 名全职开源开发者(Colby, Samuel, David)
  • coordinated those 10 OSS contributors across 3 major OSS projects: RubyGems, Bundler, RubyGems.org
  • 协调这 10 名开源贡献者参与 3 个主要的开源项目:RubyGems、Bundler 和 RubyGems.org

Then, about 10 months ago, Ruby Central began what core team member Ellen Dash called a “hostile takeover” of the RubyGems, Bundler, and RubyGems.org open source projects, seizing control of the projects and locking out the team that had nurtured and maintained them for over a decade. 随后,大约 10 个月前,Ruby Central 开始了核心团队成员 Ellen Dash 所称的对 RubyGems、Bundler 和 RubyGems.org 开源项目的“恶意收购”,夺取了项目的控制权,并将十多年来培育和维护这些项目的团队拒之门外。

Today, 10 months after their takeover, Ruby Central has: 今天,在他们接管 10 个月后,Ruby Central 已经:

  • lost 2 of 2 conferences, after ending RailsConf, cancelling a significant portion of the last RubyConf, and providing no future conference locations or dates for the first time in decades
  • 失去了全部 2 场会议:终止了 RailsConf,取消了上一届 RubyConf 的大部分内容,并且几十年来首次未能提供未来会议的地点或日期
  • lost 2 of 3 major OSS projects, by transferring Bundler & RubyGems away to Matz
  • 失去了 3 个主要开源项目中的 2 个,将 Bundler 和 RubyGems 转交给了 Matz
  • lost 9 of 10 contributors to open source work, including: 6 of 7 operators of RubyGems.org, 2 of 3 full-time contributors to OSS, 2 of 2 OSS writers
  • 失去了 10 名开源贡献者中的 9 名,包括:7 名 RubyGems.org 运营者中的 6 名,3 名全职开源贡献者中的 2 名,以及 2 名开源撰稿人中的 2 名
  • lost 3 of 3 members of the Open Source Committee
  • 失去了开源委员会全部 3 名成员
  • lost 5 of 7 board members
  • 失去了 7 名董事会成员中的 5 名
  • lost 3 of 3 Executive Directors
  • 失去了全部 3 名执行董事
  • lost 2 of 2 major financial sponsors (Sidekiq and Shopify, although Shopify seemingly just returned after a 9 month break)
  • 失去了 2 家主要财务赞助商(Sidekiq 和 Shopify,尽管 Shopify 在中断 9 个月后似乎刚刚回归)

Unlike many community non-profits (including the Python Software Foundation), Ruby Central does not hold elections for their board of directors. Despite rewriting their bylaws entirely this year, new directors are still selected exclusively by existing directors, with no public process for input or feedback. The current board consists of just 2 of the 7 members who initially approved the hostile takeover, plus 3 new members chosen by the previous board (Brandon, Jey, and Ran). 与许多社区非营利组织(包括 Python 软件基金会)不同,Ruby Central 不为其董事会举行选举。尽管今年彻底重写了章程,但新董事仍完全由现有董事选出,没有任何公众参与或反馈的流程。目前的董事会仅由最初批准恶意收购的 7 名成员中的 2 名,加上前任董事会选出的 3 名新成员(Brandon, Jey 和 Ran)组成。

Based on Ruby Central’s public announcements, they have added exactly one new program after ending both conferences and transferring away half of their open source software: a new security project, funded by a grant from Alpha-Omega. The security project’s goal is to use Anthropic’s Project Glasswing to search for security issues in gems that have already been published. In their first monthly report for June, they reported finding a total of 5 vulnerabilities, with 1 issue at medium severity, and 4 at low or unclassified severities. 根据 Ruby Central 的公开声明,在终止了两场会议并转让了一半开源软件后,他们仅增加了一个新项目:一个由 Alpha-Omega 资助的新安全项目。该安全项目的目标是使用 Anthropic 的 Project Glasswing 来搜索已发布 gem 中的安全问题。在 6 月份的首份月度报告中,他们报告总共发现了 5 个漏洞,其中 1 个为中等严重程度,4 个为低严重程度或未分类。

Ruby Central’s current sponsorship drive, the Ruby Alliance, has found three members willing to join: Gusto, Thoughtbot, and (very recently) Shopify. What none of the sponsorship announcement posts have mentioned is that Gusto and Thoughtbot employ two of the five Ruby Central board members. David Corson-Knowles is both a board member and a Senior Staff Engineer at Gusto. Ran Craycraft is not just President of the Ruby Central board, he is also Managing Director, Americas at Thoughtbot. That means the board members who allocate the sponsorship money are also providing that sponsorship money, a conflict of interest which neither the companies nor Ruby Central have disclosed. The final sponsor is Shopify, coming back 9 months after it was reported they demanded Ruby Central start this disaster in the first place. Ruby Central 目前的赞助计划“Ruby Alliance”已找到三名成员加入:Gusto、Thoughtbot 以及(最近加入的)Shopify。所有赞助公告文章都没有提到的是,Gusto 和 Thoughtbot 雇佣了 Ruby Central 五名董事会成员中的两名。David Corson-Knowles 既是董事会成员,也是 Gusto 的高级主任工程师。Ran Craycraft 不仅是 Ruby Central 董事会主席,还是 Thoughtbot 美洲区董事总经理。这意味着分配赞助资金的董事会成员同时也是提供这些赞助资金的人,这是一种公司和 Ruby Central 均未披露的利益冲突。最后一家赞助商是 Shopify,在有报道称他们最初要求 Ruby Central 发起这场灾难 9 个月后,他们又回来了。

Has our dispute been resolved?

我们的争议解决了吗?

No, our dispute has not been resolved. Since last October, Ruby Central has been threatening to sue me. They have not withdrawn that threat as of today. 没有,我们的争议尚未解决。自去年 10 月以来,Ruby Central 一直威胁要起诉我。截至今日,他们尚未撤回该威胁。

The core of our dispute is that last September, Ruby Central hijacked the Bundler and RubyGems GitHub projects from their maintainers of over ten years. When I informed Ruby Central that I own the name Bundler, they retaliated with a threat to sue me for supposed “hacking”, a position I have always disputed. 我们争议的核心在于,去年 9 月,Ruby Central 从维护了十多年的维护者手中劫持了 Bundler 和 RubyGems 的 GitHub 项目。当我告知 Ruby Central 我拥有 Bundler 这个名称的所有权时,他们以威胁起诉我所谓的“黑客行为”作为报复,我一直反驳这一立场。

Ruby Central has stated they will only withdraw their threat if I drop my claim they infringed the name Bundler. After I also questioned if my work as a contractor had been allowed by state labor law, they additionally started demanding that I drop any claims regarding employment as well. So far, Ruby Central has consistently said they will only withdraw their lawsuit threat if I give up my infringement claim for Bundler and any possible back pay I believe they owe me. Ruby Central 表示,只有我放弃他们侵犯了 Bundler 名称所有权的指控,他们才会撤回威胁。在我质疑我作为承包商的工作是否符合州劳动法后,他们又开始要求我放弃任何关于雇佣关系的索赔。到目前为止,Ruby Central 一直坚持说,只有我放弃对 Bundler 的侵权索赔以及我认为他们欠我的任何可能的补发工资,他们才会撤回诉讼威胁。

When the lawsuit threat did not make me drop my claims, Ruby Central then chose to give away the Bundler gem and rubygems GitHub repo to Matz. After that, all of the former maintainers made a new offer to settle. Ruby Central never replied to our offer. Instead, they restated their original offer, and only to me: they would withdraw their threat to sue only if I dropped all of my claims. I did not accept, and after four months with no further progress, I wrote a public update. 当诉讼威胁没能让我放弃索赔时,Ruby Central 选择将 Bundler gem 和 rubygems GitHub 仓库转让给 Matz。此后,所有前任维护者提出了新的和解方案。Ruby Central 从未回复我们的提议。相反,他们重申了最初的提议,而且只针对我个人:只有我放弃所有索赔,他们才会撤回诉讼威胁。我没有接受,在四个月没有任何进展后,我写了一份公开更新。

In response to my post, Ruby Central did two things at once: 针对我的文章,Ruby Central 同时做了两件事:

First, Ruby Central told me they were actively seeking outside funding to pay a settlement to me that would end our dispute. They asked me for an amount that would fully compensate me for my attorney’s fees, the amount they might owe in back pay, plus compensation for an additional six months after I was fired. With help from an expert, I calculated an amount around $450,000, and provided that number as requested. 首先,Ruby Central 告诉我,他们正在积极寻求外部资金来支付给我的和解金,以结束我们的争议。他们要求我提供一个金额,以全额补偿我的律师费、他们可能欠我的补发工资,以及我被解雇后额外六个月的补偿。在专家的帮助下,我计算出了约 45 万美元的金额,并按要求提供了该数字。

Despite providing that number, I have never asked for that amount of money. 尽管提供了那个数字,但我从未索要过那笔钱。