Search
Lessons (14)
- Design a Reliable Notification System
Deliver email, SMS, push and in-app messages with preferences, isolation, idempotency, provider failover and auditable states. ![Notification …
- Creational Patterns: How to Make Objects
… one place that knows how to create notifiers function createNotifier(type) { const Notifier = notifiers[type]; if (!Notifier) throw …
- SOLID at a Glance
… injected abstractions this.repository = repository; this.notifier = notifier; } async publish(report, exporter) { const file = exporter.export(report); // L …
- Hexagonal Architecture (Ports & Adapters)
… LoanRepository, private readonly notifier: Notifier, private readonly clock: Clock, ) {} async borrow(memberId: string, bookId: string): Promise<Loan { if …
- KISS: Keep It Simple, Stupid
… welcomeTemplate(user) }); } When you have five notification channels, a strategy pattern may earn its place. With one, it …
- Event-Driven Architecture
… Event notification Just "something happened" + an ID { type: "OrderPlaced", orderId: "o42" } ; consumers call back for details Tiny events …
- Design a Chat Application
Deliver live messages without losing them by separating durable messages from fan-out, presence and offline notifications. ![Chat …
- Real-Time, Pub/Sub, Webhooks and CDC
… One-way stream; reconnect with event ID Webhook Notify another server Sign, retry and make receiver idempotent WebRTC …
- Behavioral Patterns I: Observer, Strategy, Command, State
… You subscribe once; every new video, you get notified. The channel doesn't know or care who you …
- What Are Design Patterns?
… S["💡 Solution<br/ subscribers register;<br/ the subject notifies them"] S -- C["⚖️ Consequences<br/ loose coupling, but<br …
- React vs Vue vs Angular
… signals (+ zone.js legacy)"] A1[signal changes] -- A2[dependents are notified] -- A3[update affected views] end - React re …
- Service Communication: Sync vs Async
… REST / gRPC] Q1 -- no Q2{Is it a notification<br/ that something happened?} Q2 -- yes Ev[Publish an …
- Caching & Redis
… consumer groups Pub/Sub PUBLISH , SUBSCRIBE Real-time notifications, chat js // Leaderboard in 3 commands await redis.zAdd …
- Domain-Driven Design: Strategic Design
… whenever… then…") 🟪 Lilac Whenever payment fails, then notify the customer External system 🩷 Pink Stripe Hot spot …