A comprehensive guide to choosing software architecture: decision frameworks, trade-off analysis, CAP theorem, architecture decision records (ADRs), evolutionary architecture, combining patterns, anti-patterns like resume-driven development, case studies from startup to enterprise, and an architecture review checklist.
A comprehensive guide to domain logic patterns from Martin Fowler's PoEAA: Transaction Script for simple operations, Domain Model for complex business rules, Table Module for data-centric apps, and Service Layer for coordination. Includes code examples in TypeScript and Java.
A comprehensive guide to serverless architecture: FaaS vs BaaS, AWS Lambda and Azure Functions, cold starts, stateless design, event triggers, serverless databases, composition patterns, cost models, limitations, frameworks, and when serverless makes sense vs traditional servers.
Master Martin Fowler's enterprise patterns — domain logic, data source, ORM, distribution, concurrency, and session state patterns. A comprehensive roadmap for building maintainable enterprise applications.
A comprehensive guide to Domain-Driven Design: bounded contexts, ubiquitous language, context mapping, entities, value objects, aggregates, repositories, domain events, aggregate design rules, anti-corruption layer, event storming, DDD with microservices, and when DDD is overkill.
A comprehensive guide to hexagonal architecture: ports and adapters, driving vs driven sides, dependency inversion at the core, practical folder structure, testing with mock adapters, comparing to layered architecture, and real-world examples of swapping infrastructure.
A comprehensive guide to event-driven architecture: events vs commands vs queries, message brokers (Kafka, RabbitMQ), pub/sub vs point-to-point, choreography vs orchestration, idempotency, schema evolution, dead letter queues, and practical implementations.
A comprehensive guide to CQRS and Event Sourcing: separating read and write models, events as source of truth, projections, snapshots, eventual consistency, practical implementations, and when these patterns add unnecessary complexity.
A comprehensive guide to microservices architecture: core principles, service boundaries, inter-service communication, data management patterns, API gateways, testing strategies, organizational alignment, and when NOT to use microservices.
A comprehensive comparison of MVC, MVP, and MVVM architectural patterns — their origins, how they separate concerns in UI code, practical implementations in Spring MVC, Android, Angular, and React, and how to choose the right pattern for your project.