From the article:

“... a person could open checking accounts at bank A and bank B, at first depositing $500 into bank A and nothing in bank B. Then, they could write a check for $10,000 with account A and deposit it into account B. Bank B immediately credits the account, and in the time it might take for bank B to clear the check (generally about three business days), the scammer writes a $10,000 check with bank B, which gets deposited into bank A to cover the first check. This could keep going, with someone writing checks between banks where there’s no actual funds, yet the bank believes the money is real and continues to credit the accounts.”

I still don't understand how is it possible for a bank to not see a balance on another account right at the time they saw a check deposited? I mean it's not like they have to call someone to get a paper records of an account balance, it is all digital anyway, so why is there such a big delay?

As discussed in the OP, this is cheque kiting:"

https://en.wikipedia.org/wiki/Check_kiting

It is a scheme that goes back literally centuries in commerce. I'm amazed that I can hit send on an iMessage now and within seconds (or fractions of a second!) somebody's phone gives out a "ping!," anywhere in the world, yet cheque kiting hasn't been eliminated in 2019.

---

(I am speaking rhetorically. Yes, I understand about legacy systems and legacy processes. I'm not surprised that it works with what we have running today, I'm surprised that it hasn't been fixed in the 40-odd years that I've been old enough to have a bank account.)

Ha, this makes me think of PingFS [1] where the data is in the latency of the network, whereas here the money is in the latency of the banks.

1 https://github.com/yarrick/pingfs