4 ms·
Wondering if anyone can confirm this, but.... I saw somewhere that part of the problem at google is how their mono repo code base is so cumbersome that they ar
by game_the0ry 3y ago
Wondering if anyone can confirm this, but....
I saw somewhere that part of the problem at google is how their mono repo code base is so cumbersome that they are more likely and willing to kill services just because of the maintenance overhead of maintaining the code.
Any insight from Xooglers? I feel like I read this somewhere on here or reddit, but can't recall the specifics.
- UncleMeat 3y agoAm Googler. I do a lot of work on google3 code health and maintenance. I do not think that this is the primary cause of product turndowns. Messy product design, left-hand/right-hand problems, internal politics, unfunded regulatory mandates, and other organizational complexity seem like much more direct causes. People like to add promotion-focus to this list but I don't actually buy that since there are tons of Googlers who are happy at their current level and want to maintain stuff even we if take it as a given that maintenance can't get people promoted. VPs showing up and changing org priorities so that various products no longer match the priorities and then get their funding cut is way more common. I do think that there is something to the fact that the monorepo and single-version rule means that sometimes a team says "we are changing how you do X with our system, everybody needs to update by Date Y" and then the bulk of teams upgrade but there's some project with a skeleton crew doing maintenance and it is not possible to fund the upgrade and so the entire project gets deleted instead. However, I also think that the monorepo is a superpower. What I describe above is a problem but there are so many incredible benefits (under the assumption that you've got tooling as good as Google's) that I feel that the benefits dramatically outweigh the costs. Comparing the code quality of the stuff in google3 vs the stuff in various isolated git repos is night and day.
- game_the0ry 3y ago> I do think that there is something to the fact that the monorepo and single-version rule means that sometimes a team says "we are changing how you do X with our system, everybody needs to update by Date Y" and then the bulk of teams upgrade but there's some project with a skeleton crew doing maintenance and it is not possible to fund the upgrade and so the entire project gets deleted instead Yeah that sounds familiar and sort of makes sense.