5 ms·
Yes, and an intern would be subject to a code review before pushing to master - no way would they have write access to the "master" repo.
by TD-Linux 13y ago
Yes, and an intern would be subject to a code review before pushing to master - no way would they have write access to the "master" repo.
- slig 13y agoYes, but the new intern would be able to read all the source and "secret sauces". I doubt that an intern on Google would've access to the search codebase. I'd wager that only a handful of trusted employees have access to that codebase.
- Jasper_ 13y agoAll Google code is stored in one master repository, for all products. An intern can look at the search code.
- skj 13y agoNot so. Search is specifically sequestered.
- why-el 13y agoGoogle is also one source tree I think.
- Theodores 13y agoSo it is like the Coca Cola recipe? Only two people allowed to know it and not allowed to get the same flight? Yet everyone else able to mix and serve the syrup?
- Moto7451 13y agoIf you don't trust your employees why did you hire them? Besides, the source code isn't where FB's money is at, that would be their users.
- slig 13y ago> If you don't trust your employees why did you hire them? On a small company, I agree. But on FB they're around 5k people. Let's say they have 3k engineers, that's a awful lot of people they're trusting with their source code
- deleted 13y ago[deleted]
- skj 13y agoYou are correct for the search codebase - it is separate from the main tree, as is a lot of the core ad placement code. If you aren't working on those projects, you don't have access.
- vmarsy 13y agoIndeed the process of facebook code deployment is pretty complex: https://www.facebook.com/publications/514128035341603/ https://www.facebook.com/publications/514128035341603/ And I assume they have extra requirements for interns to push code.
- d_j_b 13y agothat is a fascinating article, thank you. i like the idea of 'push karma'.
- vmarsy 13y agoYou're welcome! I really liked the 'push karma' too. I liked this idea too : "all engineers who contributed code must be available online during the push. The release system verifies this by contacting them automatically using a system of IRC bots; if an engineer is unavailable (at least for daily pushes), his or her commit will be reverted." That way, they are be able to react very quickly in case of a problem.
- Myrmornis 13y agoBut this isn't a magic bullet...a commit can't always be reverted without conflicts, and even if reverted there's no guarantee that it leaves the codebase in a correct state. (Guess I should read the article you're talking about.)