DHH's 'Microservices as a Scam' Claim Ignites Debate, Architect Pinpoints Coupling as the Real Culprit
David Heinemeier Hansson (DHH) recently stirred the software development community with his provocative assertion that microservices represent ‘the software industry’s most successful confidence scam,’ particularly for small teams. Derek Martin of codepinion.com acknowledges the validity of DHH’s described pain points, such as increased operational complexity with individual pipelines, secrets, and monitoring, and the difficulties of multi-service debugging. However, Martin argues that these symptoms often mask a deeper, more fundamental issue: coupling. He contends that the debate should move beyond ‘microservices good or bad’ to address the underlying design flaws that lead to these problems.
Martin clarifies that microservices are primarily a physical architecture choice introducing network boundaries, which can expose existing coupling—especially temporal coupling—that might remain hidden in a monolithic structure. The key, he states, lies in defining strong logical boundaries regardless of the physical architecture. He proposes a ‘loosely coupled monolith’ approach, where a single codebase contains well-defined logical services with clear contracts and owned data schemas, allowing for easier refactoring and eventual independent deployment if warranted by specific business needs and value. Martin agrees with DHH that the notion of monoliths not scaling is one of ‘the dumbest lies in modern engineering folklore’. Ultimately, the decision to adopt microservices should be a deliberate trade-off, where the significant cost of network boundaries and operational overhead is justified by tangible value like independent deployability, rather than a default choice or a solution to poorly managed coupling.