[thechat] Stiffed :(
David Kaufman
david at gigawatt.com
Tue Mar 11 22:54:03 CDT 2008
Hi Fred,
"Fred Jones" <fredthejonester at gmail.com> wrote:
> They seemed like such a nice, normal couple--I felt comfortable trusting
> them and just working, based on their understanding of my hourly rate.
> [...] the job, 90% done and my bill is about $2000 and suddenly,
> cyber-silence. [...] They changed all the passwords (FTP,
> control panel, CMS) and no email no nothing. I don't know what happened.
>
> :(>> Sad Fred
Don't forget that it's important not to misinterpret silence from
cyberspace! It's always *possible* that some urgent matters "in real
life" prevent them from answering emails, paying bills, and so forth.
If this is the case, and in their mind they've merely put you "on hold"
for a while, you don't want to be the one who rushed to flip the
previously good working relationship into adversarial or litigious one.
Trust your first instincts and your judgment of them as nice, normal
people and you might be able imagine a number of situations that might
cause people to "go dark" as they have, which may have nothing
whatsoever to do you with you or the work. Email them and ask what is
wrong, if they need some time to deal with other matters, and if there's
anything you can do to help. Why? Because how you respond initially,
before you have all the facts, says more about you and your personal
(as well as business) ethics than anything else. If some personal, or
medical, or even merely financial disaster has just befallen them, how
you respond determines whether you'll ever get paid, and could very well
salvage the deal.
Of course, their changing the passwords does seem to *imply* that
they've decided to take your work and do not intend to pay you for your
time, but you want to, in your communications, be sure to (at least
appear to) give them the benefit of the doubt. You never know. Your
patience, and continued positive attitude might just turn the situation
around.
When doing long-distance freelance work, especially with small
businesses and lone entrepreneurs as clients, situations like this are
not uncommon. People say that patience is a virtue. I no longer do
freelance contract work, but at one point I'd used that platitude as my
collections policy. I treated my deadbeat clients with compassion. I
sent them one or two "is everything ok?" emails, a week or two apart,
then maybe once a month I'd follow up with a "just checking in to see if
everything is ok". My patience paid off most of the time.
People are embarrassed when they can't pay their bills. I know this
because there've been times I couldn't pay mine! And what I remember
feeling at the time is that I didn't give a damn about those creditors
who sent me impersonal form letters, followed by mass-produced lawyer
letters and eventually sold my debt to a collection agency. I had a
couple of creditors though, who were patient, and listened, and waited,
and those are the ones who (eventually) got paid.
So you have to look at if this way: the worst-case scenario is you
never get paid. Accept that possibility as the most likely one, up
front, in your own mind. Write off the work. Then you can avoid rubbing
their face in it while genuinely, compassionately seeking to find out
what happened. Persist. Ask if there was anything you could have done
differently, offer to help in any way that you can. Acting as if your
customers really are important to you makes them feel that they are.
Some may never answer. But most eventually will, especially if you had a
personal relationship with them, listened to them, and honestly
attempted to do good work for them -- they know that. If they had a
personal crisis, you may not find out for months. I had one client tell
me his wife had been diagnosed with cancer, they had relocated suddenly
to be closer to family far away, and he realized much later that he'd
lost access to his old ISP email account! I knew he knew that he was
also actively avoiding me, but after hearing that, I was quite glad I
hadn't been suing him during that time. It may have been a lie, but if
it helped him save face, what do I care? We went on to do more business
together, rather than going to court together.
I've had written-off clients never offer an explanation at all, but
sheepishly offer to make installment payments on what they owed me, six
months or a year later! That's okay, right? Doo-doo happens.
And this is why it was so easy for me to be compassionate and not freak
out over what people owed me. I learned from my very first several
projects that there were a lot of people out there trying to con me into
doing free work and, even more intriguing to me, a lot of good paying
would-be clients out there who'd already been burned by other
programmers who insisted on being paid up front, then took their money
and delivered little or nothing. Clowns to the left of me, jokers to the
right -- here I am, stuck in the middle...
I tried to think about this from every angle, feeling that surely there
must be some way to do business with far-away strangers, via email, that
helped me trust them, *and* them to trust me. This is what I settled
on:
For each new client, I'd talk to them and ask questions until I felt I
knew enough to estimate the job. I would then tell them I'd send them
an estimate and a schedule. They then always pressed me to give them a
"ballpark estimate", or kept asking "about how long, days? weeks?" I
thought the job would take. I *always* politely but firmly refused to
name a number, neither the time nor cost, assuring them that I would
send a detailed estimate and schedule within a certain time, usually the
following business day (or two). When they pressured me, I always told
them that if I didn't do it on paper, thoroughly and carefully, that I
would either underestimate it and not in fact be able to deliver as
promised, or overestimate and charge them too much! I *always* followed
through with that estimate. If you don't deliver what you say you will
at *this* stage... forget about it.
By not naming a number you keep them on the edge of their seat. I would
then write a detailed spec, a prose description of each discreet task
required to do the whole job, from design to development, testing and
deployment to the live production system. If they hadn't thought
through their hosting details, I included finding them a web hosting
provider and provisioning these services as line items of my work, with
hourly estimates, and included waiting for these services to be
provisioned in the schedule (back then it could take a day or two to
get a hosting account turned up, and dns configured -- it can still take
a week to move a domain to new registrar)...
I'd think this estimate + schedule out, to the detail that it was really
a spec, and was really worth numerous hours of my time, but I considered
it free work that I did to close a sale. Now, as we all know, sometimes
prospective clients are not serious and are, as they say, "on a fishing
trip". They will take your spec and never call you back, may never
have intended to. They may give the spec to another programmer to
implement (or to their really bright nephew). A certain number will
always do this. There's nothing that can be done about it. You just
have to use your judgment to not waste your time on those who you don't
think are serious.
I would deliver my spec to the prospective client as a long, detailed
and thoughtful email followed by something like this:
Hours: 60
Schedule: 3 weeks
Cost: $4,200.00 USD
A. I can schedule this work to start [tomorrow, next week,
next month, whatever]. I normally request a deposit of
one-third of the total amount of the estimate, to begin
work. My hourly rate is $70, so the deposit required to
get started would be $1,400 USD.
B. After the initial development is complete [or as
development milestones are completed, depending on project
size and # of payments] you will have access to fully test
the system on my development server. Once you are
satisfied that the system is feature-complete and meets all
of your requirements, I'll ask that the second one-third
payment of $1,400 be made, prior to installation of the
system on your live production server.
C. After, and only after, the system is completely and
successfully installed on your site, fully tested and
working to *your* complete satisfaction, would the final
one-third payment be due.
These terms worked well for me. Here, I was already delivering them a
spec worth (theoretically) several hundred dollars of my time and
effort, and am obviously not charging them for that. I'm demonstrating
by the spec itself that I am serious about doing the work, and
(hopefully) also demonstrating that I'm capable of doing the work.
Of course I *am* asking them to make that initial payment there, before
I write a single line of code. And several people who went on to become
clients of mine had started off their very first phone call to me with
something like, "The last programmer I hired insisted on an up-front
payment, and then [insert sad story here, that finishes with: ] ...and I
am *not* making *that* mistake again, so don't even bother asking!".
But that first payment ensures, to me, that *they* are serious. Not
everyone goes for it. That's the nature, and the cost, of sales. You
close some of them, while others walk away.
While it's certainly *possible* that I lost some potentially decent,
paying clients by not doing any work (beyond the spec) without a
deposit, I am 100% certain that I protected myself from 100% of the con
artists who never intended to pay a dime in the *first* place, as well
as all those who were in that grey area of not being serious, not being
able and/or not really ready to pay me for my services. I needed that
protection, and I paid for it with the number of free specs I wrote that
*didn't* lead to a closed sale and a project deposit in hand.
The serious ones went for it, though. They saw that the second and
third payments were crafted to reassure *them*. That I was ready,
willing and able to develop what they asked for. That I was confident
that I could do the job on time, and do it right. They saw that for
their deposit risked, they receive *two* rounds of satisfaction:
guaranteed.
They don't pay another dime till the code is done, and debugged! That
is huge, to everyone who's watched a software development project stall,
be delayed, become mired in feature creep, suffer brain drain and become
a death march ...which means everyone who's ever watched a software
development project or two! :-)
Of course, the fact is not usually lost on the wise ones, that I still
have not delivered the source code to them at this point. Again, it's
a balancing act between risk and trust: I risked my spec, trusting
they would love it and hire me. They risked their deposit, trusting
that I would write some code and not disappear into the ether. Now I
show them I've written their code, and await the second-third of my pay.
There is normally some back and forth at this point. Did I
misunderstand requirement X? Did they envision something different for
how to implement feature Y? It's best of course, *not* to have waited
until the development was "complete" (in your mind) before letting them
peek at the work in progress. In fact it's best to have been listening
very intently to their first impressions and muttered comments, with an
ear for zeroing in on any gaps, from their point of view, between what
they asked for and what you built. Resolving these issues earlier on is
usually far easier, and less stressful than rewriting parts of the code,
long after you'd thought they were done.
If features creep and requirements change during this phase, to the
point where your spec needs rewriting and your estimate and schedule
grow significantly (they never seem to shrink!) then you might have some
renegotiating to do. Don't wait till any more of your time and their
money is spent before you tell them this. Explain clearly what has
changed, why, and how much more it going to cost and how much longer
it's going to take. You might have to offer to cancel the project at
this point (with no hard feelings, no further payments owed to you, and
no code owed to them) if you can't reach a new agreement. Dems da
breaks. You might decide to "eat the difference", and push on at
the original price (perhaps with a longer schedule). That's up to you.
Whatever you do, hopefully you will use the situation to learn to
better identify these types of sticking-points early on, raising the
thorny questions before (or while) writing your spec, as you gain
experience in the art of client-herding.
The last payment is the clincher. It's the closer. It removes their
final objections. It tips the scales from the saying "maybe" to them
getting out a pen, writing a deposit check and sending it out,
overnight express.
They don't have to pay you the last payment, the not-insignificant
third-third of the total, until *after* you have: 1. written the code
and debugged it, B. delivered it to them, and C. installed and tested it
in production, on their site, and watched it go live. This tells them
that you are very confident that they will be very happy with your work,
that you are so confident, in fact, that you're willing to bet $1,400 on
it. No one ever stiffed me for the last payment.
Some stalled a while, expecting to find bugs days, weeks after the
application went live. There are always bugs. And I always fixed them
for free (whether or not I'd received the last payment yet), so long as
they are reported within a reasonable amount of time (90 days is a good
warrantee period, if anyone insists on one).
Before I settled on this system I had some clients disappear, after I
delivered their code to them, and never pay me. I never sued anyone --
it's just almost never worth it. I also had a couple pay me deposits
and then decide not to go forward, either when (their own) feature creep
made the project too expensive, or when external circumstances made them
change their plans. But interestingly I never got stiffed for the last
payment. Everyone who played the game through round two was a satisfied
customer in the end, most of them becoming one or both of the two best
kind of customers there are: repeat customers and customers who
recommend new customers to you.
As far as collections, since I always got a deposit, I never had to
stress too much when clients "went dark". I just waited, and some
resurfaced, others not. Sometimes with sob stories, sometimes not. I
never felt the need to "chase anyone down" for second-payments that I
never got. Sometimes they came back and picked up where they left off
but that choice was always up to them.
So my advise is: protect yourself first and then, in all things, try to
treat your customers the way you would want to be treated.
Sad cases like this one can end up being The Best Things That Ever
Happened To You, professionally, if you use them to figure out what
really went awry, decide what you *could* have done differently, and do
learn to *do* things differently in the future!
-dave (now wondering if this shoulda been an article submission)
More information about the thechat
mailing list