architecture Essential Reading: A Philosophy of Software Design — Fighting Complexity One Module at a Time josedacruz, September 30, 2026September 30, 2026 TL;DR: John Ousterhout argues that software complexity doesn’t arrive as one big mistake — it accumulates in small increments, one shortcut at a time, until a codebase becomes hard to change without breaking something else. His fix is to design “deep” modules: pieces of code with a simple interface that… Continue Reading
architecture Essential Reading: The Mythical Man-Month — Why Adding People to a Late Project Makes It Later josedacruz, September 23, 2026September 23, 2026 TL;DR: When a software project falls behind, the instinctive fix is to throw more people at it. Fred Brooks spent a career learning why that instinct is wrong, and wrote it down so the rest of us wouldn’t have to relearn it the expensive way. For anyone who plans, staffs,… Continue Reading
architecture Why Nobody Wants to Own the Shared Library (And What It Costs You) josedacruz, August 4, 2026August 4, 2026 TL;DR: Shared libraries usually start with good intentions: one team pulls duplicate code into a common package so everyone benefits. The problem is nobody assigns a permanent owner, so when the original team moves on, the library keeps running but nobody is responsible for fixing it. This piece walks through… Continue Reading
architecture The Strangler Fig Pattern: How to Replace a Legacy System Without a Big-Bang Rewrite josedacruz, July 30, 2026July 30, 2026 Every few years, a team decides their old system is too messy to keep working with, and someone says the magic words: “Let’s just rewrite it from scratch.” Six months later, the rewrite still isn’t done, the old system still has bugs nobody is fixing because “we’re replacing it soon… Continue Reading
decision-frameworks Decision-Making: First Principles – Software Architecture josedacruz, April 21, 2025April 21, 2025 Making architectural decisions in software is often as much about mindset as it is about technology. Too often, teams default to trends, frameworks, or familiar patterns without deeply questioning if they’re truly right for the problem at hand. That’s where First Principles Thinking becomes a game-changer. What Is First Principles… Continue Reading
Systems Thinking Thinking in Systems – An Introduction josedacruz, April 20, 2025April 20, 2025 Welcome to a practical and eye-opening introduction to Thinking in Systems — a powerful way to understand and navigate complexity in your daily life, work, and projects. In this video, you’ll discover:✅ What a system really is (it’s more than just tech)✅ The 3 essential parts of any system: Elements,… Continue Reading