Ruby Central องค์กรที่จัดการโครงสร้างพื้นฐานสำคัญของ Ruby ได้ตกเป็นจุดศูนย์กลางของความขัดแย้งครั้งใหญ่หลังจากที่ได้ยึดครองการควบคุม RubyGems GitHub organization ทั้งหมดโดยฝ่ายเดียว การกระทำนี้ได้กระตุ้นให้ผู้ดูแลหลักออกจากโครงการและทำให้ชุมชน Ruby แตกแยกเรื่องคำถามเกี่ยวกับการกำกับดูแลและอิทธิพลของบริษัท
สถานการณ์เริ่มต้นเมื่อ Ruby Central เผชิญกับแรงกดดันทางการเงินหลังจากสูญเสียเงินสนับสนุนจำนวนมาก ตามการอภิปรายของชุมชน Sidekiq ได้ถอนเงินสนับสนุนประจำปี 250,000 ดอลลาร์สหรัฐฯ เนื่องจากความไม่เห็นด้วยเรื่องการให้เวทีแก่วิทยากรบางคนในงานประชุม Ruby ช่องว่างด้านเงินทุนนี้ได้สร้างโอกาสให้ Shopify ผู้สนับสนุนหลักของ Ruby Central สามารถใช้อิทธิพลมากขึ้นต่อการตัดสินใจขององค์กร
ผลกระทบทางการเงิน: Sidekiq ถอนเงินสนับสนุนประจำปี 250,000 ดอลลาร์สหรัฐจาก Ruby Central เนื่องจากความขัดแย้งเรื่องผู้พูดในงานประชุม
การยึดครองและผลที่ตามมา
Ruby Central ได้ให้เหตุผลสำหรับการกระทำของพวกเขาโดยอ้างว่าผู้ดำเนินงานบางคนก่อให้เกิดความเสี่ยงด้านความปลอดภัยต่อระบบนิเวศ อย่างไรก็ตาม สมาชิกชุมชนโต้แย้งว่านี่เป็นเพียงการปกปิดสำหรับการแย่งชิงอำนาจที่กว้างขึ้นซึ่งขจัดผู้ดูแลออกจากโครงการที่พวกเขาได้สร้างและดูแลมาเป็นปี การยึดครองไม่เพียงส่งผลกระทบต่อโครงสร้างพื้นฐาน RubyGems.org เท่านั้น แต่ยังรวมถึง RubyGems หลักและ Bundler codebase ที่เคยอยู่ภายใต้การควบคุมของชุมชนมาโดยตลอด
สิ่งที่ทำให้เรื่องนี้เป็นที่ถกเถียงกันเป็นพิเศษคือ Ruby Central ได้ขจัดผู้ดูแลที่เกี่ยวข้องโดยตรงกับความปลอดภัยมากที่สุดออกไปในขณะที่ติดป้ายว่าเขาเป็นภัยคุกคามด้านความปลอดภัย จากนั้นก็ล้มเหลวในการแทนที่เขาด้วยใครอื่น สิ่งนี้ได้ทิ้งโครงสร้างพื้นฐาน Ruby ที่สำคัญไว้ในสภาพที่หลายคนพิจารณาว่าขาดการดูแลรักษา
Platforming: การให้โอกาสในการพูดหรือการรับรองอย่างเป็นทางการแก่บุคคลที่ถูกโต้แย้งในงานประชุมหรือกิจกรรม
โปรเจกต์ที่ได้รับผลกระทบ: การเข้าควบคุมครั้งนี้ส่งผลกระทบต่อ RubyGems , Bundler และ RubyGems.org ซึ่งล้วนเป็นส่วนประกอบสำคัญของระบบนิเวศการจัดการแพ็กเกจของ Ruby
อิทธิพลของบริษัทต่อการกำกับดูแลชุมชน
ชุมชน Ruby มีความภาคภูมิใจมาอย่างยาวนานในการปฏิบัติตาม MINASWAN (Matz Is Nice And So We Are Nice) ปรัชญาที่เน้นความใจดีและการร่วมมือ อย่างไรก็ตาม เหตุการณ์นี้ได้เปิดเผยความตึงเครียดที่ลึกกว่าระหว่างผลประโยชน์ของบริษัทและค่านิยมของชุมชน การมีอยู่อย่างมีนัยสำคัญของ Shopify ในคณะกรรมการของ Ruby Central ร่วมกับอิทธิพลทางการเงินของพวกเขา ได้ทำให้เกิดความกังวลเกี่ยวกับว่าผู้สนับสนุนจากบริษัทขณะนี้ควบคุมทิศทางอนาคตของ Ruby อย่างมีประสิทธิภาพหรือไม่
พวกเขาโยนชุมชนทิ้งเพื่อตอบสนองความต้องการของบริษัท สิ่งนี้ไม่สามารถยอมรับได้ มันเป็นการล้อเลียนต่อหน้าชุมชน
จังหวะเวลาของการกระทำของ Ruby Central ก็ได้รับการวิพากษ์วิจารณ์เช่นกัน พวกเขาได้กำหนดเซสชัน Q&A ของชุมชนเพื่ออธิบายการตัดสินใจของพวกเขา จากนั้นก็ยกเลิกในนาทีสุดท้าย โดยอ้างเหตุผลเทศกาลยิวของ Rosh Hashanah (Israel) สิ่งนี้ได้นำไปสู่ข้อกล่าวหาว่าเป็นการควบคุมความเสียหายแบบบริษัทมากกว่าการมีส่วนร่วมของชุมชนอย่างแท้จริง
MINASWAN: Matz Is Nice And So We Are Nice - ปรัชญาชุมชน Ruby ที่ส่งเสริมความใจดีและการร่วมมือ ตั้งชื่อตาม Yukihiro Matsumoto (Matz) ผู้สร้าง Ruby
ผู้เล่นหลัก: Shopify ทำหน้าที่เป็นผู้สนับสนุนหลักของ Ruby Central และมีตัวแทนในคณะกรรมการอย่างมีนัยสำคัญ ในขณะที่ Ruby Central จัดการโครงสร้างพื้นฐานของ RubyGems.org ที่ให้บริการระบบนิเวศ Ruby ทั้งหมด
การตอบสนองของชุมชนและผลกระทบในอนาคต
ความขัดแย้งได้เปิดเผยความไม่เห็นด้วยขั้นพื้นฐานเกี่ยวกับวิธีที่โครงการโอเพนซอร์สควรได้รับการกำกับดูแล ในขณะที่บางคนโต้แย้งว่า Ruby Central มีความกังวลด้านความปลอดภัยที่ถูกต้อง คนอื่นๆ เห็นว่านี่เป็นแบบอย่างที่อันตรายซึ่งผู้สนับสนุนจากบริษัทสามารถซื้อการควบคุมโครงสร้างพื้นฐานของชุมชนได้อย่างมีประสิทธิภาพ
ผู้ดูแลที่มีชื่อเสียงหลายคนได้ประกาศว่าพวกเขาจะออกจาก Ruby Central ทั้งหมด และข้อกำหนดสำหรับ Contributor License Agreements (CLAs) อาจป้องกันไม่ให้พวกเขาสนับสนุนโครงการ Ruby ในอนาคต การสูญเสียสมองนี้อาจมีผลกระทบระยะยาวต่อสุขภาพของระบบนิเวศ Ruby
เหตุการณ์นี้ยังได้จุดประกายการอภิปรายที่กว้างขึ้นเกี่ยวกับความปลอดภัยของห่วงโซ่อุปทานในโครงการโอเพนซอร์ส ในขณะที่บริษัทอย่าง Shopify เผชิญกับแรงกดดันที่ถูกต้องในการรับประกันความปลอดภัยของสแต็กเทคโนโลยีของพวกเขา ชุมชนตั้งคำถามว่าการยึดครองโดยฝ่ายเดียวเป็นแนวทางที่ถูกต้องในการจัดการกับความกังวลเหล่านี้หรือไม่
ในขณะที่ชุมชน Ruby ต่อสู้กับวิกฤตการกำกับดูแลนี้ หลายคนเรียกร้องแนวทางใหม่ที่สมดุลความต้องการด้านความปลอดภัยกับความเป็นอิสระของชุมชนได้ดีกว่า ผลลัพธ์ของความขัดแย้งนี้อาจสร้างแบบอย่างที่สำคัญสำหรับวิธีที่ระบบนิเวศโอเพนซอร์สอื่นๆ จัดการกับความตึงเครียดที่คล้ายกันระหว่างผลประโยชน์ของบริษัทและการควบคุมของชุมชน
CLA (Contributor License Agreement): เอกสารทางกฎหมายที่ผู้สนับสนุนต้องลงนามก่อนที่โค้ดของพวกเขาจะได้รับการยอมรับในโครงการ โดยการโอนสิทธิ์บางอย่างให้กับเจ้าของโครงการ
อ้างอิง: Why I leave Ruby Central