Hacker News new | past | comments | ask | show | jobs | submit login
Ask Tom Preston-Werner, cofounder of GitHub, anything Today, Mon 18 Oct 2010.
144 points by mojombo on Oct 18, 2010 | hide | past | favorite | 139 comments
Two days ago I had the pleasure of speaking at Startup School. Never before have I see such a high concentration of smart ambitious people in one place.

I've posted a followup on my blog at http://tom.preston-werner.com/2010/10/18/optimize-for-happiness.html that covers some of the ideas I introduced in more detail.

Since I only had about 25 minutes for the talk and 5 minutes for questions, I wanted to make myself available for additional questions. So today I'll be answering any questions you have here on Hacker News.

Ask away!

Working fulltime for Powerset, how did you avert any potential IP issues with Powerset? Employee contracts for just about any big tech company includes provisions that automatically makes all types of IP (including inventions and copyrights) developed by the employee belong to the company. This applies even if the work is done completely on the sides and outside work hours.

California specifically has laws that allow employees to claim inventions of their own but still under terms that are more favorable to the employer (I can supply details). There's no help for copyrightable works, which would include software, or even a written plan for developing this software.

I certainly have this issue currently preventing me from doing any work to bootstrap while I am still employed. Most people I spoke to at SUS2010 who are working on side projects are completely unaware of the issue. Some are ignoring it thinking that it must somehow work out.

On the other hand, every successful founder I spoke to, either did not have this issue (founded right after school, etc.), or did not do any work before quitting (which they did either before or after securing funding).

ProTip: Just because someone puts a form in front of you doesn't mean you have to sign it :)

That form (release of inventions) scared me the first time I saw it (agency job) and I asked if I could just not sign it — they said that was fine. It's amazing how far you can get in life by just asking questions.

I did not know this more than half-a-decade earlier. I had even added the stuff I want to work on as an exception clause in the form. But it turns out that those apply only to (A) inventions/patents type of IP, and (B) work done prior to signing the form.

Reading the form that I signed, doing extensive online research, and then reading the form again, I found that the form has been very carefully crafted to take care of every type of IP possible and yet without violating any laws including those of California.

In my case at least, I am skeptical that not signing the form would have worked. But may be. I'll certainly be smarter next time around!

IANAL, but I believe in California you're pretty much safe if:

1) You only work on your own unpaid time and not in the company's facilities.

2) You only work with your own hardware/software.

3) You don't do anything even tangentially related to your employer's line of business.

I do not believe #3 is really a hard requirement, but it significantly decreases your chances getting sued (and losing if you do get sued anyway).

(A) This applies only to inventions and patents. All other IP (including copyrightable material) like software and documents is still at issue.

(B) Indeed. Nothing is a hard requirement until you get asked in the court, "what made you think this was not a hard requirement when it's written in California code".

Tom, I would like to thank you for giving us this opportunity (in addition to the beautiful talk you delivered at the school). While I am not fully confident that I'll be ABLE to optimize for happiness, I certainly got the message. Thanks again.

Talk about how you started getting out into the community and connecting with real users. IE - how you got Github drinkups off the ground. As a company with a small but growing number of happy developers around our platform (notifo.com), we'd love to attempt something similar.

We are thinking about doing things like API contests to help grow the community as well as occasional meetups.

unrelated- whose idea was it to give away pappy van winkel? I recall some old contest you guys ran. Did that contest fare well.. how'd you publicize it? Sorry for all the questions!

I used to go to a lot of Ruby meetups. While the talks were generally high quality, my favorite part was always going to the bar afterwards and talking with fellow coders about what got them excited. This is where new ideas really get started.

We decided that we wanted to take that part of the meetup and make it a first class citizen, so we started the GitHub Drinkups. If there's one thing that I've learned about leadership, it's that all people need in order to participate in something is an invitation.

So my advice is this: whatever you're thinking about doing, just do it. You'll find out quickly what does and does not work. If nobody comes to the meetup or nobody signs up for the contest, then shrug it off and figure out what you need to change in order to make it work.

