RubyGems 사태에서 서둘러 편들지 않는 이유

Why I'm not rushing to take sides in the RubyGems fiasco

작성자
HackerNews
발행일
2025년 09월 28일

핵심 요약

  • 1 RubyGems 사태는 Ruby 생태계의 복잡한 거버넌스 문제와 10년 묵은 갈등의 결과이며, 단순한 선악 구도로 판단하기 어렵습니다.
  • 2 Ruby Together의 Andre Arko는 과거 기금 운용, Bundler 통제력 행사, 커뮤니케이션 방식 등으로 여러 논란의 중심에 서 있었습니다.
  • 3 현재의 갈등은 과거의 미해결된 문제들이 표면화된 것으로, Ruby 생태계의 안정성과 미래에 중대한 영향을 미치고 있습니다.

도입

현재 RubyGems를 둘러싼 논란은 Ruby 커뮤니티 내에서 상당한 파장을 일으키고 있습니다. 필자는 이 사태가 단순히 최근 발생한 문제가 아니라, 10년 이상 지속된 복잡한 역사와 미해결된 갈등의 결과라고 지적하며, 섣부른 판단을 경계합니다. 특히 RubyGems, Bundler, Ruby Central, 그리고 Ruby Together를 둘러싼 거버넌스 및 운영 방식의 문제가 주요 쟁점이며, 이로 인해 Ruby 개발자들은 혼란과 우려를 표하고 있습니다.

Ruby 생태계의 복잡한 거버넌스

  • 초기 분산: Ruby는 일본에서, RubyGems는 미국에서 개발되었고, RubyGems.org는 6년 후 사실상의 표준 호스트가 되었습니다. 이 과정에서 각 주체 간의 소통과 조율은 원활하지 않았습니다.

  • Bundler의 등장: Yehuda Katz와 Carl Lerche가 독립적으로 개발한 Bundler는 Ruby 애플리케이션 개발의 핵심 도구가 되었고, Andre Arko가 주요 관리자가 되었습니다.

  • Ruby Together의 설립과 흡수: Andre Arko는 2015년 Ruby Together를 설립하여 Bundler 개발 자금을 조달하려 했으나, 2019년 Bundler가 RubyGems에 통합되고 2022년 Ruby Together가 Ruby Central에 흡수되는 과정에서 많은 갈등이 있었습니다.

Andre Arko와 Ruby Together 관련 논란

  • 높은 보수: Andre Arko는 Ruby Together를 통해 자신에게 시간당 200~250달러에 달하는 보수를 지급했으며, 이는 일반 기부자들이 예상하는 수준보다 훨씬 높았습니다.

  • 오해의 소지가 있는 기금 사용: 초기 Ruby Together 웹사이트는 기부금이 ‘우리 팀’ 전체에 지급되는 것처럼 보였으나, 실제로는 주로 Andre Arko에게 지급되었습니다. 이로 인해 Steve Klabnik, Aaron Patterson 등 유명 개발자들에게 기부된다고 오해하는 기부자들이 있었습니다.

  • Bundler 통제력 활용 시도:
    • 2015년, Heroku가 Ruby Together에 비용을 지불하지 않으면 Bundler 구버전 지원을 중단하겠다고 제안하여 압력 전술로 해석되었습니다.
    • 2016년 유출된 Ruby Together 이사회 회의록에는 RubyGems.org에 대한 접근을 ‘요율 제한’하여 수익을 늘리려는 논의가 있었습니다. 이는 Andre가 시스템 접근 권한을 이용해 Ruby 생태계를 재정적 이득을 위해 인질로 삼을 수 있다는 우려를 낳았습니다.
    • 2017년 1월, Bundler 설치 시 Ruby Together 기부를 요청하는 ‘설치 후 메시지’를 추가하여 즉각적인 반발을 샀습니다. 이 과정에서 Andre는 Shopify가 Ruby Together에 비용을 지불하지 않았음을 지적하며 서버 비용과 개발 지원 기금을 혼동하는 발언을 했습니다.
  • Ruby Central의 입장: 2017년 3월, Ruby Central은 RubyGems.org의 운영과 안정성은 전적으로 자신들의 책임이며, Ruby Together의 기부금과는 무관하다고 공식적으로 밝혔습니다.

  • Google Cloud Platform 관련 오해: 2017년 8월, Andre는 Google Cloud Platform이 gemstash 코드를 불법 복제했다고 주장하며 법적 조치를 위협했으나, 이는 사실 무근으로 밝혀졌습니다. 이 주장은 Google이 Ruby Together를 지원하지 않았다는 불만과 함께 제기되었습니다.

최근 사건과 과거 행동의 일관성

  • rv-ruby 포크 논란: 2025년 8월, Andre가 homebrew/homebrew-portable-ruby 프로젝트를 포크하면서 GitHub의 포크 기능을 사용하지 않고 복제 후 재푸시하여 원저작자 표시를 의도적으로 지우려 했다는 의혹이 제기되었습니다. 이는 Google에 대한 과거 비난과 대조되어 위선적이라는 비판을 받았습니다.

  • 거버넌스 통제 시도: Andre는 Ruby Together를 이끌면서 rubygems/rubygems의 커미터 접근을 제한하고, bundler/bundler의 gemspec에서 원저작자 정보를 일방적으로 삭제하며, Bundler 웹사이트 개편 과정에서 여러 기여자들을 제거하는 등 거버넌스 통제력을 강화하려는 움직임을 보였습니다.

결론

현재 RubyGems 사태는 표면적으로 드러난 문제뿐만 아니라, Ruby 생태계 내에서 수년간 쌓여온 거버넌스, 투명성, 그리고 권력 남용에 대한 깊은 불신과 갈등의 결과입니다. 필자는 이 복잡한 배경 때문에 섣불리 어느 한쪽의 편을 들기보다는, 전체적인 맥락을 이해하고 신중하게 접근할 것을 권고합니다. Ruby 생태계의 미래는 이러한 과거의 unresolved 문제들을 어떻게 해결하고, 핵심 의사결정자들과 커뮤니티 간의 신뢰를 회복하는지에 달려 있습니다.

댓글 1

댓글 작성

0/1000
정중하고 건설적인 댓글을 작성해 주세요.
J
jeff
1개월 전
역시 이런건 어느 한쪽이 옳은게 아니네