If you can't explain it simply,
you don't understand it yet.
Dependency Injection. Sagas. Outbox. CQRS. The kind of concepts usually explained by people who already understand them, for people who already understand them.
This is the opposite: a real-world analogy first, then the bridge to the actual technical idea, then working code — in that order, every time.
"If you can't explain it to a smart friend who's never touched a
backend, you don't actually understand it yet — you've just memorized
it." — the whole premise of this site
Concepts
Dependency Injection
patternStop building your own tools. Let someone hand them to you.
Test-Driven Development
practiceWrite the failure first, so you know exactly when you've won.
Saga Pattern
patternWhen one big transaction isn't available, undo your way back instead.
Outbox Pattern
patternWrite the letter and drop it in the mailbox in the same motion.
CQRS
patternReading and changing things are different jobs. Stop forcing one model to do both.
Circuit Breaker
patternStop hammering a service that's already down. Give it room to recover.