I don't remember whose idea the Pappy was. We like to present GitHub as a fun, edgy company. This has worked out really well at getting the attention of early adopters. Giving out booze was a great way to point at the "establishment" and make fun of how stodgy and limiting they are.

Indeed. GitHub has the mindshare to get a critical mass of people to their drinkups, but a lot of startups don't. But if those startups were to combine forces they might...

Proposal: GitHub used to do their San Francisco drinkup bi-weekly, now it's monthly. How about a bunch of smaller (popularity-wise) startups (or any project with a community) in SF fill in that gap?

This would also facilitate the "cross-polination" that GitHub drinkups achieve by bringing together different groups of people.

Cappuccino already has it's weekly "CPCoder Night" on Wednesdays but that's more sitting a cafe hacking and helping each other out with technical problems. I'd be happy to help organize something like I described above if people are interested (feel free to email me at the address in my profile if you're interested)

280 North + Notifo + X + Y + Z Drinkups.. I like it. Though 280 could probably pull off their own drinkup ;)

If there is enough interest in this from other local startups, I'll setup some google group where we can discuss logistics/planning.

This sounds like it would be easy to make an app for it. Just let everyone vote for their favorite bar for a drinkup in SF, and a day, and then you all show up.

We need a name. "Startups" + "drinks" = DRINKUP!

There's already a loose association of events called "Startup Drinks"... we've got a fairly popular one here in Pittsburgh.

you startuppers drink a lot :-P Joking, wish I was in SF ;-)

Well, there's no reason you can't have the same kind of event in other cities. In fact this model of batching a bunch of startups/projects together would be perfect for areas with a lower density of startups...

The smartest people I know want to do their own startups. It is getting easier, so more people are doing it. How do you hire in the face of this issue?

You do it by building a company so compelling that those people would rather join your company than start their own. You do this by optimizing for happiness and creating a culture that can't be ignored.

Are you recruiting at the moment? I couldn't see anything on github jobs...

Not currently. We usually approach specific people we want to hire and pitch them on coming to work for us.

