Tuesday, March 1, 2011

I was just ripped off!

I just spent three months learning two important lessons for all contractors: make sure there's a mechanism to ensure you're paid for the work you do, and never, ever, work for a friend unless you plan to do it for free.

Let's tell the story. To avoid any risk that this entry might be seen as an attack on anyone, I'm going to call my former friend "Enid", and her company "Enid's Flowers" - she was selling something other than flowers, but there's similarities in terms of people paying a premium for something that you really shouldn't pay a premium on.

Enid came to me in November and explained her situation. Her boss, Dr Moriatti, was a terrible man, terrible, terrible man, who made her sell overpriced roses by lying about them and ripping off customers. All the growers were upset and hated Moriatti Roses Dot Com too. And Enid was being punished by Moriatti to boot - she was paid by commission, and was now on the end of the salesperson list because she'd complained about having to lie to her customers, so she only got two calls a day, and Moriatti would let her complete most of them and then steal her leads and give them to his favourites.

Enid wanted out and reckoned she could take Moriatti's growers with her. She had teamed up with a "friend", Jason, although she didn't describe him in flattering terms either, and was going to start her own flower delivery company. All she had to do was set up the website and start getting the sales in. From me, she wanted to know what it would take to build the website, which would include a CRM and other components.

Now, quite honestly, I had little experience of this, did my homework, and came to conclusion that it would take me a long time, much longer than she wanted. Moreover, Enid claimed, Jason knew a guy who could get it done for about a third of the price I'd charge if I were charging her my "Friend's rate". I put together a spec for her, told her to run it by the guy Jason knows, said (because I didn't) I had no idea how they were able to charge such a low price but speculated they might already have something very similar.

Enid said no, she wanted to go with me, because she "knew" me, and didn't know Jason's friend, and anyway she didn't like Jason's friend, and Jason didn't know the business, and she did, and she wanted to own the software herself rather than the have it owned by the business in case Jason pulled out, and...

Stop. Right. There.

There's already a bunch of red flags, with hindsight. Let's look at them:
  1. Enid claims Moriatti is a terrible man, and is proposing doing this because she's going to get all of his business. Clearly "revenge" is an element in this. Now most of us have had fantasies of revenge against our less savoury employers from time to time, but we don't generally follow through because we want to do a good job, and we'd prefer to just change jobs to somewhere that respects us. Now, this is more an amber flag than a red one, a big "Caution" if you will, but...
  2. Enid strongly implies her business partner isn't qualified and apparently she doesn't trust the relationship enough to see it through. So why is she in business with him?
  3. There's a mysterious other party with a very low bid. But she chooses me instead. Why would she go with me? She implies she hasn't actually provided the spec to the person involved.
  4. All of this, and Enid's not involving the other business partner in her decision making? At the very least, wouldn't the guy want to talk to me?
Now, if she wasn't a friend, those red flags should have been enough for me to build a profile and, well, go in another direction. Enid doesn't seem to work with other people, what guarantees are there she'll follow through with me? But Enid was a friend, so I did what I could and glossed over the warning signals.

After much research I finally gave Enid an official estimate and a time scale which would see completion at the beginning of January. A few weeks in, and it became clear that due to other factors, this was wildly optimistic, so again I made it clear to Enid that the project was likely to overrun, but that I could deliver minimum functionality (not everything, but enough to ensure the site was up and running and the growers could list flowers and she'd be able to sell her flowers) by end of January. I told her at that point that given the delay, I wouldn't be at all offended if she wanted to go with someone else, and encouraged her to look into it.

She didn't. End of January was fine, as long as she'd be up and running well before Valentine's day.

And mid January, I had a site up with the minimum functionality agreed upon in place. Enid sent messages to my wife, complaining that I didn't know what I was doing and that the site was horrible and I wasn't doing any of the things they asked. But she glossed over the subject when talking directly to me.

That's red flag number 5: Enid's not talking to me, she's complaining "behind my back", as if that would help.

In actual fact, the issue was that the look of the site was off, and it was off because it hadn't been passed over to a graphic designer, as I'd told her it'd need to be. Functionally, the bare minimum was there, and she could do what she said she needed from day 1, which was list things and have them show on the site. We got Jason on the phone - I spoke to him for the first time at that point - had a very constructive session, Jason put together some graphics (Enid explained to me that he's not a graphic designer, but he does work in the field and have a good eye), I spent a day or two matching the designs, put them out, and switched on the site.

