Since this site is really just my personal blog, it requires little in the way of resources as compared to any "real" site. Drupal caches most content for anonymous users, and I am generally the only person logged into the site and I'm not on it very often. As a result I've always gone for the cheapest hosting that seemed it would do the job at the time I was looking. This has sometimes had mixed results, but these days it's mostly fairly simple to change hosting, and this is what I've just done.
What I have been using is Justhost, which offers very good introductory rates but very mediocre yearly rates. They do let you use "unlimited" disk space and bandwidth, which means you're not going to nail a quota if you need to use more than a gigabyte or whatever on short notice. But I really don't need to spend a hundred dollars a year hosting a vanity site. When I signed up I paid about sixty, which was OK given that included hosting and registration. But now they want more, and it's just not worth spending the money. On top of that, the last time I contacted them for support they gave me a punitive and incompetent response, asking me to send them my personal credentials via email even though I had opened the ticket from their website, and not email. They weren't asking me for anything I hadn't already proven I had, and yet they were asking me to give them information they should never ask me to give them unencrypted. Apparently they use .htaccess files to control your configuration, which is total amateur hour. When you twiddle the .htaccess file they reset the php config, because that's where the php version is set. Yeah.
My web content was originally hosted on circus.com, which at the time was a Compaq 486 running Caldera Network Desktop in a geek house near downtown Santa Cruz back in the nineties. Unfortunately, Caldera didn't keep up with security patches, and we got owned through Apache. I was the only one with a backup of anything, and it wasn't even a backup; I just had my webpages checked into RCS. It was a nuisance hacking that replaced all HTML files in our web directory. I just checked them out again and I was off and running, but my housemates weren't so lucky.
The first time I bought hosting I got it from VR Hosted, mostly because they were Linux-based and sponsored Gentoo Linux, which I was using at the time. But their service was never very good, with long times to respond to trouble tickets. They also failed to keep up with prevailing pricing. Then I had a brief stint with GoDaddy, which of course turned out to be a terrible mistake. I had to pay a renewal fee just to transfer away my domain, to Justhost. Justhost, in turn, failed to send me EPP when I tried to transfer to Namecheap. I had to call them on the phone and get them to send it to me. It turns out that if you use the privacy guard service it doesn't work, because they send the EPP to /dev/null instead of sending it to the email address on file that you give them when you sign up for privacy guard. Where I come from, we call this incomptence. The tech who spoke to me then told me that the people in the transfer department explained all this to him about why it didn't work, rather than just giving him the code or manually sending it. A class act.
On the premise that no support is better than lousy support, I jumped to Nosupportlinuxhosting, which has the massive benefit of only costing $1/mo. You only have to spend twelve bucks at a time. They don't handle your registration, but Namecheap will do that for you for just a few bucks. (And they'll give me a kickback if you get there from the mini-banner at the bottom of the page...) People on Slashdot say that they have no problem transferring away from Namecheap, and they are cheap, so I chose them. I am happier with their interface than I ever was with GoDaddy's, that's for sure.