If you weren't at SUS2010 and are going to only watch a few of the talks, I would highly recommend Tom's talk (as well as Brian Chesky's). He was extremely engaging, and the content (bootstrapping - "Optimizing for happiness instead of money") was great.

Tom -- Across the industry, figures such as 1% paid accounts seem to be typically mentioned. What sort of ratio do you see on Github between paid/free accounts? Do you see any difference in that ratio internationally vs. domestically?

It's higher than one percent, but we don't publicize those numbers. It's hard to compute the difference in ratio internationally vs. domestically because we only have the optional user specified location field to go off of.

Any anecdotal guesses from your drinkup experiences? Perhaps reworded, do you feel people are more or less willing to pay for SaaS domestically/internationally?

Yes, I've met all kinds of people while travelling that pay for GitHub accounts.

I'm always surprised at how many people have heard of GitHub in other countries. I think it shows how successful virality can be. We plant the seeds of GitHub usage in foreign countries through conference talks and drinkups, and the people that attend become patient zeros for the spread of Git/GitHub in those locales.

Err the Blog had about 10,000 readers when GitHub launched and Chris and PJ already had a ton of users of their popular Rails plugins.

This was a huge audience to launch to. What advice would you give to people who want to dive in to their own company without trying to build up such a huge following before hand?

Is it madness to try to bootstrap without establishing an audience beforehand?

I started Gravatar when I knew nobody and nobody knew me. It grew quite rapidly. The single most important lesson you can learn from GitHub and Gravatar is that virality and community can help turn any good idea into a huge success. Make something that people can use to show others how great they are. Kathy Sierra talks a lot about this concept. People love interacting with other people. Figure out how to make that work for your idea.

GitHub does a lot of amazing work, and you guys are all fabulous coders. However, when I've spoken to colleagues in person, there's a definite feeling that GitHub have a tendency to have some Not-Invented-Here syndrome: see CI Joe when Hudson was already mature and widely used. It seems like a lot of brain-cycles could have been saved and put elsewhere.

Do you think that's a fair comment? Is it something you think is necessarily negative?

We don't put up with any bullshit. If the existing software out there displeases us, no matter how mature it is, we'll be tempted to build something better. This is how progress is made. It's possible that we're duplicating effort somewhere, but we all cherish the act of creation, and if we think we can improve upon the situation, we will. Sometimes just for the sheer joy of it.

I'd wager that pretty much everything you use today was considered an act of NIH by someone at some point in the past.

Along these lines, thanks for pushing Unicorn (I know you didn't develop it in house, but it was obscure until you used it).

I think Chris was the primary one behind that decision, but I agree. Unicorn kicks ass!

Meant GitHub in general. Can't beat simplistic zero downtime rolling deploys!

Hi Tom - I saw your talk (streamed) from Startup School, loved it, and also read Drive over the weekend. I'm currently strongly considering bootstrappping my new company (healthmonth.com) similarly to how you've done.

Are you willing to share a bit more detail about the timeline of the first year when you went from 2 people to ? people... when you hired, how much you spent on salaries versus how much you were making in revenue (exact numbers not required), and how certain you were that revenue would continue to grow at the pace required to support your staff.

Also, what were the "other means" by which you supported yourself until GitHub was able to support you? Your jobs? Or something else?

It took three months to go from inception to private beta. We used an invite only system to introduce artificial scarcity and drive buzz on Twitter (each new signup got five invites to use). After six months we launched to the public and started charging for private repos. Because we had such a great beta period, we converted a large number of users that day and were making money immediately! For the next several months we put every dollar that we made into the company bank account and let it accrue.

One year after inception I was faced with a choice: take a full time position at Microsoft (Powerset had been acquired) or quit and go full time at GitHub. We were making enough money at GitHub to pay low salaries for the three cofounders and we decided to Hire Scott Chacon at the same time. So we went from zero to four full time salaries in one day, a year after starting it on the side.

Over the next six months we incrementally raised salaries for everyone as we hit specific revenue goals. So about 18 months after inception we were making decent salaries. We also hired Tekkub to do full time tech support in this timeframe. Our next hire was Melissa, our office manager a few months later.

As far as revenue at these milestones, we were always profitable. We only hired when we had the money to do so. For the first 18 months we didn't carry much balance in the bank account. We used it to hire great people.

Being a subscription service means that recurring revenue is extremely predictable. We've never had a month where revenue has dropped, and we can predict the increase in monthly revenue quite accurately as well. Growth has been surprisingly smooth (not spikey).

We now make money from GitHub.com, GitHub FI, Training, the Job Board, and merchandise.

Link to GitHub FI for anyone else who was unfamiliar with it: http://fi.github.com/

Who are your customers for GitHub FI? It seems that Github is SaaS done really, excellently right: I can have private repos up and running for a cheap cost in minutes. Is FI just for people who are very protective about who has access to their source code, or is it filling some other niche that SaaS can't handle?

There are a couple of different "types" of customers. Some, like you said, are just concerned about their code. Some are interested in control (meaning they control their backup policies, uptime, redundancy, etc.). Some want better integration (we support LDAP and CAS authentication, let you plug directly into various git hooks, that sort of thing).

Hosted plans work great for a bunch of companies, and self-hosted installs work great for a bunch of companies. Might as well help out both. :)

The biggest customer I can think of is the government, though I'm sure there are others.

Think the intelligence community, military, state, fbi, etc...anyone who has a "secret" network.

There's no way CIA is going to use github private repos(1), but having a github on their various networks is possible with FI.

(1) - they might use private repos for insensitive apps, but they wouldn't be allowed to do anything with a classification on a private repo.

What are your thoughts on non-technical founders (or early employees) at tech start-ups (like GitHub)?

Are there any non-technical people at GH? Would you consider hiring any? Why or why not?

(Full disclosure: I'm an engineer just coming off of a bad experience with a 'business' co-founder)

I don't have any experience with non-technical cofounders, but I don't think that I'd start an internet company with one unless they were the absolutely most well connected, proven person that was going to be instrumental in getting us into a difficult to enter industry.

We only have one non-technical employee, our office manager Melissa. She's absolutely essential to the team. We have no plans to hire other non-technical people right now, but that doesn't mean that we won't in the future. Who we hire depends on what skills we need.

When are new Github tshirts coming?

What are your thoughts on the BitBucket/Atlassian deal?

Are there any new features coming soon that you can give us a sneak peek at? I'd personally like to see some kind of "looking for contributors" interface (similiar to OpenHatch), maybe even with recommended projects based on my repos or the repos I have watched in the past.

The new shipment of Fork You shirts will arrive at our office today. We will get the inventory online right away!

The BitBucket/Atlassian deal is interesting. Especially the price points they think they need to establish in order to make their offering attractive. I really don't think about it too much, I'm too busy making GitHub the best place to collaborate on code!

We don't talk about planned features. We find that if you talk about what you're GOING to do, then people will just be angry that it's not finished yet. If you wait until you're done, then people will go crazy over the shiny new feature. Apple knows how this works. Judge for yourself which approach you think works better. =)

We're currently using Redmine to keep track of tickets, but it's a bit of a pain having to manage it separately from our code in GH. Are you guys planning on overhauling your issues system to be as slick as everything else you offer?

I can neither confirm nor deny that we're working on kickass improvements to GitHub Issues.

Are you guys hiring? Also, what other startups do you think are on the same level of awesome as GitHub?

We hire very slowly and very carefully. And we draw from our personal network first. The best way to get hired by GitHub is to be in San Francisco, come to the Drinkups, write awesome open source code or make insanely beautiful designs, and be a genuinely interesting and hard working person.

As for other startups, I don't really know firsthand the culture of many of them, but I do know the founders of CrowdFlower and they're amazing. And they're hiring. Go check them out.

Why did you choose git instead of hg, bzr, fossil, etc?

Also, what do you see as the future of git? Where is git going?

Git was the first distributed version control system that I spent any time with. It turned out that it was also the most elegant in construction and the most powerful in ability.

I think the future of Git is to become the technology on which really amazing, usable versioning and collaboration is built. Git the technology should be irrelevant to the end user. Git/GitHub the experience should be the best in the world. At least, that's the direction we intend to take it.

One thing I love about GitHub is that you embrace NIH in a good way - lots of cool technology has come out of GitHub because you were unhappy with the current solutions out there. What else have you cooked up internally that you might release to the world one day?

We have an awesome tool we call Haystack that we use to collect, categorize, and search exceptions and other notices. It uses MongoDB capped collections to keep the number of stored entries to a manageable level. "Needles" are simple JSON hashes and the views are customizable with Mustache. Exceptions can be rolled up based on a custom value provided by the producer. For instance, we roll up exceptions by filename and line number of origin. We use the hell out of it.

There are other projects, but nothing else that I'm able to talk about at the moment.

Do you think Haystack will ever be released to the public? If not, could you guys post a blog post on the GitHub blog or one of your personal blogs with more details? It sounds very interesting.

It's hard to say. We don't have a lot of extra bandwidth to put towards properly releasing these kinds of side projects. I'd love to get it into the public's hands someday though.

How do you decide what features to add or not add to Github? How much thinking, discussion, planning, design, research, etc go into each feature before coding begins?

We look for features that we want to use ourselves. It's usually quite apparent what areas of the site need some love or where entire features are missing. The things that get implemented are the things that are important enough for someone on the team to actually sit down and start working on. If you want a feature badly enough, you'll go build it. It turns out that this is a great filter for what is worthwhile.

Some features (like Pull Requests 2.0) spend many months in development before they're launched. PRs took about 8 months of off and on work before they were ready. Pressure from other team members will often serve as a catalyst for the implementors to finish what they started.

More strategic decisions often bubble up to the founders and we'll make a final decision on whether we need to hire additional people to make things happen faster.

In your blog post (http://tom.preston-werner.com/2008/10/27/looking-back-on-sel...), you say "As it’s become one of my favorite parables, I’ll save the details of how I came up with the idea for Gravatar for a future post."

When will that post happen? :-)

Oh, good point, I still need to write that. I'll put it on the list!

Can you share details about some critical decisions you made that led to the success of Github?

Making the user the namespace for code instead of the project.

Growing slowly and embracing the constraints of a limited budget in the early days.

Hiring only the absolute best people that we could find. Hiring people that we knew through their code. Making sure they were good cultural fits.

Not getting an office until two years after we started GitHub. Campfire was our office in the meantime and that let us put what money we did have into hiring the best people.

Always thinking for ourselves.

Any decisions in these past 3 years you regret?

Not really. Any mistakes we made were learning experiences and we fixed them. The only regrettable decisions are those that you let control you.

DO you see Github as an "open web" player? What would you think if someone built tools to federate Github and Gitorious, or unfuddle? Would you help them?

I want all of the data on GitHub to be open. We recently made our wiki system Git-backed so that users could get their data. I want to do the same for Issues and comments and everything else. These things take time.

I'm not really sure what you mean by "federate Github and Gitorious, or unfuddle".

Well, basically, I could push to either of those and see my code pulled by others... with some kind of callback mechanism.

Have you considered implementing PubSubHubbub? It's a great way to make all feeds open. [In my case, it would allow me to make a status.net instance that publishes my GH activities, or the commits on the repos that I 'own']

GitHub has feeds for most everything, and you can subscribe to them in realtime via PubSubHubbub using their hub:


Isn't git, by default, federated in that you can add any remote source you want and merge/pull/push it? Callbacks seem like icing there.

How has being a founder of such a successful service affected your personal life?

Not really that much. More people recognize me and say hello at tech events. I get invited to more conferences and get to travel a lot more than I ever have before. I can easily get meetings with influential people in the industry and VCs buy me dinner from time to time.

Other than that, I still do all the same things I did before, hang out with my wife and friends, and my favorite meal is still tater tots and a vegetarian spicy sausage with sauerkraut and yellow mustard.

To what extent to you implement ROWE: http://en.wikipedia.org/wiki/ROWE

It sounds like you have a few of these qualities... choosing your work hours, for example... but what about measuring results. Do you have any specific tips on how to measure results without getting too confused or attached to the a new incorrect metric?

We implement some of the concepts of ROWE, but we don't really measure results in any quantifiable way. We hire the best, most driven people we can and give them the means to produce awesome things. So far so good!

That seems to be the secret trick here, it's more about creating autonomy and encouraging mastery and purpose than about actually measuring anything, or managing anything. And if it works, it's gotta be a nice place to be. Congrats on building an amazing company.

Yeah, that's exactly right. Thanks!

What does a typical workday look like for you?

Since we don't have set work hours, there's a lot of variety to my daily routine. If I'm in SF, I'll usually get out of bed around 9am, roll over to my desk and deal with email and catch up on tech news. I'll head into the office around 11am and do any of a million different things there. Between 6pm and 8pm I'll think about heading home. Maybe a few of us will hit a bar first or grab dinner at a close restaurant. Right now it's 10:15pm and I'm coordinating with vendors via email and talking with some of the GitHub guys in Campfire.

It's rare that a day will go by that I don't work on GitHub in some fashion. I like to get out into nature on weekends to refresh my creative energy and get some exercise, but I'll still be checking email and maybe writing some code or jotting down ideas I had on the ride.

Any interesting conversation with Linus, you could share with us?

We actually haven't talked to Linus. He only takes part in discussions around Git when he notices something wrong. The model that the Linux kernel uses for contributions is pretty well set in stone (and email) and so it's likely that GitHub doesn't really offer him, personally, much benefit. We do, however, speak regularly with the top core Git maintainers and have a good relationship with them.

You recommended six good books on founding companies. Would you recommend any technical books or works of fiction?

Code Complete is a must read for professional developers.

Zen and the Art of Motorcycle Maintenance is always good for a mind-bending read. All of HP Lovecraft's work is excellent. Anything by Arthur C Clarke or Isaac Asimov or Ray Bradbury. All of Ayn Rand's stuff (the philosophy is flawed, but the plots and writing are something to behold).

Well, let me just ask. I was trying to find how much Gravatar was purchased for by Automatic.

Sorry, I'm contractually unable to divulge that amount.

Figured as much but thx. Oh, did you have a previous blog that you talked about design, if so could I have the link?

I had one years and years ago, but it's long gone now. Sorry!

If I'm not wrong, you were consulting and working on GitHub at the same time - how did you manage getting both things done? Time, money management, etc?

I've often heard that if you can't get co-founders on board, it often means your startup idea is not good enough - but given the mountains of debt we students graduate with, it's often difficult to convince people to start up. How did you find your co-founders? What are your thoughts on single founder startups?

You've said that Gravatar was especially hard to run in the last year, how do you know when to give up? From what I've read GitHub was scratching your own itch, but how do you know what to work on? How do you personally judge ideas?


I was actually working fulltime at Powerset and doing GitHub on the side. I spent a lot of time coding, but it's what I love. Working on GitHub was how I expressed the creativity that I couldn't when I was doing tool support at Powerset. It was something I could call my own, and it was a way to unwind after a long day in meetings. Money wasn't a problem. I was getting a good salary at Powerset.

I found my cofounders via local Ruby meetups. I was by myself when I was doing Gravatar and it sucked. Having two cofounders with GitHub has been one of the best decisions I've ever made. They provided additional manpower in the early days when velocity of development matters most, and they acted as a safeguard against bad decisions. It's extremely motivating to have other people that are depending on you to produce great work. I would highly recommend against single founder startups for all of these reasons and a thousand more.

Gravatar did become hard to run towards the end. I was spending a few hundred dollars a month on servers and there was no good way to make money with it. It seemed a bit hopeless. I never gave up though. I put in the hours to make it work and eventually sold it to Automattic. To me, that was a success. I created something of value and sold it to someone that had the resources to take it to the next level.

It's hard to explain how I judge my startup ideas. It's a lot of intuition based on years of experience with the internet and with a lot of examples of things that I love and ton of examples of things that I hate. All this adds up to a feeling that something will work out. Once I have that feeling about an idea, I jump in 100%.

I'm a little late on this, but hopefully you're still lurking :)

