News for hackers. Stuff that matters.

spectral321

Re:Google Is 2B Lines of Code, All in One Place on Wednesday September 16, 2015 @02:50PM (#10228860)
The talk did mention (briefly) that monolithic codebase and monolithic binaries/software aren't strictly related. It's likely that monolithic software is easier in a monolithic codebase, but I don't think that microservices are harder in a monolithic codebase. Yes, we tend to statically link, but that's for library dependencies (i.e. things like the protocol buffers libraries/definitions). I don't work at all in this area, so this is a guess, but I imagine that it's extremely rare for unrelated teams to have application logic linked into the same binary - just making a release would involve coordination from so many teams :)
Re:Google Is 2B Lines of Code, All in One Place on Wednesday September 16, 2015 @02:42PM (#10228809)
Git is fine at scaling horizontally (many repositories), so things like GitHub work well. Neither Git nor Mercurial do well at scaling to a single massive repository; getting Mercurial to do so was easier because we can implement it as out-of-core extensions (see http://bitbucket.org/Google/narrowhg, for example).

There's also internal-only things to deal with, such as the CitC integration. Because of some of the design decisions behind CitC, storing a typical .git or a .hg directory in CitC is essentially impossible. Mercurial's .hg directory is intentionally a black-box - you interact with the repo using the hg tool. The .git directory can be seen as an API - there are at least three implementations that matter for our purposes, and if we change something in the .git directory, we lose the editor/IDE integration powered by the ones we didn't fix (or we did fix, but they haven't been released yet; some of those are linked into products that have a commercial release cycle).

Re:Google Is 2B Lines of Code, All in One Place on Wednesday September 16, 2015 @02:27PM (#10228709)
Google isn't using Mercurial at any significant scale, but there is work being done to see if it can be made to work as a client for Piper.
Re:Google Is 2B Lines of Code, All in One Place on Wednesday September 16, 2015 @02:25PM (#10228693)
They are unrelated. :)