You'll hear that "DreamHost sucks" all the time. Keep in mind that they host around 700,000 domains, and operate thousands of servers, so there will be an inevidably huge amount of people complaining. (Of course, people don't usually rant about how great the service is, so that gets lost in the noise.)
The fact that they're a lot more transparent (http://www.dreamhoststatus.com) than a lot of providers is good, but only makes people complain more (The thinking is: 'It went down! I must complain about the service being terrible.' rather than with traditional hosting providers, where you probably weren't aware of the downtime, unless if you personally experienced it.)
My suggestion: if it's not mission-critical, DreamHost is a good, very reasonably priced choice.
For virtual dedicated, I use Slicehost (http://www.slicehost.com) to host The Photo Stream (http://www.thephotostream.com) and they have been excellent for the past two months.
I've been using Dreamhost for a while now (to host my blog) and it has been pretty much okay but I wouldn't host any critical stuff on it.
WebFaction (http://www.webfaction.com) and Slicehost (http://www.slicehost.com) are pretty popular lately (although not _that_ cheap). I would probably go with webfaction for a django app.
Also stay away from Joyent.
Depending on your needs, Media Temple might work. And a friend swears by Royalty Hosting although I haven't tried them.
I'm playing with Mosso at the moment and they seem good.