I like dreamhost a lot and have an account with them, but deploying rails was a challenge so I decided on something easier. I'm competent enough to use ssh and command line to do basic things, but beyond that I have some trouble. After doing research to find a better hosting option I went with Webbynode.
I use it for my rails based startup padseeker.com. It makes pushing code via git as easy as it is for heroku, but it is more flexible, i.e. allows file uploads w/o using s3, you can use mysql or postgres (heroku only allows postgres without another service). It's been overall a good experience, very little down time. Heroku might be better for certain things, but webbynode has been perfect for my needs.
It's not free though - lowest plan is $15 per month. I know digital ocean starts as low as $5 per month. Dotcloud and Appfog are either free or cheap and seem comparable.
With a Virtual Private Server (VPS) you are your own "master and commander." You're root.
I use linode for my VPS. slicehost is similar. They both offer decent publicly available documentation/tutorials, so if you can't find an answer or path in "your" providers docs, you can hop over to the other guy's.
With shared hosting you're a user on their (possibly virtual) server, with permission to do things. You're not root.
pair.com offers shared hosting, I used to use them, very stable and sober company.
I know a lot of people use http://www.bluehost.com/. I don't know if they're more VPS or more shared host. I know a lot of people use it to host actual businesses; a lot of those sites use Wordpress and various shopping cart and payment solutions.
Webfaction is not the typical shared hosting. I got sold on this "We give you a full linux shell account with all the tools you need to compile anything you like, so our service is almost as flexible as a VPS. One big advantage of our shared hosting service is that we maintain the server and keep it secure for you. Also, the memory that we provide in our plans is the actual memory that is available to your application. With a VPS you also have to run the operating system, web server, database server etc in your allocated memory."
Personally I bundle this with Cloudflare and it's been flawless!
Caveat: No CPanel! I find their control panel very intuitive to handle and uncluttered but if CPanel is what you're looking for then you're better off elsewhere
Just throwing this out there, my startup tracks which web hosting companies people like the most based on opinions shared in social media: http://reviewsignal.com/webhosting/compare/
I am personally on liquidweb and aws. free tier on aws is great for testing stuff not on my local machines.
http://webbynode.com
I use it for my rails based startup padseeker.com. It makes pushing code via git as easy as it is for heroku, but it is more flexible, i.e. allows file uploads w/o using s3, you can use mysql or postgres (heroku only allows postgres without another service). It's been overall a good experience, very little down time. Heroku might be better for certain things, but webbynode has been perfect for my needs.
It's not free though - lowest plan is $15 per month. I know digital ocean starts as low as $5 per month. Dotcloud and Appfog are either free or cheap and seem comparable.