You guys use a lot of different technologies to power Github. What are the technologies that have you the most excited these days? Are there any you think are over-hyped?

Are you planning to release svn write-support in any fashion at any point in the future? git has git-cvsserver, and could really use a git-svnserver.

Also, many of the casual svn users I talk to are on Windows using TortoiseSVN. Git's Windows support has grown in leaps and bounds in recent months, but it's still not quite 100% (seems the entire git mailing list uses linux/osx, TortoiseGit isn't as clean/solid as TortoiseSVN, and it's documentation is in broken english). Do you see this as an area GitHub needs to tackle in order to get more Git adoption, and if so, what are you doing about it?

We already do support writing via the SVN bridge: http://github.com/blog/644-subversion-write-support

Windows support for Git is ok, but it could be a lot better. We absolutely intend to create first class Git/GitHub experiences on every platform.

Right, GitHub has it, but Git doesn't, so companies that can't host their code off-site (for legal or other reasons) won't have this feature.

When are we going to see an API for pulls, organizations, and commit comments?

Soon, I hope. =)

I love GitHub. Can you give the HN community a sense of your monthly revenue?

It's not a figure that we publicize, but let's just say it's enough to support thirteen well paid employees, a San Francisco office, 34 physical machines at Rackspace, and plenty left over to put in the bank account.

