4 ms·
This paper from last year surveys Google “engineers who have experience with both monolithic repos and multiple, per-project repos” to see what exactly they lik
by svat 8y ago
This paper from last year surveys Google “engineers who have experience with both monolithic repos and multiple, per-project repos” to see what exactly they like and dislike about monorepos. The results match my experience, and I find the paper well-written (especially like the “Threats to Validity” section that says what biases may have affected the results; more papers and arguments should have them IMO).
Older reading on monorepos that I'm aware of:
• Dan Luu, Advantages of monorepos (2015) http://danluu.com/monorepo/ http://danluu.com/monorepo/
• Why Google Stores Billions of Lines of Code in a Single Repository (2015): https://cacm.acm.org/magazines/2016/7/204032/fulltext https://cacm.acm.org/magazines/2016/7/204032/fulltext (HTML) / https://cacm.acm.org/magazines/2016/7/204032-why-google-stores-billions-of-lines-of-code-in-a-single-repository/pdf https://cacm.acm.org/magazines/2016/7/204032-why-google-stor... (PDF) / https://www.youtube.com/watch?v=W71BTkUbdqE https://www.youtube.com/watch?v=W71BTkUbdqE (video)
This paper is from the “Software Engineering in Practice” track of the ICSE 2018 conference:
• https://www.icse2018.org/track/icse-2018-Software-Engineering-in-Practice https://www.icse2018.org/track/icse-2018-Software-Engineerin...
- svat 8y agoWhat engineers like the most: • “I can search across our company's source code” Interesting point: “Reduction of cognitive load” and “available developer tools” are cited as advantages of both monorepos and multi-repos.
- reacweb 8y agoYes. There are different kinds of programmers, different way of thinking. Just as there are personality tests, there could be tests to identify what type of developer you are to select a set of tools and configurations that are better matched.
- 0xdeadbeefbabe 8y agoWould it be naughty (legally) to discriminate based on the results of this test?
- ses1984 8y ago>In both cases, the related tooling is also a significant factor; engineers favor particular tools and are drawn to repo management systems that support their desired toolchain. >Like virtually all choices in computing, the choice of whether to use a monolithic or multi-repo model is a comparison of tradeoffs.
- pm90 8y agohttps://github.com/korfuri/awesome-monorepo https://github.com/korfuri/awesome-monorepo