I personally run my own server. It's free, fast and I can make hardware changes as I please.
You can use any computer to run the server. Only downside is, if you have a dynamic IP it's not possible to use a regular domain name. (www.google.com)
But I can install scripts, use any service I want and can use it as a media hub for my house.
It's not for the feint of heart. It requires quite a bit of knowledge and time to set up. Since it yours, there's no admin to contact, your it.
http://amphosted.com/ is an excellent host. Cheap, reliable. I've considered changing to a hosted site rather then a server, just for convenience.