Hacker News new | ask | show | jobs
by exabrial 634 days ago
Yes? but that really isn't the problem. You can do both monoliths and micro-services badly.

The real thing that makes software easy to maintain is consistency with itself.

If you have one guy that formats his code with spaces and another tabs, that creates friction in the codebase. If you have one guy that always uses `const` or `final`, but another guy that doesn't, again hard to maintain.

The hard problems are boundaries between business logic is divided. If the application is consistent in how it divides responsibilities, it'll be a pretty clean codebase and pretty easy to navigate and maintain. If you have two different rouge agents that disagree on coding styles and boundaries, you'll have a pretty difficult codebase to navigate.

The easiest codebases have consistent function signatures, architecture, calling conventions, formatting, style, etc and avoid "clever" code.