I've found it useful to keep in mind that a contract should optimally treat both parties equally. If a contract gives one party a right, a restriction or a requirement, then it should treat the other party similarly.
One situation I've been in is this: a contract required me to reduce the agreed upon fee if my work times dropped significantly below the estimates, but didn't include a clause on what happens if my work times significantly exceed the estimates.
Another one: A contract's NDA required me to delete all copies of the source from my machines after handing the project off, but still made me liable for defects for a period of time after the contract ended. How would I have proved that the defects were caused by modifications made by the client instead of by me?
Any clause that creates inequality, like in these cases only protecting one party, should be questioned. Remember, the contract existst to protect you, too.
(Sure, sometimes one party will be in a stronger negotiating position. But you still don't need to heel to everything.)
In reply to Re: MJDs Contract Warnings - courtesy of Perlweekly
by Anonymous Monk