Charging by the job is usually easiest.
Sometimes half before and half after isnt good....
I did a job for someone. the last real job job i did. ithe guy wanted a website. he paid me 1/4 up front to get started opn it. then i shoped him an update he liked hed give me 1/4 then completed hes give the rest. well.. i had my computer at his office just the way it was set up. i was using mostly his eqipment for it. turns out one night when i was like %70-80 done he went into my computer, burned a disk with all the stuff i did already. then fired me. i only got about 1/4 of the money. theres as no way to prove it. but the site he put up after had all the work i had done.
but being the juvinile i am i went into his shop to pick up some of my stuff i left there and disconnected his network... nothing major.. but i pulled enough wires to really sscrew up his computers for a week or so.
i know its dishonest.. but dont piss me off.... the bastard. im glad he went out of business. bad practices like that he deserves it.. i mean.. th eleast he shoudl have done is wait till i was %90 or completed to steal it...