There are a lot of project management tools that are pretty much glorified web boards, and they're pretty popular. Basecamp for one, PBWiki for another.
There are benefits to having a shared archive of communication, and the good systems allow for all sorts of stuff like bug tracking and file repositories. I know I use them all the time, and am glad to have them.
Obviously if it's a one-time message you should keep it as simple as possible. Straw men are fun, but even yours isn't actually all that different from my day to day work, except we don't do it retarded.
I can't believe I'm seeing this argument again. Here. Now. In 2008.
Maybe I'll fire up IE6 to really complete the feeling I'm getting.
The counter arguments are everywhere, and this discussion has been dead for years now, so I won't bother repeating them. I sincerely hope you're not charging anyone for HTML.
Exactly what he said.
I agree to a large extent but it depends a lot on the client. I say this as a fulltime independent web developer.
I once spent a month in negotiations with a client over a contract, until finally I walked away. The only thing that would have been acceptable to them was essentially a non-binding resolution governed by the state of Utah, their corporate home, suffice it to say I am not in Utah and it would have made even an effective contract impossible for me to enforce because I don't have the time or money to fly somewhere to fight over payment for one gig. A few months later I heard that they had stiffed the person they eventually found to do the job, and now more than a year later they still haven't made any progress but have lost the benefit of any referrals.
Point is, a contract wouldn't have saved me there, and it certainly burned some goodwill with the client. But it also showed me what kind of people they were, and the struggle ended up steering me away from a bad situation.
In general I agree with everything else said. Keep very detailed accounts of your hours and how you use them. Treat your good clients like gold - and I mean that. Send them Christmas cards, with handwritten notes - nothing sappy or long, but let them know you're a human being and you appreciate their faith in your work. If you love them, they will love you back. Always get money up front (this depends on the client and the project, but it's generally within 25%-40% for me).
I have made a gut call and not even mentioned a contract with a few clients. Just remember that to a stand-up client who intends to pay you money for the work you do, a contract shouldn't be a scary thing. If it is, that means you're presenting it wrong, it's written poorly, or something about them isn't aboveboard. Maybe they're just trying to keep the government out of their accounting, or maybe they want to be able to walk halfway through if they get a change of heart without having to pay anything. Whatever it is, it's important you find out before it hurts you.
Ideally, I have 2-3 major projects going at once and a handful of smaller ones with less demanding timelines, and almost all of my business comes from a fairly small circle (20 people or so) who pass around referrals. I think maybe the biggest thing I haven't seen mentioned is that us independent web developers and designers and coders and whatever are not competitors - even in bad economic times there's plenty of work out there for us, if anything it's the expensive agencies that will lose contracts to flexible independents. Cherish your network of trusted associates, it's through them that you build a reputation and grow your business. And the next time you've been offered some work that doesn't fit into your schedule, pay it forward and refer someone else.
With good clients and bad, the most important thing is getting a feel for them as people. Show respect, get respect. Do a good job, get paid for it. Pretty simple, really.
All the evidence concerning the universe has not yet been collected, so there's still hope.