It's because of the way the online top ups are done.
Your card is John Citizen 490398204838
Basically you top up online say $5, click the boxes, and send the money. Myki sends a note "John Citizen 490398204838 $5" to the main myki server, then the main myki server at 12am sends all the top ups from the previous day to each and every myki reader in a nice long list.
When John goes and touches on, the system reads through the list of 100's of mykis and topups, checks with the server that it isn't already applied and applies his topup, then notifys the server that his myki is topped up.
That's not the only problem, When Julia goes and touches on Myki machine again spends 1-2 seconds going through the 100's of myki topups yet to be applied to find there's nothing, and then touches her card on.
It's so stupid.