# Brendan Cody-Kenny: Modularity comes with a cost, so make sure you actually need the separation before you pay for it

Technical Due Diligence for Software M&A https://sub.xiliary.com/p/brendancodykenny

### 2026-09-29 reading #microservices #modularity #software-engineering
Modularity comes with a cost, so make sure you actually need the separation before you pay for it
- GitLab merged its Workhorse middleware into the main codebase: it was permanently coupled to Rails, so the separation was pure overhead
- Fowler and Atwood's rule of three: don't abstract until the pattern is proven three times. The same logic applies to splitting code apart
- Counterexample: Meltano stayed inside GitLab until it operated independently, then was spun out
- https://gitlab.com/gitlab-org/gitlab-foss/-/issues/54299
- https://gitlab.com/gitlab-org/gitlab/-/merge_requests/48690
- https://blog.codinghorror.com/rule-of-three/

https://sub.xiliary.com/p/brendancodykenny/posts/18/modularity-comes-with-a-cost-so-make-sure-you-actually-need
