RubyGems のソースインデックスの取得がやたら遅い件から RPA を振り返る

gem のリポジトリの取得ってバカみたいに遅いよね。いっぺんソース(rubygems/remote_installer.rb: Gem::CachedFetcher#source_index メソ)見たがなぜ遅いか良くわからなかった(そりゃ測ってないからな)。場合によっては aptitude(apt-get) update がなぜ速いかを見なければならないだろうか。単にリポジトリを提供しているサーバの問題かも。RPA の方が良かったなぁ(ログ出過ぎだったが)。


RPA の中心人物 Mauricio は、安定に拘っていた。パッケージ自体がパッケージャーによる審査を経た安定版であることは元より、サーバの分散化等の安定して供給する仕組みにも拘っていた(そもそも RPA はパッケージ管理アプリの名前でなく機構の名前だ)。ロールバック機能はそのクライアントサイドへの表れ。Debian のような生態系を構築したかったらしい。RPA のヴィジョンを達成するには DebianFreeBSD のように人的リソースを必要とするのがちょっと壮大すぎた。RubyGems の拙速を尊ぶ姿勢に負けた感あり。
こっちは勝ち負け以前に目的が違うよという指摘もあろうが(当人達もそう言っている)、それは建前の話だろう。カバーする範囲が被ってるのは事実で、リソースも有限なので RPA の失速の原因が RubyGems の興隆にあることは否めない。


と言いつつ、それよりも Rails が gem での供給をデフォルトにしたという政治的な原因の方が大きかったんだよね。初期の頃からサイトを訪れている人なら知っているだろうが、昔は Rail サイトのトップページには gem と tar ボールと rpa パッケージへのリンクが並んでいた。RPA も負けずに Rails の頻繁なリリースについていければまだ勝負はついていなかったかもと思う。Mauricio がヨーロッパ在住で密なコミュニケーションが取れなかったのも敗因かなぁ。英語は苦手と言ってたし(けど私の英語よりよっぽどマシ。彼はドイツ語(在住)、フランス語(一番得意)、スペイン語(ネイティヴ)、英語(ruby-talk もしっかり見てる)が読み書きできる、短文なら日本語もイケル。あやかりたい)。


Mauricio はまだ諦めていない。gem も包括したシステムを作ると言っていた。標準添付で RubyGems が入る(という噂もあったんだが1.8.4は付いてないな?)とマズそうだ。


って、昔書いたような気がするが、どうだったか。もうちょっと詰めて、るびまの連載で書くべきだっただろうか。というか、元はハテナオヤメソッド風味で書く予定だったのだが思いっきり話が逸れただけ〜。