#188 - Balancing Coupling in Software Design: Principles for Architecting Modular Software Systems - Vladik Khononov

#188 - Balancing Coupling in Software Design: Principles for Architecting Modular Software Systems - Vladik Khononov

“Coupling is an inherent part of system design, not something that is necessarily good or evil. How we design coupling can take our system either towards complexity or towards modularity."

Vladik Khononov returns to the podcast to discuss his latest book “Balancing Coupling in Software Design”. In this episode, Vlad revisits the essence of coupling, a term often not fully understood, and explores its implications on software complexity and modularity.

Vlad introduces the concept of shared lifecycle and shared knowledge, revealing the hidden dependencies that can undermine even the most well-intentioned designs. He also explains complexity through the lens of the Cynefin framework and delves into the differences between essential and accidental complexity.

One of the episode’s highlights is Vlad’s unique framework for evaluating coupling. He introduces the three dimensions of integration strength, distance, and volatility, providing a practical model for assessing and balancing coupling in software design. He also challenges traditional definitions of modularity, emphasizing the importance of knowledge boundaries.

Whether you’re a seasoned tech lead or an aspiring software engineer, this episode offers invaluable insights into building maintainable and modular software systems. It will leave you with a deeper appreciation for the delicate balance between coupling and complexity.

Listen out for:

  • Writing about Coupling - [00:03:28]
  • Coupling - [00:06:09]
  • Shared Lifecycle & Knowledge - [00:08:17]
  • Cynefin - [00:12:28]
  • Essential vs Accidental Complexity - [00:19:00]
  • Modularity - [00:22:45]
  • Abstraction & Knowledge Boundary - [00:29:04]
  • 3 Dimensions of Coupling - [00:36:25]
  • Balancing Coupling - [00:58:11]
  • 3 Tech Lead Wisdom - [01:02:30]

_____

Vladik Khononov’s Bio
Vlad Khononov is a software engineer with extensive industry experience, working for companies large and small in roles ranging from webmaster to chief architect. His core areas of expertise are distributed systems and software design. Vlad consults with companies to make sense of their business domains, untangle monoliths, and tackle complex architectural challenges. Vlad maintains an active media career as a public speaker and author. Prior to Balancing Coupling in Software Design, he authored the best-selling O’Reilly book Learning Domain-Driven Design. He is a sought-after keynote speaker, presenting on topics such as domain-driven design, microservices, and software architecture in general.

Follow Vladik:

_____

Our Sponsors

Enjoy an exceptional developer experience with JetBrains. Whatever programming language and technology you use, JetBrains IDEs provide the tools you need to go beyond simple code editing and excel as a developer.
Check out FREE coding software options and special offers on jetbrains.com/store/#discounts.
Make it happen. With code.


Manning Publications is a premier publisher of technical books on computer and software development topics for both experienced developers and new learners alike. Manning prides itself on being independently owned and operated, and for paving the way for innovative initiatives, such as early access book content and protection-free PDF formats that are now industry standard.
Get a 40% discount for Tech Lead Journal listeners by using the code techlead24 for all products in all formats.


Like this episode?
Show notes & transcript: techleadjournal.dev/episodes/188.
Follow @techleadjournal on LinkedIn, Twitter, and Instagram.
Buy me a coffee or become a patron.

Tämä jakso on lisätty Podme-palveluun avoimen RSS-syötteen kautta eikä se ole Podmen omaa tuotantoa. Siksi jakso saattaa sisältää mainontaa.

Jaksot(282)

The IT/OT Handbook: From Silos to Sustainable Digitalization - David Ariens & Willem van Lammeren

The IT/OT Handbook: From Silos to Sustainable Digitalization - David Ariens & Willem van Lammeren

Why can’t you “move fast and break things” in a factory? Because a small software bug doesn’t just crash an app, it can shut down a plant the size of a small city. David and Willem explain the hidden ...

28 Syys 1h 7min

Don't Outsource Your Thinking: How to Lead in the AI-Native Era - Emilie Schario

Don't Outsource Your Thinking: How to Lead in the AI-Native Era - Emilie Schario

What’s the one rule that matters most when AI writes most of your code? Emilie says it comes down to a single line: don’t outsource your thinking.In this episode, Emilie Schario, co-founder of Kilo Co...

7 Syys 59min

The Father of AI Assistant on Why Joy Comes Before Success - Kevin Surace

The Father of AI Assistant on Why Joy Comes Before Success - Kevin Surace

If you’re not using AI five times an hour, you’re already behind, says the man who built the first AI assistant back in 1998. Kevin explains why that pace is now the baseline, not the exception, for d...

24 Elo 55min

Software Engineering Laws Every Developer Must Know in the AI Era - Milan Milanovic

Software Engineering Laws Every Developer Must Know in the AI Era - Milan Milanovic

Does moving faster with AI mean you get to skip the laws that governed every software project before it? Milan Milanovic argues the opposite, the old laws of software engineering now apply twice as ha...

10 Elo 1h 1min

Signals & Levers: Systems Thinking to Navigate Software Delivery Illusions - Elisabeth Hendrickson & Joel Tosi

Signals & Levers: Systems Thinking to Navigate Software Delivery Illusions - Elisabeth Hendrickson & Joel Tosi

(04:48) Brought to you by SpeechifyAITired of text-to-speech that sounds robotic or costs too much at scale? SpeechifyAI's new Simba 3.2 model ranks #1 on Artificial Analysis for realness, priced unde...

3 Elo 1h 17min

From Technical Debt to Triple Debt: The Hidden Cost of AI-Generated Code

From Technical Debt to Triple Debt: The Hidden Cost of AI-Generated Code

Is vibe coding quietly draining the thing that makes teams effective: their shared understanding? Margaret breaks down her new “triple debt” model, and why cognitive debt might be the one nobody’s tra...

27 Heinä 1h 10min

Ex-Gojek CTO: Why the Age of AI Rewards Builders as Judgment Becomes Expensive

Ex-Gojek CTO: Why the Age of AI Rewards Builders as Judgment Becomes Expensive

If expertise is becoming almost free, why is judgment becoming the most expensive skill in tech? Ajey Gore, former Gojek CTO, explains why the age of AI agents rewards builders over typists.In this ep...

13 Heinä 1h 22min

The AI Productivity Paradox: Why 10X Output Doesn't Mean 10X Business Outcome

The AI Productivity Paradox: Why 10X Output Doesn't Mean 10X Business Outcome

What if optimizing for AI output is actually slowing your company down? When code becomes nearly free to produce, the organizations still measuring productivity by output are solving the wrong problem...

29 Kesä 1h 5min