I realize you're looking for software such as programs and the like for hosting your own apps. But if I could stray from your post and bring up a minor side point:
If you're doing it (hosting your own server) from home, odds are.. you'll need some sort of dynamic DNS service.
Dynamic DNS is a method, protocol, or
network service that provides the
capability for a networked device,
such as a router or computer system
using the Internet Protocol Suite, to
notify a domain name server to change,
in real time (ad-hoc) the active DNS
configuration of its configured
hostnames, addresses or other
information stored in DNS.
There are a few vendors out there that do Dynamic DNS and most . I've used DynDNS as they offer free Dynamic DNS but use their own array of domain names to choose from. I'm sure there are other providers who may offer better features and what not, but just keep Dynamic DNS in mind as it will make your cloud a little easier to access.