I read a post regarding you guys following some of the tips from the book "Getting Real." How greatly did it influence you guys in running the company? What would you have done otherwise?

There is some great advice in Getting Real, but I don't remember being particularly influenced by it. I was more influenced by Ricardo Semler's book Maverick. And by wanting to build a company that I myself would want to work for, regardless of anything anyone else has to say. That has driven nearly every decision.

Hi Tom,

I've been waiting two months for a minor ticket (#8991) to get pushed to production. I totally understand development priorities, and especially the challenge of high-volume production environments.

I've heard the development environment of Github described as extremely agile: being driven by individual desires rather than being directed by management, as is typical of a top-down organization.

My question is this:

Does that impact your support decisions? Or, am I seeing an effect from your recent success and growth, being unable to keep up with support requests?


This ticket looks to have gotten quite a bit of attention, but the Pygments upgrade seems to have fallen through the cracks. I'm working to get it back on track. We do our best to handle every support ticket, but low priority tickets can sometimes take a while to be properly addressed. Sorry about that!

Thanks for the quick reply and action!

How essential to your success do you feel the freemium model was?

I don't know that I'd classify us as a traditional freemium offering. The only difference between the free and paid accounts is privacy. In any case, this has worked out extremely well for us. In exchange for free access to the site for open source we get a tremendous amount of exposure. In essence we are trading free accounts for free advertising. I think this approach has been critical to the rate of our growth, both for free and paid accounts.

