1). Work with better clients. You can have invoice collection problems at $50k, too, but they're much less likely than at $500 and you have much better options for... escalation methods at that point.
2). If you're not a bank, stop taking on so much credit risk. Businesses can deal with substantially sterner payment terms than you'd think to offer. If your clients balk, see #1. (Thomas has some suggestions here, too, many of which reduce to "Work for Thomas' clients and charge enough that dealing with their purchasing processes is worth your headaches rather than chasing deadbeats for Snickers money.")
3). Showing up on iamachumpconsultant.com will not enhance your professional reputation, bill rate, or client pool.
But something in my reptilian brain really still likes this. Let me tell you why...
You say "Work with better clients." Working with better clients means avoiding the bad ones. Avoiding the bad ones means being able to identify them. Being able to identify them means being warned.
It's almost like seeing an obstacle in the highway and wanting to warn others going in the opposite direction. But how do you do that? I once had the idea of putting a giant tattoo "Avoid me." on my bad clients' foreheads.
The biggest problem with bad clients isn't that they took you, it's that they never go away; they just keep popping up over and over, only to take advantage of others.
One former client of mine is the perfect example. He never paid his bills, he was extremely abusive, he was often very unethical, and would do anything to make an extra buck. He would pop up all over the country with a different name, starting the cycle all over again. I recently noticed he just got out of jail with a brand new name and web site. If only I could find a righteous way to warn others, "Run the other way!"
Memo to young Rails developers: "I have an idea for a website. If you build v1.0 I'll pay you a whole thousand dollars and you might get equity if it works very well." has never had a happy ending. (Slight overstatement there, but it won't weigh on my conscience.)
Often it's the client himself who chases me up to make the payment. That's a very good sign.
This is an amusing and dramatic example of why, while it's all good fun for one's reptilian brain, the tactic of trying to call out problem customers by name isn't going to help very much: People with negative reputations have nothing much to lose by starting over.
Whereas those with positive reputations do have something to lose. And the problem with throwing mud is that some of the mud inevitably gets on the thrower.
This is why the effective way to warn people about problem customers is in secret, generally over drinks.
Same idea as this, but funnier and more about learning to laugh about the stupidities of some clients and moving on.
I would also add that, when you charge a higher rate, you also can justify higher initial deposits and milestone payments along the way. This gives your client more "Skin in the game" which makes them more likely to honor the contract terms so that they can receive the final deliverable.
When I first started doing freelance development I made a practice of undercutting everyone else to get the gigs. This did earn me a fair supplemental income, but it was not a business model as clients at this level (<$1k) tend to have very little vendor loyalty and will just move on to the next cheap provider when you eventually try to raise your rates. Since restricting myself to projects of $5k or above things have gone much smoother and I'm alot happier.
So I might be substantially more wary about working for someone who's paying out-of-pocket than I would for a real customer.
Where are you getting that from? From my extensive experience with both large and small transactions I don't find that to be the case. Assuming the profit potential is the same would you rather have the risk of 1 50,000 customer or 100 $500 customers? (Let's assume the $50,000 customer is reselling your product at the same margins).
"If you're not a bank, stop taking on so much credit risk. Businesses can deal with substantially sterner payment terms than you'd think to offer"
It's a risk that needs to be evaluated. Be to easy on credit you loose money. To strict you will loose business. Really no different than security policies or spam filters.
It also depends on your margin. If you have a large margin on your product you can afford to take a loss much easier then if you are selling Plasma TV's with very small markup.
Currently one of the products we sell is less than $50 and our cost is less than $10. If someone wants to mail a check, no problem. (Although of course we try and get payment by credit card.) We are making (say) $40 so if we don't get the payment no big deal. Not sure I would say the same if the numbers were 100 times larger though.
As one of my mentors said about taking people to court "How much of your time / resources would it take to sue them? How much would you gain? How long would it take you to generate that much rev?" When I realized that it took less time to generate the rev than to sue I decided to drop the matter and focus on finding better clients.
Just like corporations can ruin consumers' credit ratings almost without recourse, the concept here is to ruin these delinquent payer's reputation via a registry everyone can check.
Before I did this, I had tons of clients that just wouldn't pay me or lie and tell me the "check is in the mail"..when it really wasn't.
When I was young and naive 6+ years ago, it put me out of business and I had to get a job.
I work with a difficult dev/designer for a couple of months trying to bootstap a product. In the end it's not working, we agree to go our own ways, but I keep the name of the product. For what ever reason they get shitty with me, and a month or two down the line when I'm working with someone else they post about me on 'iwasntpaid' - not just once, loads of times - they know a lot about me so they can make it look like a string of unhappy dev/designers are annoyed and I can never be sure who it was posting this.
Would the site owner let me/help me remove these? Will they be asking for proof? If not I can see them getting in some interesting legal battles pretty quickly.
I think something like: http://youthoughtwewouldntnotice.com/blog3/ is great - but it is totally open and honest - you state who you are and why you feel you've been ripped off.
This anonymous sniping isn't going to help anyone. If someone rips you off write a blog post about it, tell people you work with, or better yet talk to the offending party in person.
This feels like bitching-meets-4chan. At least http://www.grouphug.us tries to keep both sides anonymous.
http://sitecheck.sucuri.net/results/youthoughtwewouldntnotic...
Edit: Some sort of IE7 hack/virus/attack? (sorry can't reply to your message for some reason)
http://i.imgur.com/r8u2I.png - screenshot is with adblock turned on, but I also tried it with it turned off and didn't get it.
The design of the site in question was good, no doubt, but it was also riddled with a stolen Neutraface2 font face and the HTML didn't validate. And there was no RoR backend; the whole site was hosted on a GoDaddy shared server.
From my understanding of the dispute, the site was delivered many months late, and then the designer doubled his price. When Storm refused to pay double for late work, the designer linked in an overlay from a file hosted on Dropbox that announced 'This site was stolen'. That was the 'kill switch'. The designer also made a few blog posts and tweets bragging about his 'kill switch', which he later took down.
This lead to a panicked call from Storm to me to move the site over to my servers until the dispute could be resolved. A few days after that, I received a very aggressive e-mail from the designer threatening to sue me for stealing his work.
What iwasntpaid.com needs is links to conflict resolution and contract negotiation books, which are important freelancing skills that the designer sorely lacked. You never introduce yourself to a fellow freelance web programmer with "Hi, my name's Jeff, and I'm going to sue you over this dispute I have with another party".
Given the designer's history of posting complaints about how he's been screwed out of $500 and then taking them down once he realizes that it might be bad for his reputation, I wouldn't be surprised of that post about Storm gets taken down as well.
Also, from my web-stalking around this issue, I wouldn't be surprised if the hours that the designer put in trying to smear Storm across the internets, billed at the designer's normal rate, exceeded the payment he was expecting from Storm.
tl;dr: Settle on a rate before you start doing work, and if it's not a flat rate, keep the client up to date with projections of the final bill.
PS Carlos 'Storm' Martinez and his team at Creative Mixing are amazing, talented people and I would recommend them to anyone looking for post-sound work. It saddens me to see the post on iwasntpaid.com
But in my experience doing web work for Storm over the past five years, I have never had any payment disputes. We also have an ongoing relationship because he does post-sound work for my films. It's a shame to see him smeared in a public forum because I don't think he deserves it.
Stupid as it is to go down the publicly naming route, what has the HTML validation status of the code got to do with anything? This is a measurement that only means something to guys who measure things - it has nothing to do with business generated, traffic, or the user experience of a website (the true yardsticks of good work).
We need to adhere to standards, dammit!
"Given the designer's history of posting complaints about how he's been screwed out of $500 and then taking them down once he realizes that it might be bad for his reputation ..."
In my heart of hearts, I was hoping the designer was just blowing off steam. I've been in the same situation before, where I think I'm right about a payment and the client disagrees, and it sucks, and I learned from the experience. I certainly didn't expect the designer to still be sore over it six months later, even after he claims he won the court case.
I certainly do not blame Mr. Gillentine for the numerous errors he made in the above post since most of this was just regurgitated from what he heard from Mr. Martinez, but unfortunately, almost everything he said was wrong. I have very clear documented evidence that this is so, which is why I won the court case. Let's take it point by point.
- The font was licensed
- It was written in html5, cross-browser tested, and worked perfectly
- Mr. Martinez's previous site was hosted on a godaddy shared server, and that site was made by Mr. Gillentine. Since I know godaddy hosting is horrible, I switched his hosting to FatCow before putting up the site. So not only was this inaccurate, but Mr. Gillentine is the culprit for his own criticism.
- The site was not delivered late, and my price wasn't doubled. I charged hourly, and made the rate clear in the contract that Mr. Martinez signed. I have documents in which he says that his time constraints are "asap", and that he doesn't have budget constraints. No final price was ever discussed, I just recorded my hours worked, put them on an invoice, and sent it.
- What Mr. Gillentine did was attempt to steal the site for Mr. Martinez by removing the stolen notice and re-hosting it on his own servers. Whenever you find yourself ripping someone's html and hosting it on your own website (much like Curebit did to 37signals), you must know that you are clearly doing something wrong. And yes, if you find someone trying to steal your work, you do typically send them an aggressive note telling them to take it down. And it worked.
- There was a rails back end, it was hosted elsewhere because (as I assume most people here know) you need a different server setup to handle a rails environment. The other host was mapped to a subdomain on the site.
- I never took down the site. In fact, I didn't even have access to the site, since Mr. Martinez tried to change all his hosting passwords and steal the site from me (that was why I triggered the stolen notice). Mr. Martinez took his own site down and parked his domain because it was better than facing the embarrassment of having a huge notice over your site telling everyone that you are a thief. I would have loved to have that notice stay up for longer.
- I have no "history of posting complaints about how I have been screwed out of $500 and then taking them down". This is 100% baseless, and makes no sense, I don't even know where he came up with this. Everything I post has and will stay up until I receive payment.
- I have spent, by my estimates, about 30 minutes in total telling this story over the web. In fact, I would assume that Mr. Gillentine's time "web-stalking" the issue far exceeded my time spreading the word about it. The bulk of my time spent on damages from this was spent waiting around in the courthouse, which takes forever.
And for the person who asked below, I did win the court case, I have the court order saying he has to pay me, and it has been over a month and I still have literally not heard a word from him. I didn't want to have to call the police, and I even reached out to his friends to ask them to put me in contact with him so I didn't have to do this, and they said no. Too bad.
As for how to do that and still make a living: double your rates and require 50% up front. That way you've gotten "full" payment by your current rates if the work goes sour, and a nice bonus when it doesn't.
In our line of work, there are a lot of good clients out there. Life's too short to deal with the bad ones.
The way to handle this is: When you get the judgement against your "client", slap a lean on his properties equal to the amount owed (and throw in your court costs). That inclues his accounts. All you need is an order from the judge. That's it.
That's about all you can do really. Is to go after his assets. Also I'd let the BBB and your local Chamber know. You'd be surprised how effective both these organizations can be.
The software licence-key approach seems somewhat similar, and I've yet to come across legal proceedings "because we didn't pay the guy and our 30-day demo ran out", although I'm sure it could get more complicated for services rather than actual shrinkwrapped products.
On the other hand, you've got the fact that it's laid out in the contract (which is presumed read, rather than just clicked through like a shrinkwrap EULA), and the interesting potential for DMCA/WIPO96'alike anti-circumventation proceedings against clients who refuse to pay and extract the kill-switch code to reactivate.
In that theme, is:
final_invoice_paid = false;
if (!final_invoice_paid) { exit() }
a valid "means to descramble a scrambled work, to decrypt an encrypted work, or otherwise to avoid, bypass, remove, deactivate, or impair a technological measure, without the authority of the copyright owner"?My immediate thought is yes, assuming you're still the copyright holder (and you have a copyright assignment on payment clause in contract), but jurisdictional work-for-hire terms might screw you.
Agreed. Worse, since that information is now public, not only is he liable but the chances he might be counter-sued are markedly increased.
He may technically be in the right, but the law doesn't like vigilante justice.
Yes, don't extend so much credit - lesson learned (the hard way).
I consulted with a number of people debating whether or not to blog about this situation with the person's name. In the end I chose not to at that time, but realized later that this person had another non-payment suit pending which had been filed the day before I started working with him. Had I researched a bit more, I might have found that (but then again, I might not have - you often don't think to do court record searches on potential clients). I ended up not disclosing his name in my blog, but did disclose the location I filed a suit. Anyone wanting to know can go check the public records and find out for themselves. Felt like a decent middle ground, and it's not irrevocably commiting myself to having been the "name and shamer". But without more naming and shaming, this behaviour by some people will continue. I found out later that this guy had also stiffed multiple other parties, who were then coming to me for advice about how to collect. "File a NY lawsuit" was the only answer I had.
Perhaps some public naming and shaming would either correct this person's behaviour or at least ward off others from working with him in the future. one person complaining about no payment can be written off as a crank. 5 devs in a 5 month period, all from different areas, would be harder to dismiss.
Of course, the hard part is keeping all the opinion stuff out of the blog posts around the fact-only one.
But, publicizing on my blog, yeah. In some ways I think the moment's passed. If/when we ever get to court, I'll release the name then, unless there's some gag order (am I being too dramatic?)
If you have legal claims, press charges instead of going down this road.
Edit: the first post, an anonymous accusation (by the site's creator?), disappeared shortly after the site showed up on HN. Also, now suddenly submittals are subject to review (by whom?).
The other thing is that there is an endless supply of bad business deals gone wrong so any individual deal that went south may make the person venting feel better (until they are sued) but they don't contribute to the overall success rate of other folks (except perhaps if they are also dealing with a specific individual or business mentioned).
Contrast this with the Nolopress (www.nolo.com) guys who, by example, provide both tools to successfully navigate what may be new territory and provide suitably anonymized examples which demonstrate the problems that you want to prevent. That is a positive outcome to a bad experience, which is shared learning and signs of things to avoid.
I once worked for someone who refused to pay me for my work and at first I didn't want to sue him because of several BS excuses: - I never sued anyone before. - He seemed like a nice guy. - It was the first time I worked for him but he wasn't a total stranger to me - He had offered me work before so I figured he's someone who's probably going to ask for my services again some time in the future. - I knew he had worked with other people and I never heard them say bad things about the guy. - It wasn't a lot of money.
Turns out this guy did it to everyone I talked to! How did they get paid ? By taking a haircut! One guy didn't take a haircut but he did for a future project. He needed the money.
I'm not here to tell others what they should do but have some self-respect. I sued him and I'm glad I did. He didn't get a discount at all. My lawyer doesn't come cheap, nor do interest payments.
Would I put that guy's name online? No.
Invest your time in a good contract. Ask a percentage upfront. Watch the video.
Government contracts, at least in certain countries here in Euroland, are NOTORIOUS for doing that to small and mid-sized companies. So make sure you always protect your interests, if possible get some money up-front, a part after a significant milestone and the rest upon completion. And ideally work at having a good standing and connection to the instance who can actually sign off on and pay what they owe you.
This can probably be a little more challenging if the account doesn't have sufficient funds in it, but I was happy to see that the system worked. It was a learning process for me (first time I had to do it, and thankfully, knock on wood, the last), but in the end, justice was done and I got paid.
For instance, the entry from Jan 31 says the person worked for _four_ months without being paid! Why would you work for four months straight without a single intermitent payment (or an advance)?
What if the developer did really poor work, missed every deadline by weeks, or the client still says there's work to be done before being paid? All this site shows is angry developers complaining about less-than-ideal clients. For me, that's the kind of talk you have over beers at a bar — you say your piece and then you move on — not something you permanently record into a collection on the web.
Then make a place for that kind of post too. Perhaps even create an index that correlates the two accounts, so that people can see both sides of each story, and weigh the evidence for themselves.
The quote: 'when you hire a lawyer [to handle contracts] you switch from being a design amateur to a design professional' really spoke to me, and it applies equally to programmers.
This is why we pay lawyers: http://www.dvafoto.com/2011/04/fuck-you-pay-me-a-discussion-...
1) We discuss the project with the client stating our hourly rates clearly from the beginning and that we also work in our startup so we won't be a "full-time" developer 2) We then make a clear estimation of time and deliverables for the project + time for testing/debugging/QA + time for calls + time to prepare for publication to the App Store. 3) If they accept we make a clear contract with several payments and deliverables. 4) We ask for 20% to 40% upfront payment and then the rest divided by time and deliverable completion. 5) The last payment is conditioned to App Store approval (in case it is iOS) 6) We only give the source code after the last payment is done 7) We keep sending weekly updates usually via TestFlight (when iOS) and use a Google Doc for any observations that they have 8) We have discovered that some clients also want time spent so we always use toggl as time tracking tool.
I know there are still risks but at least with the upfront payment and deliverable payments you always keep healthy cashflow, the clients feel they are protected and you feel protected too.
This way it's also easier to detect a red flag, in that case you can just stop your development until the payment is done (We actually did that once now and it worked really well).
That and a (very) detailed list of requirement and goals is the best way to go.
I've been doing freelance for quite some time; and did have two clients try to screw me over; however due to the contracts which I setup ahead of time, and having a lawyer send a simple note upon their threat of not paying, quickly remedied this non-paying issue.
1) Cover your ass 2) Setup a reasonable Payment schedule 3) Don't be stupid
That sounds like a bad idea. You either publish submissions through the website, or you don't publish at all. If you manually take the 'feedback' and turn it into a story, you're now the publisher and lose the legal protections of the Communications Decency Act.
Your site was a better idea, legally, before you posted that.
I have found the key to getting paid is milestones. I will not work with someone unless they are willing to pay 50% of the total before I start. This way if they cancel the project you are getting some money for your time. I also make clear to the client they do not need to pay the final 50% until they have the project from me. This way they need to trust me enough to pay the first 50% and I need to trust them that they will pay the final 50%. I've been using this system for the past 12 months and haven't had any problems with clients since.
There is a good thread on Programmers Exchange about charging clients (particularly for freelancers): http://programmers.stackexchange.com/questions/63042/recomme...
I am a co-founder of a nascent third party payments aggregator (TPPA) called PayGuard. We are currently building our Beta, but our system specifically targets such scenarios. And with such capability, our system inherently solves the same issues with material products as well (a market PayPal currently dominates, though it does so extremely unsatisfactorily).
When a client's business is entirely virtual, there's a risk they'll simply change their mailing address or otherwise dodge a judgement, and it can be very difficult to enforce the claim (or at least not economic to do so.) I've seen this happen a number of times in recent years in situations where the amount ranged from $1500 to $10,000.
Why is it your fault? Because as a professional you've not taken the time/money to have a contract created to cover your ass. Contracts exist to protect both parties from each other. And it is your professional duty to know what's in your contract (not a piece meal that you dug up on the internet.) You should be able to explain to your clients what is in your contract, why it's there, and how it benefits them and you.
At the same time I am uneasy with this sort of one-sided public exposure, doesn't feel very professional even if true, and of course without knowing the facts of the matter we don't know whether it is in fact true.
Um.. what? It looks like, judging by the first story on the page, there was a contract which he successfully sued the delinquent client with, and it's just taking forever to collect.
It's not your fault that the judicial system is an inefficient mess and that people lie.
For private freelancers and small/medium jobs suing someone for breach of contract will probably not be a viable option.
The amount of time, effort and money that you need to sue someone and win sometimes is seample not feasible.
Yes, having a contract written by a laywer may work as a deterrent for some clients. But if they don't accept you still need to file a lawsuit.
And there is also the problem that sometimes they simple can't pay. They look and act like they have all the money in the world, but they are actually betting all they have in a website because "making a website is easy and I will make millions with my great idea".
Then even if you win they are simply going bankrupt and you will never see nor your money nor the ones that you spent on lawyers.
The other key deterrent is to keep a handle on your deliverables until the client pays you. That does not mean "kill switch" in an app running on someone else's servers, it means (whenever possible) don't put the deliverables on someone else's servers until they pay you.
If the work depends on their pre-existing code or assets, get the dependencies into your private and properly secured development environment (with a tightly scoped license and NDA to protect the client).
And make sure your contract says that until they pay you, everything you create is your property. You can't claw fees out of a bankrupt client, but you can at least keep exclusive rights to your work.
This is totally untrue, and incorrect. Not only because you can take even a tiny client to small claims court (but without a written contract, forget it) but because contracts are also there to protect YOU from claims by a client against you and your business. If you believe that your business is valuable, or you have any personal assets you'd hate to lose to a lawsuit, you should be using a written contract any time you're doing work for hire as a contractor.
One time, we had a client stiff us for $50,000, contract and all. We delivered a bunch of back-end work and he disappeared. We've never been able to find him.
I am not being pedantic. The difference between the two statements is huge, because the amount of time and money it may take you to prove your case could easily bankrupt a person.
The best way to avoid bad options is knowing where to find a lot of good ones. Then the others have to prove themselves to you, and you can take them or leave them :)
Developers have their identity confirmed (to avoid anonymous business-bashing) and can freely discuss bad (and possibly good) experiences with businesses.
The membership agreement could explain that no emotional or biased comments would be allowed and would encourage some level of explanation of why the client did not pay along with proof in the form of bounced checks, etc...
While self naming probably increases the chance of legal issues I think people should have the choice to say I am the person he did this to to help credibility. And if one have it all documented there should be nothing to be worried about.
We had a discussion about this last weekend at She's Geeky. There are some women's lists that pass around information like, say, managers at {big company} who are known harassers and should be avoided. If we stick to backchannels to share this type of information, we aren't helping, perhaps, the very people (new to a company or a scene) who need it most. If we put the information in public, we suffer the blowback on many fronts; and our vulnerability is greater than that of the accused. I tend to come down on the side of greater transparency, but it may be that the most privileged person still "wins" -- except, as someone pointed out earlier, when 5 developers report similar experiences.
If you can properly document that you should have been paid and haven't, go to court. Posting on a website won't do anything to actually recoup the cost.
If you can't prove that, you're setting yourself up for a libel claim.
So what exactly is the gain of posting there, except giving in to a temporary desire for revenge?
http://en.wikipedia.org/wiki/Section_230_of_the_Communicatio...
Anyone could post libelous statements on the 50+ million blogs and forums out there, yet you've never seen "Warn HN: Monitor your blog comments for libel" -- that's because you can't be treated as the publisher or speaker, so can't be held liable for what was said.
I was eager that the service would let me search for the client names and get reviews on them quickly. And providing a very basic template for each story for the author to enter metadata around the story. I think that would be a much better experience for readers and contributors.
That's what I was expecting -- I tried to search for "Martinez" and "Padbury"; two of the names prominently featured in the front page stories right now, and got a "0 results" page for both terms.