I don't want to name what my quick Google search revealed, but if you search for augmented reality bus Beijing there aren't many options and it fits the authors characterization of their fleet consisting of ~20 buses.
It isn't, but you can't get blood from a stone and squeezing costs money.
It sounds like the entity that the contract is with has no real assets and/or is based in a jurisdiction which is hard to enforce judgements in. That's a case where you need to get paid up-front, which is the real lesson in this article.
> They were carpetbaggers and dilettantes convinced by their own inexperience and the advice of a onetime VJ that they could pull off something I’d twice helped quote to be brought home by a cadre of hardened killers with shitloads of math and know-how at eye-watering prices. They were way way way over their heads and were in no way interested in updating their priors in light of the shit they were swimming in.
And yet, somehow, you gave them the most important time you had for their promises.
Contract terms can vary greatly depending on the situation and the company you’re working with.
Early/frequent payment terms are always good to have but you may not always have the leverage for it depending on where you’re at as a contractor.
Takes getting ripped off a times before insisting on better terms I guess. It’s like bombing your first job interview… you can prepare but it just needs to happen.
I am so deadly serious - do not continue working if your invoices are late.
You don't have to be a jerk about it, just explain to your primary contact that you need to be paid and you pick up tools again when the money has arrived.
BUT it is on YOU to properly negotiate reasonable payment terms. And if you don;t know or don't trust the client then require payment in advance until a stronger commercial relationship can be settled in. Do not be a baby - go research business contracts and payment terms.
Do not be afraid to lose business from companies that are squeamish about paying you - in fact actively avoid such companies.
A professional knows what they're worth and what they need to deliver. On-time payment according on an agreed-upon schedule is table stakes. That's the most fundamental requirement. Nothing happens without that.
Sadly this is true and lesson anyone who has worked freelance has probably learned - either that or I'd wager they no longer do freelance.
Its easy to say don't be afraid to lose business, but when you're starting out, the economy is rough or all you have are the one or two clients, that's a different matter entirely.
One thing I've learned is that you always have to do the leg work, you can't assume someone will do the right thing or keep their word.
Develop a system where even bad clients, can't do too much damage i.e. upfront deposits, milestone-based payments. You have to control cash flow risks, if you are gonna take risks know what risks you're taking and when to get out.
I feel like it's easy in hindsight to say some tough sounding advice in the form of "be a hard-ass", but idk, I feel like there are plenty of real life cases that contradict this advice- taking a chance on a referral to work on something you find interesting. Of course the big-money clients will be fine with a hard-line stance and they have money to pay at the end, but that work tends to be less interesting.
OTOH, one other clear subtext of the story is the "savior" attitude of a lot of tech people, who think that, if they weren't using version control before, think, "oh, I'll just tell them about this great thing, and because it's much better they will definitely listen to me and implement it - it's only logical". But the harsh reality is that "better" things won't affect an org that went along that far and dug themselves that deep.
Never underestimate an org's ability to shoot itself in the foot, even if you think you know better. That includes getting your money from them.
As an electrician currently self-stopped (for both non-payment & absenteeism, two months no contact, so far) I'm not budging. When you didn't show up for our last two on-site meetups (and still haven't contacted), I thought about filing a lien... but decided to just keep you from having tenants (by not finishing AC/water/electric). You'll get around to it..?
When I told this LLC/owner "you obviously aren't in a rush because you obviously aren't visiting the jobsite/me" I sort of expected him to show within a few days. Then a few weeks. And now we're entering a few months.
You have weeks of my punchlists (unresolved to do), I have weeks of questions (what do you want?) and you won't even do simple things like turning on power/water.
So true. And I'll add, no matter how trustworthy you believe the other party to be based on reptutation, relationships, or otherwise-- they should understand requiring assurances. The worst backstabs are from the people you know and who should know better. And a lot of people will justify it to themselves if they get in trouble. They will continue telling themselves that they are fundamentally good people and it just didn't work out as they rip you off for a lot of money. If they say the equivalent of "why don't you trust me?" that's a red flag.
I guarantee you that if OP said, sorry, do this or I am going home, they would have done what needed to be done. Both in terms of payment, and in terms of getting their software and hardware houses in order.
It might have involved OP getting a taxi to the airport and being chased down at the gate, but it would have worked.
And even if it didn't, they would have saved themselves enormous time, money, and stress by following through on their threats if it didn't work out.
Your business is getting the money. Your business is not to fly around the world trying to engineer-mog the client. The OP has a bad ego.
"They don't even use version control..." Yeah? Get the money. The client are "carpetbaggers", yeah okay... get the money.
It's implied that they hired you because they need the help. But they also may have hired you because they need the help and you seem like a sucker they can stiff.
What's an "AR bus"? How can augmented reality windows work on a bus unless you are (a) tracking the passenger's head and (b) there's only one passenger?
Screens outside the windows (not on the windows) can provide parallax, no need to track heads. However, in this case:
> They were attempting to pull off AR effects on the transparent OLED windows of the bus without accounting for lens distortion, field of view, parallax, occlusion, etc., and were frustrated and mystified when things didn’t appear to line up. They were completely naive to what depth and scale cues are and how to deploy them.
Never do anything on faith or as a handshake deal. Always ensure you get paid (hint: escrow is kryptonite for weasels). Trust everyone, just not the devil inside them.
He says "trust your gut" about 12 times, but the whole lead up has 0 mention that he was worried he would not get paid. His only gut feelings seemed to be around tech issues.
no it isn't. why you did not sue them? success rate of international arbitrage (New York Convention) proces into China is 90% success rate. USA/EU companies who sue Chineses companies in China for breach of contract seem to be winning rates. Enforcement of USA curt orders do not need to go thorugh Chinese courts again, and are enforced by local authorities (local sharks) with success rate of 80% for foreign firms suing chinese firms. fees are also fairly low. case is straightfoward.
if author went and sue, likely he would get his money back.
We’ve also learned this lesson the hard way. These are now the clauses we require in every project we do:
- Payment is due X days after receipt of invoice, or immediately after the consultant has addressed any quality issues, whichever is sooner
- Late payment shall incur interest at 8% above the BoE base rate and a late fee of 100 GBP as per the UK Late Payment Legislation. Partial payments on invoices shall apply to late fees, interest, and then principal, in that order.
- In the event of a late payment the invoice for the next deliverable shall immediately fall due.
- The consultant shall be entitled to shift deadlines on deliverables in the event of a late payment as a result of any work disruption, without incurring any liability.
- Payment shall be made in X currency, or an exchange rate at X date on Oanda.com shall apply.
- The client is responsible for any bank fees incurred by their, or any intermediary bank. In the event of a SWIFT transaction it shall be made with the OUR payment code.
- The jurisdiction in the event of a conflict shall be England and Wales. Neither party shall be bound by arbitration.
- The client and consultant shall both indemnify the other up to the total value of the contract and shall not under any circumstance be liable beyond X GBP.
We also no longer share downloadable links of our deliverables until they are paid up. They get a view/comment only link for reports/data etc.
We’ve found that clients that aren’t willing to accept these terms won’t pay you either way.
We determine the net days on the invoice based on the credit rating of the client. Ironically, the good clients pay within 2-3 days normally, and the difficult ones are very “long tail”. About 1% of contracts tend to fully or partially default on their payments.
We’re in a particularly credit poor industry but our average delay due to late payment is 23 days. Those clients where we stop delivery pay on average 11 days sooner than those contracts where we don’t stop delivery.
This is based on around 2,000 invoices sent over the last 5 years.
I've started operating in really granular units of work. Like less than $1000 per. Cash on delivery. This won't work with all clients and all jobs, but there are places where it does work very well. Advantages include being able to avoid paper contracts altogether. Verbal agreements and a 4 column xlsx that is reviewed monthly are all that seem to be required with some of my clients.
If I don't get paid for one day of work, I will probably get over it in a few hours. If I don't get paid for six months of work, we will have a serious problem. The tighter and more incremental we can make the delivery process, the less likely anyone gets screwed.
If a party is pushing hard for long-term contracts or large up-front sums of payment, I would walk away from that transaction unless there was a literal golden goose sitting in their lap.
There's no such thing as a company temporarily being in dire straits. These kind of companies are always in dire straits and crisis - it's a business tactic to not deliver and not pay. Just stay away, whether you're a customer, a contractor, an employee or if they want to be your customer.
The fact that this is so many words makes me worry the author underappreciated the main lesson: risk exposure.
When you go out of pocket - you are out of pocket and the risk is all yours. If that one thing was different then all the remaining risk is on the client - they don't want to do version contr - ok cool you still get paid.
Usually when you have to pay in to get paid out (outside of a direct investment scenario) it's a scam. The people who fall for the Nigeria Prince thing are operating the same way.
No longer a contractor but I used to offer a 10-15% discount for paying upfront. Almost every client took this deal. Earned a little less but never lost sleep over payments.
That doesn’t really sound like “being ripped off,” as opposed to “betting on a lame horse.”
The people behind this were irresponsible, childish, and exemplars of the Dunning-Kruger effect. They weren’t really hardline crooks. Crooks are probably a lot more organized.
I have gotten myself invested with similar crowds. There’s usually a charismatic spokesperson, leading the chaos.
They likely didn’t plan to rip him off, but paying him wasn’t really something they thought about. Real crooks put lots of planning into taking money.
> Multiple very junior developers were touching (binary, TouchDesigner) code and deploying straight to production via thumb drive, with zero version control. In fact, they didn’t know what version control was.
I suspect many startups fit that description. If they survive, then they usually pull themselves up by the bootstraps, eventually. Many of them collapse, taking everything with them.
I was owed billable hours from Stanford University but refused to do any further work until the outstanding invoice was paid. Their accounts payable department didn't want to, so I had to tell the client "sorry" and walked away. It's really weird because I didn't have a problem in the near past then and was even an FTE at one point. I'm unwilling to work for free or for imaginary, low liquidation preference equity of a worthless startup.
Ordinarily, I would sign master agreements and set PO terms up-front. Typically, the better customers would agree to very strict requirements / objectives for a particular time period for a specific price. Any deviations would require negotiation. Hourly is fine too but there must be regular milestone deliveries so that there's demonstrable value for money being conveyed rather than an appearance of a milking-oriented consultant. Expectations must always be managed.
Actually sort of darkly clever– they turned OP into an unwitting investor.
Project goes well, he gets paid and they're best buds, and he doesn't even realize he was scammed (by intent). If not, well there's no point suing a failed company.
83 comments
[ 3.0 ms ] story [ 86.4 ms ] threadIt isn't, but you can't get blood from a stone and squeezing costs money.
It sounds like the entity that the contract is with has no real assets and/or is based in a jurisdiction which is hard to enforce judgements in. That's a case where you need to get paid up-front, which is the real lesson in this article.
Or at least in very small batches and with very short due dates.
And yet, somehow, you gave them the most important time you had for their promises.
This wasn't because of the customer or not getting paid. This was the author's choice.
Early/frequent payment terms are always good to have but you may not always have the leverage for it depending on where you’re at as a contractor.
Takes getting ripped off a times before insisting on better terms I guess. It’s like bombing your first job interview… you can prepare but it just needs to happen.
A little hyperbolic, but more accurate than not when laypeople think about contracts.
A contract isn’t a magic spell, it is a declaration of shared understanding that can be used for clarity and in legal proceedings.
If you think of a contract as a way to ensure you get what you agreed, yes, it is toilet paper, because a contract doesn’t remove counterparty risk.
I am so deadly serious - do not continue working if your invoices are late.
You don't have to be a jerk about it, just explain to your primary contact that you need to be paid and you pick up tools again when the money has arrived.
BUT it is on YOU to properly negotiate reasonable payment terms. And if you don;t know or don't trust the client then require payment in advance until a stronger commercial relationship can be settled in. Do not be a baby - go research business contracts and payment terms.
Do not be afraid to lose business from companies that are squeamish about paying you - in fact actively avoid such companies.
Its easy to say don't be afraid to lose business, but when you're starting out, the economy is rough or all you have are the one or two clients, that's a different matter entirely.
One thing I've learned is that you always have to do the leg work, you can't assume someone will do the right thing or keep their word.
Develop a system where even bad clients, can't do too much damage i.e. upfront deposits, milestone-based payments. You have to control cash flow risks, if you are gonna take risks know what risks you're taking and when to get out.
OTOH, one other clear subtext of the story is the "savior" attitude of a lot of tech people, who think that, if they weren't using version control before, think, "oh, I'll just tell them about this great thing, and because it's much better they will definitely listen to me and implement it - it's only logical". But the harsh reality is that "better" things won't affect an org that went along that far and dug themselves that deep.
Never underestimate an org's ability to shoot itself in the foot, even if you think you know better. That includes getting your money from them.
As an electrician currently self-stopped (for both non-payment & absenteeism, two months no contact, so far) I'm not budging. When you didn't show up for our last two on-site meetups (and still haven't contacted), I thought about filing a lien... but decided to just keep you from having tenants (by not finishing AC/water/electric). You'll get around to it..?
When I told this LLC/owner "you obviously aren't in a rush because you obviously aren't visiting the jobsite/me" I sort of expected him to show within a few days. Then a few weeks. And now we're entering a few months.
You have weeks of my punchlists (unresolved to do), I have weeks of questions (what do you want?) and you won't even do simple things like turning on power/water.
Fuck you, pay me.
[•] <https://www.youtube.com/watch?v=jVkLVRt6c1U>
It might have involved OP getting a taxi to the airport and being chased down at the gate, but it would have worked.
And even if it didn't, they would have saved themselves enormous time, money, and stress by following through on their threats if it didn't work out.
"They don't even use version control..." Yeah? Get the money. The client are "carpetbaggers", yeah okay... get the money.
It's implied that they hired you because they need the help. But they also may have hired you because they need the help and you seem like a sucker they can stiff.
> They were attempting to pull off AR effects on the transparent OLED windows of the bus without accounting for lens distortion, field of view, parallax, occlusion, etc., and were frustrated and mystified when things didn’t appear to line up. They were completely naive to what depth and scale cues are and how to deploy them.
Also, mandatory: https://creativemornings.com/talks/mike-monteiro--2/1
The weirdest part to me, receive a call and just get up and go? Priorities? Did you write this blog post from the doghouse?
no it isn't. why you did not sue them? success rate of international arbitrage (New York Convention) proces into China is 90% success rate. USA/EU companies who sue Chineses companies in China for breach of contract seem to be winning rates. Enforcement of USA curt orders do not need to go thorugh Chinese courts again, and are enforced by local authorities (local sharks) with success rate of 80% for foreign firms suing chinese firms. fees are also fairly low. case is straightfoward.
if author went and sue, likely he would get his money back.
- Payment is due X days after receipt of invoice, or immediately after the consultant has addressed any quality issues, whichever is sooner
- Late payment shall incur interest at 8% above the BoE base rate and a late fee of 100 GBP as per the UK Late Payment Legislation. Partial payments on invoices shall apply to late fees, interest, and then principal, in that order.
- In the event of a late payment the invoice for the next deliverable shall immediately fall due.
- The consultant shall be entitled to shift deadlines on deliverables in the event of a late payment as a result of any work disruption, without incurring any liability.
- Payment shall be made in X currency, or an exchange rate at X date on Oanda.com shall apply.
- The client is responsible for any bank fees incurred by their, or any intermediary bank. In the event of a SWIFT transaction it shall be made with the OUR payment code.
- The jurisdiction in the event of a conflict shall be England and Wales. Neither party shall be bound by arbitration.
- The client and consultant shall both indemnify the other up to the total value of the contract and shall not under any circumstance be liable beyond X GBP.
We also no longer share downloadable links of our deliverables until they are paid up. They get a view/comment only link for reports/data etc.
We’ve found that clients that aren’t willing to accept these terms won’t pay you either way.
We determine the net days on the invoice based on the credit rating of the client. Ironically, the good clients pay within 2-3 days normally, and the difficult ones are very “long tail”. About 1% of contracts tend to fully or partially default on their payments.
We’re in a particularly credit poor industry but our average delay due to late payment is 23 days. Those clients where we stop delivery pay on average 11 days sooner than those contracts where we don’t stop delivery.
This is based on around 2,000 invoices sent over the last 5 years.
If I don't get paid for one day of work, I will probably get over it in a few hours. If I don't get paid for six months of work, we will have a serious problem. The tighter and more incremental we can make the delivery process, the less likely anyone gets screwed.
If a party is pushing hard for long-term contracts or large up-front sums of payment, I would walk away from that transaction unless there was a literal golden goose sitting in their lap.
When you go out of pocket - you are out of pocket and the risk is all yours. If that one thing was different then all the remaining risk is on the client - they don't want to do version contr - ok cool you still get paid.
Usually when you have to pay in to get paid out (outside of a direct investment scenario) it's a scam. The people who fall for the Nigeria Prince thing are operating the same way.
this is only getting worse with ai.
all the artifacts of good work are there but none of the depth.
The people behind this were irresponsible, childish, and exemplars of the Dunning-Kruger effect. They weren’t really hardline crooks. Crooks are probably a lot more organized.
I have gotten myself invested with similar crowds. There’s usually a charismatic spokesperson, leading the chaos.
They likely didn’t plan to rip him off, but paying him wasn’t really something they thought about. Real crooks put lots of planning into taking money.
> Multiple very junior developers were touching (binary, TouchDesigner) code and deploying straight to production via thumb drive, with zero version control. In fact, they didn’t know what version control was.
I suspect many startups fit that description. If they survive, then they usually pull themselves up by the bootstraps, eventually. Many of them collapse, taking everything with them.
Ordinarily, I would sign master agreements and set PO terms up-front. Typically, the better customers would agree to very strict requirements / objectives for a particular time period for a specific price. Any deviations would require negotiation. Hourly is fine too but there must be regular milestone deliveries so that there's demonstrable value for money being conveyed rather than an appearance of a milking-oriented consultant. Expectations must always be managed.
Some favorites:
- No way they would actually screw me over! We're buds/they got me tiger balm/they paid some/I did them a solid
- Thin veneer of safe fallbacks that doesn't hold up under scrutiny. Legal or other 'repercussions'
- Endless delays and excuses (though it's usually too late by this point)
Project goes well, he gets paid and they're best buds, and he doesn't even realize he was scammed (by intent). If not, well there's no point suing a failed company.