you can easily start it on a free hosting anywhere. Until you won't get much traffic, you won't get any problem, and if traffic starts to rise, you will have enough money to buy hosting for yourself.
The most important part is that you should always make backups from your site/database... the best thing you can do if you somehow (maybe with some scripts) synchronize your site to an another free host... so if your site gets deleted, the only thing you have to do is point your domain to the new host and wait for it to propogate.
I succesfully started my site this way in the past. Also it is cheaper this way, couse you won't loose any money if your site sucks and won't get the attention/traffic.
Although i think you should buy at least a .info domain.