‘I decide to add a special function to the code just to be safe.’ Programmer Creates A Website For A Client Who Tries To Steal It From Them Without Paying. So He Sells It To A Competitior.

One of the best pieces of advice that I’ve picked up over my working years is that you should never, EVER mess with IT people.

They pull the strings behind the scenes and, if you’re not on their side and don’t treat them well, things can get ugly in a hurry.

This story comes to us from an IT worker who shared their revenge story on Reddit.

They started by explaining that they were working on a job with a lawyer who had a pretty awful reputation, but they decided to do the job anyway.

“I’ve worked as a independent contractor in the IT field for over 20 years, doing all manner of things from creating simple HTML sites to managing a big hotel’s complete IT infrastructure.

One of the many clients I had back in the day I was coding big-ish custom websites was a rental company. I had heard a lot of warnings about not working with this guy that owned it. He had a reputation that he was sharp as a tack, backstabbing and conniving. He was a lawyer after all.

So, I went into the partnership with that in mind.

He wanted a new website for his renting gig, where people would list their home for rent, renters would sign up and pay a subscription to the site and he would get the whole lot.Nothing out of the ordinary there.

So we make a pretty good deal on paper, we sign it and I get started on the project.

And things didn’t go well for very long, as you can probably imagine…

Coding everything in PHP goes well, but he demands suddenly that I show him progress only a week into the progress. He wants to see the website front now. This is just the tip of the iceberg. I tried explaining to him that the front end work isn‘t scheduled to start until after 6 weeks of backend programming and that I only had pure code to show right now, the contract we signed clearly states this.

He then get‘s on his high horse and demands that I put everything on hold to do the frontend first, design and then program. I, being really young at the time and fairly naive, agree to this without asking for it to be added to the contract as an addendum and start working on the design now.

Now, the contract stated that I was given free reign of the design decisions as long as I maintained the same color scheme and used the same logo on the site.

And things just kept going downhill with this client.

So I make a fast draft in Fireworks (this was back when it was a Macromedia product, before the Adobe acquisition) and within two days I show him. He‘s not impressed and demands a different direction and sets up a list of demands. I, as always, aim to please the customer and do just what he wants. I design a new layout, with his list of demands but he doesn‘t like that either. That‘s how the next 3 months go. A never-ending circle where he is never happy with anything.

Now close to 4 months into the project, he demands to see a working showcase of the backend, I point out that he himself changed the order in how the project was being done and had demanded that I do the frontend design first instead of the backend as stated in the contract, which he now turns on me and says: “Yes, the contract we both signed says you will have a working backend to show me at the end of the month! If you don’t honor that I will have to take my business elsewhere and seek compensation for your lack of professionalism!“

They put their head down and got through the job…

Ok, I now have 12 days to do a backend for the site. So I get a friend to help me and we work tirelessly through a weekend and I have a good base to work from in 9 days. Mind you, at this point he has only paid the security on the contract (about 5% of the total price) and has shielded himself from paying by hiding behind: „Well, if you can‘t honor the contract, why should I? Finish XX work and then I‘ll pay as per the contract!“

Remembering now, all the warnings I had heard about this guy, I decide to add a special function to the code just to be safe, more on that later.

So, now it‘s the end of the month, we have a frontend design he is OK with, a backend that has been finished to about 85% of what is required according to the contract and I still have 1 month left to finish everything else.

It was time to reveal the finished product to the client.

Time for show and tell. Since I was working on this development I was running it on my own dev server and showed him this in a browser on his computer. I mentioned to him that since I only had 512Kbit/s upstream from the server it might lag a little, but it wouldn’t when it would be put on the productional server he has his website on at his hosting company.

He says that’s OK and the demonstration goes on.

As I‘m showing him the site, both frontend and backend, I can see he‘s immensely happy with it (although he would never say so out loud). He is trying to hide his smile that pops up regularly and his eyes gleam with all the added ways he can now start making money from.

Anyway, he now says that it‘s way too slow, this is wrong, that is wrong.. blah blah blah.

Client: “I want you to put it up on my prod server and see how the speed is!“

Me: “OK, no problem, I can make that happen. Please pay 50% of the contract and I‘ll get right on it.“

OK, I wait a few days and then I get an email from him where he includes a forwarded message from the bank detailing a transaction from him to me to the amount of the 50% I asked for. So I push the system to his prod server so he can take a look at it (under beta.his-domain.tld), I then send him an email stating that he can try the system with the supplied credentials.

But this IT worker had a trick up their sleeve…and good thing they did!

What he doesn’t know is that I knew he had been fishing around for another programmer to do this project, to “pick up from a lazy deadbeat who couldn’t do anything right“.

So I knew he would most likely try to screw me. What I also suspected was that the email he sent me with the transaction proof was a fake, which it ended up being.

And then came the revenge!

Pro Revenge 1:

Remember that small function I mentioned? Well, what it did was if user X (his user) tries to remove user Y (my admin) from the system without one setting being changed in the config first, the system will first delete and purge the database and then remove all the documents in the webroot.

Well, not 5 minutes after he reads the email from me, he does just that. He tries to delete my admin user from the system to lock me out.

Guess who has nothing of the project left? He does!

And the hits just kept on coming!

Pro Revenge 2:

Since it is considered forgery to spoof an email, specially from a bank, I sent the information to the authorities and he goes under investigation by both the police and the bank lawyers.

Pro Revenge 3:

I sold the system to a competitor of his for a better price than originally contracted to him and last I knew he was now blacklisted from owning a company as well as he lost his right to work as a lawyer.

I only got that 5% he paid at the beginning and for working for just over 5 months on this project that is hardly anything. But the knowledge of his demise will keep my heart warm for the rest of my life.”

And here’s how people reacted.

This person didn’t seem too impressed with the lawyer in this story.

Source: Reddit/AITA

Another individual made a great point.

Source: Reddit/AITA

This Reddit user talked about a scary reality…

Source: Reddit/AITA

This Reddit user talked about how lawyers can be odd folks.

Source: Reddit/AITA

And this Reddit user talked about what happens when people give in to tantrums.

Source: Reddit/AITA

You always gotta be nice to IT workers.

They can really make or break your day!

Source: https://twistedsifter.com/2023/10/i-decide-to-add-a-special-function-to-the-code-just-to-be-safe-programmer-creates-a-website-for-a-client-who-tries-to-steal-it-from-them-without-paying-so-he-sells-it-to-a-competitior/