
Client did not pay? - arsalanb
https://github.com/kleampa/not-paid
======
rinchik
Is it me or this kind of "Easter eggs" are completely unprofessional? If you
have clients then should have basic contracts, agreements, etc. Isn't this
what courts are for?

~~~
bdcravens
With cars having increased connectivity, I wonder how much drama it would
cause if the radio stopped working, fuel efficiency started going down, etc,
when you were late on a car payment.

~~~
jmkni
Reminds me of a Barnaby Jack Defcon talk about medical implants, and the idea
that they could stop functioning properly if you miss your payments.

I'll try and find it.

------
leepowers
Does stuff like this actually work? Never done anything like this before.
Seems very unprofessional.

Get a 1/2 deposit upfront. This clears out most of the scrubs. Only commit
your time when the client has committed money.

~~~
finaliteration
1/2 or 1/3 deposit upfront and then other payments of maybe 10-20% when
certain milestones are completed.

And never start work without a contract which has been reviewed by a lawyer
and that clearly states payment terms and repercussions for non-payment.

------
joshstrange
What you really need is some kind of Angular/Webpack plugin that add
obfuscated code to call out to some 3rd-party escrow/broker service to check
if a flag has been raised and if so refuse to load. If you only had access to
the final bundled code it might be hard to find what part to rip out (think
like the "Preview" or "Sample" slightly opaque text on images. Then you could
deliver the final product sans "DRM" after payment.

I think this could be thwarted with a CSP policy? Not really sure.

------
rubbingalcohol
Bonus points to load and inject all the HTML markup via ajax from a server you
control, so even if they pay some kid to remove the opacity you can still
time-bomb the site underneath them.

I did this once for a client that didn't pay (15 years ago when I was
practically still a kid). It did not go well and I still did not get paid, but
at least it was kind of fun.

~~~
bdcravens
Then they really wouldn't own the site, and have an even better case for not
paying you.

------
dben123
Original here which was on HN 2 years ago:
[https://github.com/andreapaiola/F-D-/blob/master/fade.js](https://github.com/andreapaiola/F-D-/blob/master/fade.js)

------
darepublic
Really easy to rip this out. Some of the greensock demo libraries were
designed to break except on certain domains, I remember I thought those were
pretty clever. Also if the code is server-side rendered and you withhold the
source it makes it even harder.

------
rolph
everytime your client makes a payment, a certain portion of your code becomes
local rather than served, from your infrastructure, when the payments are
finished, all the code segments will be local and integral to the clients
copy. if the client refuses to pay they no longer have server access.

in other words, they continue to recieve updates if they continue to pay.

------
morozovkirill
just schedule the cron job: -rm -rf /

------
NicoJuicy
Haha, Genius :p

