Design Patterns: Guides and Practical Know-how | Page 9 | mironsoft Blog
Design Patterns
-
Sep 16, 2025
=== only compares objects by reference identity, and JSON.stringify fails on key order, maps, sets and dates. A hand written deep equality function compares values recursively by structure instead of reference and covers exactly the data types the simple approaches regularly fail on.
-
Sep 14, 2025
Event driven microservices replace synchronous REST calls between services with asynchronous integration events distributed through Symfony Messenger onto a shared broker. This article shows how the transactional outbox pattern solves the dual write problem, how consumers stay idempotent, how event schemas can be versioned, and when a saga orchestrator becomes necessary for distributed business processes.
-
-
Sep 7, 2025
A soft delete marks a row as deleted without physically removing it, sounds like a single extra column, and turns out in practice to be a source of unique constraint conflicts, bloated indexes, and forgotten WHERE clauses. This post shows three established models for soft deletes and explains when each one truly fits.
-
Sep 7, 2025
Anyone validating a checkout form with shipping and billing addresses, payment data, and contact fields against a single global error object quickly loses the overview. A well designed validation group per business section makes errors visible per area, keeps Alpine components maintainable, and helps screen reader users orient themselves inside the form.
-
-
-
Aug 29, 2025
As soon as several AI agents collaborate on a task, how they exchange information becomes the actual architecture decision. Communication patterns such as direct handoff, shared state, structured messaging and the blackboard pattern differ significantly in context consumption, coupling and error proneness, and the wrong choice quickly leads to context loss or conflicting intermediate states.
-
Aug 20, 2025
Assessing technical debt with AI means letting Claude systematically search the entire codebase for risk indicators, instead of relying on the gut feeling of individual developers. Claude finds outdated dependencies, missing tests in critical paths and architectural erosion, prioritizing by actual business risk instead of subjective annoyance.
-
Aug 19, 2025
Web Components are a group of native browser APIs for building encapsulated UI building blocks that work without a framework runtime. Custom Elements, Shadow DOM and HTML Templates enable components that work equally well in React, Vue, Angular and plain HTML, a strong fit for design systems that span team and stack boundaries.