Ruby Central đã tiếp quản quyền kiểm soát các dự án mã nguồn mở RubyGems và Bundler trong một động thái mà các nhà phát triển và thành viên cộng đồng gọi là cuộc thâu tóm thù địch do Shopify dàn xếp. Hành động này đã gây chấn động trong cộng đồng lập trình Ruby và đặt ra những câu hỏi nghiêm túc về ảnh hưởng của các tập đoàn đối với cơ sở hạ tầng mã nguồn mở quan trọng.
Tranh cãi bắt đầu khi Sidekiq , một thư viện Ruby phổ biến để xử lý công việc nền, đã rút lại khoản tài trợ hàng năm 250.000 đô la Mỹ cho Ruby Central . Quyết định này được đưa ra sau khi Ruby Central thông báo rằng David Heinemeier Hansson ( DHH ), người tạo ra Ruby on Rails , sẽ phát biểu tại RailsConf 2023 . DHH gần đây đã xuất bản các bài blog gây tranh cãi ủng hộ các nhà hoạt động cực hữu và đưa ra những tuyên bố mà nhiều người trong cộng đồng coi là phân biệt chủng tộc và bài ngoại.
Áp lực tài chính và tối hậu thư
Với việc Sidekiq rút tài trợ, Ruby Central gần như hoàn toàn phụ thuộc vào Shopify về mặt hỗ trợ tài chính. Theo nhiều nguồn tin, Shopify sau đó đã đưa ra tối hậu thư cho Ruby Central : chiếm toàn quyền kiểm soát các kho lưu trữ GitHub của RubyGems và loại bỏ một số nhà phát triển, hoặc mất tất cả tài trợ. Thời hạn rất gấp, chỉ cho Ruby Central ít hơn 24 giờ để tuân thủ.
Áp lực này được một thành viên hội đồng quản trị Ruby Central mô tả như một sự lựa chọn giữa việc làm theo yêu cầu của Shopify hoặc bỏ phiếu để bắt đầu quá trình đóng cửa Ruby Central . Shopify đặc biệt yêu cầu André Arko , một nhà phát triển đã làm việc trên RubyGems trong hơn một thập kỷ, bị loại khỏi dự án.
Các Chi Tiết Tài Chính Quan Trọng:
- Sidekiq đã rút lại khoản tài trợ hàng năm 250.000 USD từ Ruby Central
- Ruby Central trở nên phụ thuộc gần như hoàn toàn vào nguồn tài trợ từ Shopify sau khi bị rút tài trợ
- Shopify đưa ra thời hạn chót ít hơn 24 giờ để Ruby Central tuân thủ các yêu cầu
Thực hiện cuộc thâu tóm
Vào ngày 9 tháng 9, Hiroshi Shibata ( HSBT ), một thành viên nhóm Ruby core và nhà phát triển RubyGems , đã chuyển quyền sở hữu tổ chức GitHub RubyGems cho Ruby Central và thêm Marty Haught làm chủ sở hữu. Hành động này được thực hiện mà không có sự đồng ý của các nhà phát triển khác, những người đã thiết lập các thủ tục để thêm thành viên nhóm mới.
Khi bị các nhà phát triển khác đối chất, HSBT ban đầu từ chối đảo ngược các thay đổi. Mặc dù một số quyền hạn đã được khôi phục tạm thời sau khi các nhà phát triển phản đối, Marty Haught vẫn giữ vai trò chủ sở hữu. Vào ngày 18 tháng 9, hội đồng quản trị Ruby Central đã bỏ phiếu tiến hành thâu tóm hoàn toàn, và các nhà phát triển đã bị loại bỏ một cách có hệ thống khỏi tổ chức GitHub và bị tước quyền sở hữu gem.
Dòng thời gian các sự kiện:
- Tháng 7 năm 2023: Ruby Central thông báo DHH sẽ phát biểu tại RailsConf
- Ngày 9 tháng 9: HSBT chuyển quyền sở hữu tổ chức GitHub RubyGems cho Ruby Central
- Ngày 13 tháng 9: Một số thay đổi tạm thời được hoàn tác nhưng Marty Haught vẫn giữ vai trò chủ sở hữu
- Ngày 17 tháng 9: Cuộc họp giữa các nhà bảo trì và Ruby Central
- Ngày 18 tháng 9: Hội đồng quản trị Ruby Central bỏ phiếu tiến hành tiếp quản hoàn toàn
- Ngày 19 tháng 9: DHH công khai tin tức về tình hình này
Tuyên bố về bảo mật chuỗi cung ứng
Ruby Central biện minh cho hành động của họ bằng cách viện dẫn các mối lo ngại về bảo mật chuỗi cung ứng, tham chiếu đến các cuộc tấn công gần đây vào các trình quản lý gói như npm . Tuy nhiên, các thành viên cộng đồng đã chỉ ra một sự khác biệt quan trọng mà Ruby Central dường như đang cố tình che giấu. RubyGems Service (trang web rubygems.org mà Ruby Central vận hành) tách biệt với các kho lưu trữ mã nguồn RubyGems mà cộng đồng duy trì.
Ruby Central có quyền khóa cơ sở hạ tầng RubyGems Service , nhưng họ chưa bao giờ sở hữu các kho lưu trữ GitHub RubyGems .
Các nhà phát triển không phản đối việc Ruby Central bảo mật quyền truy cập vào dịch vụ sản xuất mà họ vận hành. Tranh cãi tập trung vào việc Ruby Central chiếm quyền kiểm soát các kho lưu trữ mã nguồn mở mà họ chưa bao giờ sở hữu, được phát triển bởi các tình nguyện viên trong nhiều năm.
Mối lo ngại về công cụ cạnh tranh
Thêm một lớp khác vào cuộc xung đột, một số nhà phát triển bị loại bỏ gần đây đã công bố một công cụ quản lý Ruby mới có tên rv thông qua hợp tác xã của họ có tên Spiral . Rafael França , một nhân viên Shopify và thành viên nhóm Rails core , đã công khai bày tỏ sự không tin tưởng đối với các nhà phát triển, cho rằng họ có thể phá hoại rubygems hoặc bundler do dự án cạnh tranh của họ.
Phản ứng này khiến nhiều người trong cộng đồng bối rối, vì sự cạnh tranh và đổi mới trong các công cụ quản lý gói thường được chào đón trong các hệ sinh thái lập trình khác như Python , nơi nhiều công cụ cùng tồn tại mà không có drama.
Các Nhân Vật Chính:
- Ruby Central: Tổ chức phi lợi nhuận vận hành dịch vụ RubyGems
- Shopify: Nhà tài trợ doanh nghiệp lớn với DHH trong hội đồng quản trị
- Sidekiq: Công ty một người đã rút lại khoản tài trợ 250 nghìn đô la hàng năm
- André Arko: Người duy trì RubyGems bị nhắm mục tiêu cụ thể để loại bỏ
- HSBT (Hiroshi Shibata): Thành viên cốt lõi Ruby đã thực hiện việc chuyển giao quyền sở hữu ban đầu
- Marty Haught: Giám đốc Ruby Central được thêm vào với tư cách chủ sở hữu tổ chức GitHub
Phản ứng cộng đồng và tác động
Cuộc thâu tóm đã chia rẽ cộng đồng Ruby , với nhiều người đóng góp lâu năm bày tỏ lo ngại về tiền lệ mà điều này tạo ra cho sự kiểm soát của tập đoàn đối với cơ sở hạ tầng mã nguồn mở. Một số thành viên cộng đồng đang kêu gọi fork các dự án bị ảnh hưởng và các dịch vụ lưu trữ gem thay thế.
Tranh cãi này làm nổi bật tính dễ bị tổn thương của các dự án mã nguồn mở phụ thuộc vào một số ít các nhà tài trợ tập đoàn lớn. Khi tài trợ trở nên tập trung trong tay một hoặc hai công ty, những tổ chức đó có thể kiểm soát hiệu quả hướng đi và quản trị của các dự án cơ sở hạ tầng quan trọng.
Tình huống này cũng đặt ra câu hỏi về tương lai của Ruby như một ngôn ngữ lập trình, vì một số nhà phát triển nổi bật đã cho biết họ có thể rời khỏi hệ sinh thái hoàn toàn. Với Ruby đã đối mặt với những thách thức trong việc duy trì thị phần trước các ngôn ngữ mới hơn, xung đột nội bộ này có thể đẩy nhanh việc các nhà phát triển di chuyển sang các nền tảng khác.
Cộng đồng Ruby hiện đối mặt với thách thức xây dựng lại niềm tin và thiết lập các cấu trúc quản trị kiên cường hơn có thể chống lại áp lực từ tập đoàn trong khi duy trì tinh thần hợp tác đã từng định nghĩa hệ sinh thái này.
Tham khảo: Shopify, pulling strings at Ruby Central, forces Bundler and RubyGems takeover