Pick a client that seems trustworthy or comes via a friend recommendation. Ask for 1/4 or 1/2 the money up front. Don't worry about copyright, and often clients themselves will have standard contracts they use.
If you are concerned with the complexity, start out using a platform like oDesk which will take care of much of the payment and legal risk. Be sure to bill hourly not fixed amount.
I've written and signed many contracts, but ultimately for casual contracting it's most important to just find people you trust to work for/with.
Adding to this, try not to reinvent the wheel. If you're trying to code something which is already there and open-sourced, go for it; include it in the project and work on it.
Ask for 1/2 of the fixed amount / working hours upfront. This will ensure that your client is actually interested and won't easily dump the project.
If you are concerned with the complexity, start out using a platform like oDesk which will take care of much of the payment and legal risk. Be sure to bill hourly not fixed amount.
I've written and signed many contracts, but ultimately for casual contracting it's most important to just find people you trust to work for/with.