the best way to learn backend is from first principles.
but not everyone is comfortable learning visually.
some of us just prefer reading, understanding the fundamentals, and going deep.
that's why my guy @DsThakurRawat built this: …https://t.co/ntXfv9R1BE
everything is curated in one place, from first principles to the deeper concepts.
absolute banger for readers like me.
🚨🔵 Chelsea and AS Monaco had a meeting on Thursday to discuss Lamine Camara as possible option for #CFC midfield.
AS Monaco still hope to keep Camara but remain in talks for Pape Matar Sarr from Spurs, as reported. 👀
@thewebmansa@EOEboh Well, they will receive an in app message that their request has been processed ( or otherwise). It’s just the receipt in the email that may take some time. Email confirmation is not tied together with payment confirmation.
@EOEboh We Charge card, write ledger (idempotent, same request) , enqueue receipt async w/ retry+backoff. We use a payment status to track the payment - pending, sent, failed. A reconciliator to also track if a charge succeeded but ledger write failed.
@EOEboh write to the ledger first. Then send the receipt using a queue. That will allow us to retry - exponential back off. The endpoint should be idempotent too. We could also use intent based state - payment is “awaiting dispatch” in the ledger then approved when email is pushed out.