Sorry, late to the conversation, I just joined.
The first thing is I have to put in my $0.02 against Site5. I know that they have many happy customers, and in fact one of my clients is hosted there quite happily. However, the company I work for has been trying out a ton of different shared hosts. I recommended Site5 to my boss, and it's been a catastrophe. Basically the server we are on is overloaded, and frequently goes down. Every 2 or 3 days at least. Somtimes it doesn't go down, but becomes unresponsive. A lot of people probably don't even notice these problems, but we do because we have 20 clients on there and one of them always notices. Now, shared hosting is always going to have issues like this (traffic spikes, etc), and some Site5 servers don't seem to have much of a problem. But every time it happens they say they are 'working on making sure it won't happen again', and for 4 months there's been no change. The problem is I don't believe they have proper profiling tools for solving usage problems. Dreamhost is waaaaay ahead of Site5 on this. Not only do they keep their database servers separate from the web servers, but if there's a resource utilization problem they automatically know where it's coming from. Without this knowledge a host is unable to really solve these problems which are becoming more and more common every day as sites get more dynamic and open-source web apps become easier to install.
A lot of people on web design forums will say X host has been great! But anecdotes are no way to judge a host. Chances are an individual hosting a few sites won't even notice downtime unless they are working on the sites all the time. Similarly, bad host reviews usually come from people with unreasonable expectations. The infamous "Dreamhost shut me off for CPU usage, no fair, waa waa waahhhhh!" complaint is a perfect example. Yeah they shut you off! If they didn't the other 50 people on the server would have gotten worthless QoS. Try turning off 20 of your WordPress plugins.
When it comes to RoR the whole situation got a lot more complicated because each site requires a minimum 30MB memory footprint (and that's with only one dispatcher!). With PHP sites the only bottleneck is CPU because one Apache instances are shared by all the sites. Since most sites don't get much traffic, this means that shared hosts can put quite a few customers on one machine. With RoR the whole equation changes. The primary metric is how many dispatchers you can host. Hosts like Dreamhost have so far banked on the fact that only a small percentage of users will us RoR, but as the number increases, they face serious memory and will likely have to institute new policies.
So when it comes to RoR hosting I think you really are best served by going VPS or some other situation where you have guaranteed RAM. When it comes to Rails hosting I think you need a host that's intimately familiar with the specific issues involved. Railsmachine is my number one choice right now. I wrote an article about the issues here