Last July, the venture capital firm Andreessen Horowitz turned heads when it invested $100 million in GitHub, which the Wall Street Journal dubbed "a little-known social coding startup." In fact it was already well known to coders, more than 1.7 million of whom had accounts with GitHub at the time. According to the GitHub home page, that number has already risen to nearly 2.5 million.
Tom Preston-Werner is co-founder and, as far as I can determine, the CEO of GitHub; the company's DNA does not appear to support a hierarchical management structure. I interviewed Preston-Werner in GitHub's San Francisco offices partly to hear more about the unusual company culture, but mainly for insight into why the cloud-based version control and repository system has such a devoted developer following -- and of course, to learn what a 100-person ubergeek startup planned to do with $100 million in smart money.
[ Find out the topics and issues affecting tech's biggest names and news makers as revealed in the IDGE Insider CEO interview series. | Stay ahead of the key tech business news with InfoWorld's Today's Headlines: First Look newsletter. | Read Bill Snyder's Tech's Bottom Line blog for what the key business trends mean to you. ]
Prior to the investment, GitHub subsisted on charging businesses for GitHub accounts in the usual SaaS style: per account, per month, with the fee dependent on the number of private code repositories. That revenue was augmented last November by GitHub Enterprise, a downloadable version that enables companies to host their own GitHub cloud ($5,000 per 20-seat pack per year). Accounts for open source development, with unlimited collaborators and open repositories, have been free of charge from the beginning.
The interview with Preston-Werner, an edited version of which appears below, began with a few questions about GitHub's origin.
Eric Knorr: When did you see the need for new collaborative development tools that weren't available at the time?
Tom Preston-Werner: At my previous job we were using Subversion, and Git was just starting to become known. Git was invented by Linus Torvalds [to version] the Linux kernel. That's where it started. It started making its way into the Ruby programming community, which was where I come from, so one of my friends introduced it to me and we started using it sort of surreptitiously at work.
The biggest thing Git does for you that's great is easy branching. This is fundamental to what makes GitHub powerful: It's easy to have your project, and then in your own sandbox, local to your own machine, you can create a new branch and work on an experiment. It frees you from the main line of development. In the Subversion world, you're pretty much always developing on the main line, because branching in Subversion is a huge pain in the ass.
Knorr: Why is that?
Preston-Werner: In Subversion, any changes that you make, you commit back to the main line. When you do that, it automatically syncs it up to the server; that is how Subversion works -- which is very dangerous, so everyone's always in fear of breaking the build.
Knorr: What in your experience made you decide easy branching was essential? There's not much out there about you or your background. Your Wikipedia entry has been deleted.
Preston-Werner: Oh, it just got deleted. I know. It's very sad. I'm no longer noteworthy. That's a bummer.