タイトル通り、RoR3の開発環境をつくろうとして、いくつかハマったので、学んだことのメモ。
1,Windows上で RoR3環境を作って開発するのは、実質的に無理。
恐ろしくテストに時間がかかる。rakeコマンドを走らせてから、カップ麺を作ってコーヒーを淹れて、それでもテストが終わってなかった。こんなに時間がかかってはTDDどころではない。どうも、いろんなライブラリをrequireするのに時間がかかっているらしい。この問題は既知のものらしく、ググるといろんな人がこの問題について書いている。ちなみに、cygwin版を使うと多少はマシだ(でも、マトモなTDDができるほどじゃない)。遅いのはrequireだけなので、sporkとかautotestを使うと、この問題は多少は改善できる。
2,CygwinやWin32の環境ではコンパイルエラーが生じるライブラリが結構多い。
いや、上手いやり方があるのかもしれないけれど、正直、どうやったらいいのかよく分からない。
3,という訳で、Windowsでの開発は止めとけ。
WindowsでRoR3の環境を作るのは辛い。どうしてもWindowsを使うなら、Win上にVirtualboxとか使ってLinuxを入れてやるといい。僕は、どうしてもWindows上でしか動かないソフトウェアをいくつも使っているので、結局virtualboxのお世話になった。
4,あまりスペックの高くないマシンを使うなら、virtualboxにUbuntu11とかはオススメしない。
新しいUnityは、使いにくいくせに結構重たい。できれば、Mintかdebianを使え。 
5, ruby1.9を使いたいなら、yumとかapt-getで入れるな。rvmを使え。
現在、多くのディストリビューションで、ruby1.8とruby1.9の両方のバイナリやgem環境がインストールできる。もちろん、ruby1.8とruby1.9はかなり違うので、使い分ける必要がある。使い分けるにも、プレフィックスとかをつけてやるとか工夫が必要だ。でも、正直、これは面倒だと思うし、間違いも起こりやすい。僕は、はじめ、apt-getで入れたruby1.8とruby1.9のgemが混ざり合ってゴチャゴチャになってしまい(しかも、混ざっていることにかなりの間気づかなかったため)、ハマった。
6,virtualboxのネットワーク共有は、時々、妙な誤動作をするらしい。
ただし、これは、guest additionをインストールしたら誤動作がなくなるみたいだ。理由は不明。
7,この機会に、ネットワークの管理について、復習しておこう。
今日も、妙な動作を繰り返したため、解決のために結構勉強しました。結局、この妙な動作は、僕の設定の問題だったのですが、まあ、お陰でいろいろ勉強になりました。 

さて、ようやく環境構築に成功しましたので、明日からコーディングです。