Virality couples well with certain types of freemium models, as long as you're getting significant exposure from the free accounts to make the cost worthwhile.

In what ways have you found aspiring hackers participating in open source projects use Github to become competent hackers?

Also, thanks for the very inspiring talk at Startup School.

Reading code is one of the best ways to become a better programmer. You can learn so much so quickly by trying to understand how other people you admire solve problems in code. Making it easy to find, follow, and read code is what GitHub is all about.

In the future, participating in open source will be the best way to land a great job. When employers see that you have a demonstrable ability to code and work well in a team, you have a MUCH more likely chance of getting that interview and impressing the right people at that company you'd kill to work for.

GitHub's fandom is impressive considering how picky and opinionated developers are. How did you find an agnosticity balance that made such a diverse group of developers so happy?

I'm curious if the answer is being selective in features. You guys had a Gem builder for a while. Was it closed to help foster that idea that GitHub wasn't only a Ruby community site? And, did you consider creating similar tools for other languages?

I think by building it for ourselves, we really built something that everyone could appreciate. Not tying it too much to any one language, and encouraging projects from other languages to get on board went a long way to making it feel language agnostic.

We discontinued the gem builder because it was causing confusion in the gem ecosystem and we were unable to build all gems (e.g. those with C extensions or that needed signing). It was a fine experiment, but it didn't end up being the right thing to do.

