You can host it yourself, but if you have a dynamic IP address, you're site will go down anytime your IP changes until you can get it updated.
I hosted my own for a while and got sick of dealing with the IP, so I use a company called cyberland-usa.com ...
At $2.95 a month, it is as cheap as you're gonna find hosting. It includes 150mb storage, 3gb/month transfer, and unlimited email addresses. And if you pay annualy, they include the domain name registration...
I can honestly say in the year and a half that I've been using them, they've had about 1 hour of downtime that I know of. And their admins are quick to respond to emails...