Android Infrastructure, the Workings behind the Curtain

Tools and Techniques
Location: Portland Ballroom
Average rating: ***..
(3.17, 6 ratings)

Pull back the metaphorical curtain of any popular open source project and you will find a support structure that is holding the whole thing together, often with duct tape, spit and chewing gum. This is particularly true of large projects that have grown rapidly, like Google’s Android project. It now encompasses an uncountable number of devices, from phones and tablets to microwaves. We aim to layout how the infrastructure works, what pain points have come up and try and get feedback from the community on what they might want more of or generally need.

Things covered

  • Git – The Source code
  • Repo – Why it’s needed, what it does and why it works
  • Gerrit Code Review
  • Gitweb
  • The hardware needed to serve thousands of worldwide developers
Photo of John Hawley

John Hawley


John ‘Warthog9’ Hawley led the system administration team on for nearly a decade, leading a team including four other administrators. His other exploits include working on Syslinux, OpenSSI, a caching Gitweb, and patches to bind to enable GeoDNS. He’s the author of PXE Knife, a set of interfaces around common utilities and diagnostics tools needed by an average systems administrator, as well as SyncDiff(erent) a state-full file synchronizer and file transfer mechanism. He currently works for Intel working on Open Hardware, and the Minnowboard. In his free time he enjoys cooking extravagant meals and watching bad movies.

Shawn Pearce


Shawn Pearce has been actively involved in Git since early 2006. Shawn is the original author of git-gui, a Tk based graphical interface shipped with git, and git fast-import, a stream based import system often used for converting projects to git. Besides being the primary author of both git-gui and git fast-import, Shawn’s opinion, backed by his code, has influenced many decisions that form the modern git implementation.

In early 2006 Shawn also founded the JGit project, creating a 100% pure Java reimplementation of the Git version control system. The JGit library can often be found in Java based products that interact with Git, including plugins for Eclipse and NetBeans IDEs, the Hudson CI server, Apache Maven, and Gerrit Code Review, a peer code review system specially designed for Git. Today he continues to develop and maintain JGit, EGit, and Gerrit Code Review.

Comments on this page are now closed.


Picture of Benoit Sigoure
Benoit Sigoure
07/29/2011 5:29am PDT

Quite surprised that the whole thing hasn’t been sharded yet. Maybe gitweb itself doesn’t lend itself to sharding easily. The Google way of solving this problem would be to use a whole bunch of little 1U boxes, each serving a subset of the repos, and dispatch requests to the appropriate boxes. Can’t Google dedicate some engineering time to solve this problem and build in the open-source a better, scalable way of serving tons of Git repositories to many people?

Mark Deason
07/29/2011 5:17am PDT

truly behind the curtains, but cool anyway