Those kinds of build tools make more sense to be developed outside of GitHub and hooked in via the API or webhook system.

Do Github employees get equity?

Yes. Our equity offers are quite generous. Invested employees are motivated employees. Ownership is a huge factor in job satisfaction.

You host a lot of open-source projects and GitHub itself is even built on it.

What would you say is the best way to monetize your open-source product?

Well, what we've done seems to be working pretty well. Have an open source tool (or leverage someone else's) and then sell additional hosted or installable tools that expand the power of the underlying tool.

I know of a lot of places that do well with providing support and consulting for their open source offerings, but that doesn't scale as well as something that you can charge for on a recurring basis and that doesn't derive directly from butts in seats.

Have you thought about having people working for GitHub on other countries - telecommuting -, I mean, there are really smart guys all over the world, that's one of the lessons I've learned from opensource, so being GH mostly driven and built by opensource hackers, any chance GH will be open for that kind of work?.

Our lead sysadmin is in Australia and we have a support person in Greece. So yes, we're open to it!

What's the status of BERT-RPC and its usage at GitHub? Have you noticed any drawbacks to it since you first created it?

We still use BERT-RPC for all communications between the Rails app and the backend file servers to transfer information about Git repos. It's been working great but there are some improvements I'd like to build into a BERT-RPC 2.0 spec (async messaging ids for one). Overall it's been really good for what we use it for.

