Never, under any circumstances, should a client be a family member or a close friend.
Otherwise, there is a high probability that the project could become infected with feature creep in addition to host of other problems including divorce, family counciling, etc.
>
Never, ever utter the words "easy" or "simple" in front of a client. Any setback at all after using these words will brand you as an idiot. >
Always dress better than they do. If they wear t-shirts, wear sport shirts. If they wear open-necked shirts, wear a tie. They are paying you far more than they pay employees: Look worth it. >
Lock the scope of the assignment in writing before beginning the project. Require change orders for any, and I mean ANY, deviation. >
Have one less drink than they do. Inevitably, you will be asked to socialize with a client. One who drinks. Let HE or SHE become the tipsy one. Just don't be obvious about it. >
Never badmouth other's code in front of the client. Go home and kick your dog if you have to. >
Do not lower your standard rate without a very good reason and never for long periods of time. If you devalue yourself easily, others will devalue your worth and you'll have a hard time negotiating at your standard rate in the future. >
Make all meetings on time. No matter how good a product you produce, clients hate it when you cancel or are late for face-to-case meetings. >
Never use personal excuses as a reason for missing a milestone. >
Never use professional reasons having to do with another project or client for missing a milestone. >
Never make promises based on beta features or unreleased products.