After working as a professional developer for 3 1/2 years making lots of money, the company I was working for went under (don't ask long story), and I was left out in the cold. I had skill, training and lots of experience, but finding work was difficult to say the least. If I had to get a 9 - 5, we were talkin about a massive paycut. So I decided to go off on my own and do my own thing.
I managed to get a link on my first freelance contract, and during that time, ran into an old buddy who's web company just went under and was in the same boat as I was. So we teamed up, his marketing and design skills plus my experience and coding skills and a new company was born.
We have been at it for about 2 years now, and I will tell you, things are tough. We go months without contracts, barely able to keep our head above the water. But then there are the good months when we sometime get 2 or 3 contracts that help keep us afloat.
When working freelance or being self employed, there are 3 tips that I have learned over the past couple of years.
1/ Proper money management. Spend on what you need to survive, put the rest away for the slower times.
2/ Market, market, market. Facebook, fliers, walk store to store, network and meet people. You have to get your name out there somehow. (A website/Facebook page is a good place to start as well)
3/ Get affiliates. Get to know your "competitors" or other people who do similar work as you, and tell them that you are available if they ever need an extra hand, or if too much work comes your way, you might throw something their way. You may need to sacrifice a much needed contract to earn their trust, but once its the right set of people/company, you could definitely increase your chances of getting new work coming your way.
You know, even today we are still struggling but we are trying to grow by gaining affiliates. Its tough to be out there on your own, but as woody said, if its your passion, stick to it. I won't trade my harsh life now for a 9 - 5 paying me lots of money for anything.