I like to think that most of those who have met me think I’m a decent enough guy. I try to smile, I’m generally not very sarcastic, and I refrain from spitting, swearing, and burning flags. But I’m sure there are a few people out there who think I’m an absolute crook. I’ve come to believe that if you run a business the number of people who will believe you are a crook depends on how many customers you have worked with. Since most companies gain customers over time, your criminality is a function of time.
Of course actually being a crook can have a substantial effect on your record, but my experience is that no matter what you do, no matter how hard you try, somehow, somebody will come away thinking you’ve ripped them off. The following are some of my experiences.
Criminal Experience #1
In 2002 my company was approached by two guys in their early 30s. They had gotten to know each other while working for a large telecom company, had discussed entrepreneurial ideas they each had, and had thought of an idea they thought had some merit. Believe it or not, I’ve already told you enough that you should see one red flag. It’s the fact that they were working for a “large” company. Working for a large company will generally hurt your chances of being successful with a startup because the rules you learn about how businesses operate are not necessarily applicable to startups. Add to the recipe the fact that these two had never started a business before, that their idea had nothing to do with the industry they had a background in, that they were trying to start the business on a shoestring budget, and a healthy dose of arrogance, and you’ve got the workings of the perfect storm of entrepreneurial disaster.
We should have run away, but no, we not only accepted these guys as clients, we also agreed to do the work at a discount and share office space with them.
Because it was a large project with a lot of backend work we did it all hourly. What most clients don’t know is that large web programming projects generally can’t be estimated to within more accuracy than 30%, and many projects, even those done by companies as reputable as IBM or Accenture, often go over-budget by more than 100%. Part of this is because it’s virtually impossible to come up with an accurate estimate before you’re halfway through the work. The other part is that clients, inevitably, ask for you to do more work than they originally asked for. The only fair solution on large projects is to go hourly. That way the client can ask for whatever they want, and the developer gets paid for the work they do. By the way, when I say “large projects” I’m talking about 500 hours as a minimum. Anything under 500 hours is easier to estimate, although I wouldn’t necessarily say it’s easy. But projects that are 500 hours, let alone 5,000 hours, get pretty tough to estimate accurately without spending a lot of time on the estimate itself.
So the point is, this was a fairly large project so we did it hourly. As we started working on the project we had trouble getting the client to tell us what they wanted. Essentially they kept telling us they wanted it to be just like another website that was already out there, with some minor changes. So we took at look at the competitor’s website, put a bunch of time into researching what it would take to recreate that functionality, and came back with an estimate of 3,000 hours. The client freaked out at this point. They had budgeted $75K for the website, not $300K. So we went back and did more research and planning and it still came out to around 3,000 hours. But the client kept telling us that it couldn’t possibly take that long. We weren’t sure how they were arriving at this conclusion since they didn’t have any programming experience, but they were so positive it couldn’t possibly take 3,000 hours that they had us dive into the project anyway, confident they would be right.
They were wrong. But unable to admit it, they got mad at us, assumed we were ripping them off, and started looking to take the project elsewhere. We really felt bad for them. After all they had big dreams, they were spending their own money, taking out loans on their houses, and we wanted to make the project work out for them. We ended up telling them we would do the work at cost. In other words, we wouldn’t make a dime on the project. We figured it out in such a way that we could hit their deadlines and get it done for an amount they could afford. Heck, it would have been cheaper to use us than to hire a freelancer. But by this point they had convinced themselves we didn’t know what we were doing.
They ended up hiring a contract developer to replace us. I’m not sure what happened with him, but as we were sharing office space I know he worked for them for about three months, and then he disappeared shortly before they folded up their business and quit. Apparently he wasn’t able to hit the milestones they had set for him either. I don’t know all the details about how they went under, but I know they blamed it on us. I know because they didn’t pay several months of rent to our landlord and when he threatened legal action they told him they couldn’t pay because we had ripped them off. The landlord pointed out that they had spent $50K on a fancy printing press which had nothing to do with us and they hadn’t been able to get that to work either, so it obviously wasn’t all our fault, but the point is they saw it as such.
It’s been almost four years since they went under and I still feel bad about things. We did our best, and when things went bad we did everything we could to make it work, but it wasn’t enough. I ended up losing money over the whole thing. Still, if I were making a ton of money and could afford it I’d give them their money back, not because I feel I or my company was at fault, but just because I feel bad for them and bad for how things worked out in the end.
Criminal Experience #2
Again, this happened 4-5 years ago, before we were even called MWI. Unlike the first experience, these guys actually had a really good idea. A friend of mine from college hired us to build a website that would process bankruptcy forms online instead of bankruptcy forms being processed by a paralegal. It would cost roughly half of what a paralegal costs, so there was some obvious value in it.
The project went well at first, but then the usual happened. The client got busy with other things and wouldn’t reply to our requests for feedback and input, and due to the nature of the project we could not continue without the client’s input. So the project sat, untouched, for months. I can’t recall exactly how long, but it was several months, and perhaps more than a year. Eventually I sold my firm, but here’s where it gets complicated.
If I had just passed the project off to the new company, that would have been cleaner. However, in order to sell my company we had to have a zero balance in our bank account, or at least so I was told. But as it happened we had some outstanding bills to pay when the deal was ready to sign and not enough money in the bank. So I agreed to buy the remaining balance of this client’s receivables, contingent upon the firm who was buying us out finishing the work. The amount I paid out of my pocket was $14,000.
So now, the firm that bought me out needed to finish the work, at which point the client would pay me, and everything would be great. Easy, right? Well, except that the firm that bought me out was dishonest, and had no interest in finishing the project. Also, the client still wasn’t very motivated to get it done. I was really the only person who really wanted that work to get done, because I was the one who was owed $14,000. I had been thinking I would get it within a month or two, but it dragged out longer and longer.
Then things got even worse. The firm that had bought me out lost the code for the project. That meant they couldn’t finish it. Then the client decided they wanted it done, but it couldn’t be done without redoing the entire project. So the client sued the firm that bought me out. Then the firm that bought me out went into bankruptcy (not as a result of being sued by the client, they were already being sued by several other companies/individuals as well and had plenty of problems other than our client). Well, at this point, I figured I wouldn’t be getting that $14K, and I was right, I never did. Not only that, but in the midst of it all I had exchanged some tense words with my friend and while I have trouble recalling the details now, it did put an end to our friendship and we haven’t communicated since. From what I do remember I’m guessing that to this day he doesn’t think too highly of me nor my former team. In the end I didn’t make a dime off the project and in fact it cost me $14K, but more importantly it cost me a friend.
Criminal Experience #3
Right as I was starting MWI in 2003 after selling my first firm I was approached by a well-known Utah entrepreneur to build a website for one of his new startups. I was excited to develop a relationship with this guy, not to mention that it seemed like it would be a great project. Then he passed the management of the project to his partner and things went downhill from there. But even with all the challenges, it could have worked out but for some details. I chalk it up to there being three major problems, the combination of which brought it all crashing down.
1. The client’s partner.
2. My programmer.
3. The second and third programmers.
The partner of our client was arrogant, rude, egotistical, and would later be downright dishonest with me. He was hard to work with and wouldn’t give us details about what he wanted. “Just make it like [such and such website]! That’s all we need!” is what he would repeatedly say. But such and such website probably cost $500K to build, and we were getting paid $20K, so we needed to know what he needed and what he didn’t need.
I was using a friend of mine on contract to do the development of this site. My friend had told me he would be available up until a certain time and that he couldn’t work on the project after that. However, because we had trouble getting input from the client the timeline went past when my friend was available to work on it, and so when we were 80% done he left. In all fairness, he had given me adequate warning so I can’t blame him for anything, but it did put me in the bad spot of having to find another developer.
I found another developer who seemed to have a decent resume and put him to work on the project. He was horrible. I spent $2K on him and then sent him packing. Then I was approached by a local guy who ran a firm with offshore developers. He said he could get the project done for a third of the price of a US based programmer. Without other immediate options and being in a bit of a crunch due to the other bad developer I had hired I tried it out. The offshore developers were also horrible. Not only was their work worthless, but it was impossible to work with them. What topped it off for me was when one of the developers told me “We’re going to a party tonight, so we won’t be able to work on the project again for three days.” I don’t know what they were planning on doing at the party that would knock them out for the next three days, but I figured whatever it was, it was interfering with my project and it was the last straw.
I started looking for a third developer, but at this point the client was frustrated with our inability to complete his project in a timely manner and found his own developer. Once again, I made no money on the project and in fact lost money. Once again, I lost a valued relationship and who knows what else I lost in terms of opportunity. But the story doesn’t end there.
In addition to developing the site we were also hosting it and continued to host it after the development was passed on to another web developer. The site sold files that could be downloaded, and some of the files were several gigs in size. Unfortunately the hosting agreement I had in place with this client was a weak one and didn’t charge anything for bandwidth because the datacenter I was getting bandwidth from had told me they wouldn’t charge me for bandwidth as long as it stayed “within reason.” However, when the client started giving away downloads for free the bandwidth passed from reasonable to insane. They were averaging 40 mbps, 24/7. Also, unfortunately, the datacenter didn’t tell me about this for two months because they couldn’t track it down. By the time they told me about the problem and informed me that my bandwidth had gone “beyond reason” would I would need to pay for it, the bill was already up to almost $10,000 and accelerating.
Now, if I were a mean guy I would have pulled the plug on the client’s server immediately. But instead, I called them, told them about the problem, and they agreed to move the servers to a different locale as soon as possible. They also agree to work things out with me regarding the bandwidth charges, but the guy telling me this wasn’t the head guy, and I wanted assurances that they would really help me out. But I couldn’t get a hold of the client’s partner. One day passed, then two. Then three and a fourth. My calls were not returned, nor were my emails. A week passed and I got a call from the datacenter saying that somebody had showed up at 11pm and wanted to get some servers out of our rack. Nobody had called me to make arrangements, and so I started to get suspicious that they were trying to get the servers out of there and then leave me high and dry without helping me out with paying for the bandwidth. So I told the datacenter to not let anyone into our rack unless I told them otherwise.
The next day I got a call from the client’s partner. He immediately launched into a tirade, yelling, calling me a terrorist and tellilng me that if I continued to hold the servers hostage he’d have the cops on me and throw me in jail. I was so shocked I caved in. I told him it wasn’t the datacenter’s policy to let strangers come and remove servers from the premises, and that since he hadn’t returned my calls or emails I had grown suspicious. He continued to yell at me until I agree to let the servers go but he refused to make any commitment to help me with the financial end of things other than to say “We’ll pay you what’s fair.”
By the time his servers were removed an addtional $3,600 in bandwidth charges had been racked up. I think a nice person would have said “Hey, our contract with you said there wouldn’t be any bandwidth charges, but hey, $14,000 is a big deal and after all, it was our bandwidth, so let’s split it.” If someone agreed to that I would say they were kinder than they needed to be. I think a reasonable person would have said “Hey, you could have just pulled the plug on our servers, but you allowed us to stay up and running even after you informed us of the problem, so we’ll pay for whatever charges accrued after you told us about the problem.” If someone agree to that I would say they were being fair. However, about the person who said “We’ll pay you what’s fair,” and who then came and got their servers, and then who never paid me a dime and never responded to any further emails or phone calls from me, I would say they were dishonest. Is it just me? Have I been taking crazy pills?
Now, if this is the first time you’re reading my blog you might think “Well, this guy owns a web development firm, he’s rich, that’s nothing for him.” But if you’ve read my past posts you know that $3,600 is a lot of money for someone who doesn’t take a paycheck home. I have ended up having to pay that entire $14,000 hosting fee, plus interest, out of my own pocket. So when I tell you I’m not taking a salary and you ask why, there’s $14K of the reason why.
These are the three most negative experiences I’ve had with clients out of hundreds, the vast majority of which were quite positive. I haven’t had any experiences that come close to being as negative as these since the last one, which was three years ago. I think I’ve learned a few lessons about how to avoid having similar experiences in the future, and the primary reason for this post is the hope that you might learn from my experiences rather than having to go through your own. I’ve posted the lessons I’ve learned elsewhere on this blog, but here’s a brief list:
1. Don’t “partner” with clients. Don’t give them steep discounts. Charge your clients a fair rate, and things will work out for the best. Sure, some clients won’t work with you, but trust me, you don’t want those clients anyway.
2. Don’t share office space with a client.
3. Make sure your hosting contracts include fees for bandwidth. Or in other words, make sure you have good contracts that protect you from negative possibilities, even if you think those possibilities are highly unlikely.
4. Don’t do work for friends, you may lose them.
5. Don’t buy receivables from a company that has no incentive to do the work that will result in those receivables being worth anything, that is going to lose the code for the project, and that is going to go bankrupt. Or in other words, don’t be stupid.
6. Remember, even if you do your best and you try to be honest, that’s no guarantee you’ll go through life without anyone feeling like you’ve ripped them off. That comes with the territory, and the more customers you have, the more likely it is to happen. If your sense of self-worth is dictated by what others think of you, running a business may not be your calling in life. On the other hand, if what matters to you is knowing that you’ve done your best and that you truly have been honest, regardless of what others think, then maybe you’re cut out to be a business owner.