A server is, afterall, a computer. However, I would not recommend hosting your own website for a variety of reasons.
It's often against your ISP's TOS, you definitely need to check there first if you really want to host on your own. It's not uncommon for people to experience charges or have their service cut off for this.
Secondly, you need to know how to administrate a server and use whatever platform you apply - Linux, Windows, Mac, etc. It's not simply a matter of reading a few articles and becoming a server administrator. Running a website using command line is a heck of a lot different than hosting with a control panel and managed service. Security will be a problem and if you're hosting on a network, it may mean more is exposed than just your service. Proceed with extreme caution.
Thirdly, it's not going to be particularly cost effective unless you go open source. Even then, however, your money will be measured in the form of time with the learning curve.
Fourthly, yes, as stated, your speed is going to be slow. Most hosting is done on at least a 10mbps connection. That's a heck of a lot more than cable, DSL, and so on.