Loose Coupling and High Cohesion to think locally

Published on

Just a random thought:

pasted-image-20250715094744

Useful software is complex. But our brain in limited on how much complexity it handles. Thus, we need an algorithm to structure a system, that we can think only locally. Each module needs to be handle-able with my brain. The complexity needs to stay below my threshold.

The same goes with coding agents by the way - the same principles apply. I guess loose coupling and high cohesion will get a new hype cycle as soon coding agents become more common in real software development.

Drawings

pasted-image-20250715094442 Complexity will exceed my limits

pasted-image-20250715094524

By putting stuff into modules, I increase the total amount of (accidental) complexity, but the complexities don’t longer add up but stay local, staying under my threshold.

pasted-image-20250715094625 I can even do this recursively, trading even more total complexity for staying under the threshold longer. A tree screams log, which sounds nice.