You mentioned below that all employees get equity, but it also sounds like you guys are quite happy with the growth you're having and are in it for the long-haul. (Incorrect?)

Do you expect to ever have a liquidity event (sell the company), or is there some proportionate profit-sharing plan with the equity?

Right now we're focused on building the best team and making the best product we can. If this should lead to an attractive acquisition offer at some point in the future then we will surely consider it as a company and weight the benefits and drawbacks. We don't currently have a profit-sharing plan in place, but depending on the future direction of the company, it may be appropriate to put one in place. All of these things are too nuanced to make general predictions at the moment.

Any comments on how you (either personally or GitHub as a whole) manages the work/life balance issues?

Any pointers for dealing with cases when the people you work with turn out not to be "reasonable"?

(I ask because I tend to find that soft-skill management issues are where I'm lacking in expertise)

Not having a set work schedule allows us to work when we're most effective, leaving more time available for taking care of personal affairs. If you want to take Wednesday off because your Mom's in town, then that's what you do. We all work hard enough and smart enough that I don't worry at all about our people getting their work done. We love what we do, and that's what makes it all work out.

So far we haven't hired anyone that has been "unreasonable." I hope that we never do. In past jobs, I have had to deal with unreasonable people. That is one reason I was drawn to being an entrepreneur. So I wouldn't have to do that anymore.

How many page views do you guys get? Out of the 34 servers, how many are front end? I want to get an idea of the # of page views per front end server your rails app is handling.

Fancy a beer next week?

Absolutely. How about Nihon?

Nihon is awesome. Please make this a drinkup! :)

I don't think we'd all fit!

I don't think Github (or anyone really) could afford a drinkup at Nihon.

Speaking of which, when's the next Boulder drinkup?

Next time I'm in town, I suppose!

How awesome are your book recommendations?


I dunno. I think they're pretty awesome.

Why didnt you come to magma rails `_´ ?

Would github be willing to support an event by rails.mx next year :P

That was entirely my fault. I was supposed to speak there and host a drinkup but I got a bit overloaded and wasn't able to make it. GitHub was a sponsor of the conference and would like to do more in Mexico in the future. Next time I'll actually show up!

Nobody invited me! We're open to sponsorships. Send me details: tom@github.com.

Is github a generic enough name for what you want to do, long-term?

Perhaps not, but the name has served us well so far. Early adopters like to identify with new technology and the name GitHub does that extremely well. I can't predict if we'll need to change the name later on. The next few years should make it clear wether the name is too restrictive or not.

I really miss the Logical Awesome page. I wish you guys didn't rename the company.

Any plan to visit Australia for RailsCamp?

I'd love to come to Australia for RailsCamp someday. I'll keep it in mind for next year.

Is there any concern at all about alcoholism at Github given the success of your drinkups? For instance, does the health plan now cover rehab and alcohol induced cirrhosis?

Alcohol can either be a great social lubricator or a dangerous drug depending on how you use it. We're all friends and responsible adults at GitHub. Should there be a problem of this nature, we will address it in a private and personal fashion. Just like any self respecting group of people would.

GitHub's fandom is impressive considering how picky and opinionated developers are. How did you find an agnosticity balance that made such a diverse group of developers so happy?

I'm curious if the answer is being selective in features. You guys had a Gem builder for a while. Was it closed to help foster that idea that GitHub wasn't only a Ruby community site? And, did you consider creating similar tools for other languages?

What does this look like, quora?


No, that looks like an ascii dong.

Coming from a guy with weenie in his name :)

Quora doesn't make it easy to compile a bunch of questions and answers in one place. This is a much better forum for these discussions.

You used to work with this guy? Says he is from powerset.

Guidelines | FAQ | Support | API | Security | Lists | Bookmarklet | Legal | Apply to YC | Contact