Happened to me too, lost about $350 on one client and $1100 on another. The first one was dissatisfied with my work and kept demanding more and more minute changes to reach even the first milestone (essentially a feature creep issue). The second paid initially but I made the mistake of finishing the work on the promise of a final payment which never came. I just ate it.<p>The truth of the matter is that loosing a grand and a half to learn the F U pay me principle is probably pretty cheap. What hurts more is the time I lost (6 weeks to the first client, maybe 2 weeks to the second). I was inexperienced and "just wanted to do a good job" and assumed that my contribution had little value and that the clients knew best.<p>Software development is not a handyman service. Clients can’t just drop someone else into a project and expect it to ever be finished. So a contractor that can actually deliver is rare and his or her skills are in such demand that clients really don’t have the leverage they think they have. I think the myth of the ninja programmer stems from this. An overachieving freelancer that doesn’t charge enough is the holy grail.<p>So in the end, I think the single biggest problem in contracting today is an information deficit on the part of developers. We forget just how much education we’ve acquired, how few of us are being considered for a contract, how much regular employees are getting paid for similar work, etc. Even now I am almost pathologically incapable of setting my rates correctly and charging the appropriate amount for the hours I’ve worked.<p>I’ve been thinking lately that we need a set of guidelines that all developers follow, for the good of the whole. Things like charging half up front, refusing to work for free beyond the hours agreed upon and charging say 75-150% of the going rate for the type of work performed. Freelancing sites like eLance and oDesk should track these at least as much as, say, how often a developer responds to job invites. As it stands, I think we are in a race to the bottom and losing our influence day by day until this mobile bubble implodes by decade’s end.<p>In other words, this nonpayment problem shouldn’t have happened in the first place, because our industry has serious issues that older professions have done a better job of addressing.