3 ms·
Architecture is just dividing pain into different buckets. Large repositories are painful, as each developer bears the pain of integration every time they have
by wpeterson 11y ago
Architecture is just dividing pain into different buckets.
Large repositories are painful, as each developer bears the pain of integration every time they have to make a change to the repository integrating with all of the other code.
Small, distributed repos are painful when change accrues in larger increments and must be resolved at release/integration time.
As a developer in one of the largest monolithic repos in the world, I feel the pain every day of that pattern.
- wpeterson 11y agoPerhaps a better way of framing this is: Distributed repos make writing software easier. Monolithic repos make testing and running software easier. Large monolithic repos are an artifact of scale where the individual cost of lost productivity in development is worth the increased performance at deployment and testing.
- itsdrewmiller 11y agoWhy do you think integration is more painful in larger repositories? Presumably the architecture of the code is unchanged.
- wpeterson 11y agoWhen you have separate repos, the external code and integration points remain relatively static. IE: You may consume an API, but it's versioned/snapshotted at a given version. With a monolithic repo, especially without development branching - everyone is running against HEAD all the time. So while you are developing your component, everything else is changing around you.