Sorry to intervene in this conversation, just wanted to add my $.02 🙂
I might start out as a sole proprietorship; from what I understand, it's a lot simpler and less expensive, but the risk is that if you go under, they (the government, debtors, whomever) can come after your personal finances for payment. Whereas a LLC is literally limited in liability- so they can't take your house away from you.
You also want to be meticulous about keeping track of your business expenses, etc. The IRS loves to come after the little guy, and there are some red flags they have for picking you out for an audit. One example is if you try to write off the majority of your house payment for "business expense" - you have to measure out the square footage of your office space and apply that accordingly. I'd recommend getting some books on setting up your business from home. You will have to keep track of depreciation on your computer, fax machine- and any other office machinery you use. It's not as simple as you might think but there are some good books out there to help you.
You will also need to keep track of your income with a GREAT finance software program; not just on a napkin somewhere 🙂 You will have to report everything at the end of the year, so you want to make it as easy on yourself as possible. Your time will literally be money, so you want to be as efficient with the overhead tasks as possible (i.e., the tasks that don't directly bring in income).
Regarding obtaining new business, this can be the hardest thing for programmers as it entails some sort of marketing/sales skills. Most of us cringe at this thought, but if you can't sell yourself and your skills then you won't get very far. If you know a lot of people in the business, you might try letting them know you're now a freelancer, and if their companies are overloaded, you can offer your services as a subcontractor. If you haven't done so, you will also want to join local programming and business groups (such as the Chamber of Commerce, Better Business Bureau, etc) for networking purposes (and I'm talking about the people type networking ) 🙂 .
It's also a good idea to figure out what your niche will be- what makes you different than all the other programmers turned consultants/contractors out there who are doing the same thing you are? Maybe you tailor toward small businesses in your area, or one industry in particular. You have to find something that defines you and run with it.
As far as fees go, I wholeheartedly agree with adavis- a lot will depend on your geography and your clients. And while I'm a firm believer in "you get what you pay for" - remember that starting out, you can't afford to be too pricey. You have much competition and litttle clients under your belt, so until you can really prove yourself on your own, you can't be unreasonable in demanding a large fee just because you have bills to pay. Especially if your clients are smaller businesses - they won't be able to afford to pay a lot, but they can be great clients. My personal feeling is that the more efficient you are, the quicker you can get projects done and the more reasonable your costs will be.
One more thing to consider before venturing out- when you have your own business, remember you are responsible for EVERYTHING in that business. This means that if copies need to be made, it's your hiney that drives to Kinko's to make them. If the phone rings, you're the one that has to answer it. If a customer has a problem with their site, or doesn't understand something, you have to act as the customer service representative and handle inquiries diplomatically. I know this is no-brainer stuff, but sometimes programmers think their time is more valuable than doing something menial like handling customer questions or making copies... but if you don't do it, there is no one else around to.
Working at home can be great- especially if you have a family around, but it can also be tricky. The key is balance- and keeping a separate area that is just for work. It takes discipline to go to "work" (and if you're like me, to stop "work") and your family has to understand that just because you're physically there, you might not be able to be interrupted. But it's really nice to be able to set your own hours, and the commute can't be beat for sure 🙂.
Good luck to you- hope the above helps a little, anyway.
-Elizabeth