And was told to switch it off again. It spent a week or two in limbo, I spent the time on the remaining functionality, and then I got messages from Enid who told me she showed the website to some friends, who laughed at it and said it was amateurish and told me I'd done a lousy job.

Red flag number 6: at this point, none of it is making sense. Enid knows the look of the site was dictated by Enid and Jason, I just implemented what they asked for, and who are these mysterious friends? Is anyone really making these claims?

So we had another meeting, Jason played around with some design ideas, sent them to me, I implemented them, had some suggestions of my own, we got them all implemented and a few days later, beginning of February, I was finally allowed to turn on the site. There wasn't much traffic (well, there wasn't any), and my friends at Google were kind enough to give my business a $100 credit towards advertising, so I spent the next couple of weeks doing SEO work, and spending my $100 on advertising Enid's site. Well, that's what friends are for. I asked Enid to do various things, from contacting friendly businesses in the same industry and asking them to link to us, to setting up her blog. In the end, I did the latter, and wrote a couple of articles to get the ball rolling.

The money ran out, and hits were still low, as you'd expect. Looking at Google Webmaster, we're still getting maybe 30-40 impressions per day, which are not translating to many hits, but that itself is much higher than it was a few days ago. And last Tuesday, the bomb dropped.

Enid sent me a message saying, essentially, that her lack of sales were all my fault, that if I'd gotten the website out earlier then... well, she didn't say, but she implied the entire site was a disaster and a waste of time, and, oh, Jason had been saying I'm totally unprofessional and so on.

I... took it as frustration. Three weeks and you're complaining about lack of sales? Sure, I know the deadline stretched (and believe me, I apologised for that), but no business expects much interest that early on. I sent her a polite friendly email in response, ignoring the insults and assuring her I'd do what I can to help.

There was no response, and I sent more friendly, unrelated, emails over the next few days, making suggestions and recommendations. No response. On Sunday I finally decided it was time to try a different tack, and emailed her about my concern that she wasn't treating me as a friend - that friends talk to one another when they have problems.

And so yesterday she finally emailed back. I had, apparently, done nothing for her (most of her website is up and functional, only a part of the CRM system is remaining), that she's closing her business due to lack of business (after three weeks!) and she was going to pay me $derisoryAmount.

With hindsight, I should have seen it coming.

My wife, Enid's long time friend (and how I know Enid) is furious. Essentially, we've lost a friend, we can't trust her, we can't really like her. It's one thing to turn around and say "I can't do this any more because of {my health} {my ability} {etc}", but to blame us, long time friends, who have gone overboard to help, and make us go through all of this, throwing pennies our way as a "Get lost" card, is fairly sick.

But it's a learning experience, and you have to treat these things as learning experiences. How do I prevent this from happening again?
  1. Don't work for friends. Ever. Oh sure, help them fix their computer from time to time, even write a quick, five minute, tool to help them with something. Do something if it's fun. But writing a new application from scratch? One that doesn't interest you in the slightest? No, because if you do that, you have to expect to be paid, you will suffer for writing it, and if anything goes wrong, you will lose friends as a result.
  2. Don't work for friends. Ever. OK, I just said that, but there's a second reason: you overlook the faults of your friends. You think you don't, but when you deal with someone professionally, you find the things you thought were quirks can be deadly.
  3. Be very careful about deadlines. I'm used to a professional environment in which I can tell my boss "Look, I know I said the new CoffeeMakingApp would take seven days, but I didn't take into account the API change, and that I'd be sick, and that I had to go to Outer Mongolia at short notice, so it's going to be another... days." Now, it should be obvious, but I guess it isn't, that contracting's not like that. The issue is that people may be looking for excuses not to pay you, which isn't something that happens when professionals deal with professionals. Virtually everyone in the computer world knows it's hard to estimate programming work, and even harder to keep to those estimates. But with contracting, it's more important than that. Even though you may have agreements in place to work on critical parts now and less critical parts later, you've already given a, uh, problematic client what he or she thinks is legitimate ammunition.
  4. Ensure you'll get paid. With hindsight, I'd have split the work up into milestones, and insisted on payment at each milestone before moving to the next. With some businesses, that's probably not possible, but for a major project like this for a small business, it's what I should have done.

What would you have done in the same situation?


  1. As a lawyer I have often been in that very situation you describe. You at least seem to have learned from the experience, I kept falling into the same trap. It's very hard to be businesslike with friends, I'd say impossible even. Sorry not to be more positive :)

  2. Hey we'll see if I learned anything based upon whether I do it again :)

    Still, at least it'll be easier to spot the warning signs in the future...