I initially started writing this post 3 years ago. But then I stuck it in the burner. Now it seems like a good time to bake it.

Lets git it going, shall we?

For those who don’t know about GitHub, it is the best place to share code with friends, co-workers, classmates, and complete strangers. Translation: they provide source code management tools. This space was previously dominated by Sourceforge and Google Code, who did not adapt to the new times. Today, it faces competition mainly from the publicly listed Atlassian and the upstart GitLab.

GitHub has become the de facto place to freely store open source software projects. And it has also seen huge popularity for its paid plans among tech companies and individual software developers. That is why, when it went into fundraising mode, it was able to raise a total of $350M 1 - $100M in 2012 and then $250 in 2015.

While it is a good polished product, most of it has been the same for a long time, with only tangential improvements, and there has been a feeling that a huge margin for improvement exists 2.
Given the massive funding and headcount (almost 500 employees at the beginning of 2016), why isn’t GitHub perfecting their product and expanding into other areas?

GitHub, deconstructed

Succintly, these are GitHub’s main products:

  • GitHub source code hosting and management: provides repositories for source code with all the attached goodies such as issue tracking (a basic issue management system), collaboration tools (contributors and pull requests), documentation platform (wiki), statistics, integrations with third party services, and some more;

  • GitHub Gist allows you to instantly share code, notes, and snippets;

  • GitHub Pages lets you host websites for you and your projects directly from your GitHub repository;

  • GitHub Enterprise is the on-premises version of GitHub, which you can deploy and manage in your own, secure environment

As mentioned before, GitHub has been criticized for its slow speed of execution and not improving its core product very much. Given the context of the imense fundraising, the criticisms do seem valid. But lets try and dig deeper to back them up.

I looked at GitHub’s Blog, more specifically it’s “New Features” category (where new features are announced), and then counted & grouped the pages by year 3. This can be seen as a rough indicator of GitHub’s internal activity.

Year Num Pages Num Users
2012 4 1.7M users
2013 6 3M users
2014 4 8M users
2015 2.5 10M users
2016 (so far) 2.5 15M users

The results seem to match the sentiment that has been expressed. It looks like that in the past 2-3 years there has been a slowdown in the number of new features announced. Yet this hasn’t stopped its immense growth - some vocal users complain, but things seem ok. But are they?

What’s been going on?

2016 has been eventful for GitHub. The year started with the Dear Github open letter 2, which attracted a flood of comments from the software developer world 4 supporting the cause. A few weeks later, repercussions of the management and culture change (first started in 2014, after the resignation of the then-CEO 5) started being felt - employee departures and disband of the flat structure and remote work 6.

Perhaps GitHub has finally heard the cries from its users and started doing something about the core product, with the recent announcement of new tools, forums, and features. But that brings us into to the land of how-things-are-done, and not everyone agrees on how they’re doing it.

Brand New, But Just The Same?

This is the example of how hard it can be for companies, especially successful companies, to alter their course even slightly.

Github success was about making code repositories pretty and social. But this is no longer enough to keep evolving as a company of their size. Yet the internal product DNA still revolves around repos, so as a result, issues, wikis and now Projects (!) live under a single repository.

This is backward.

Source: The top comment in HN regarding the new GitHub features announcement.

GitHub, in some aspects, feels like a lost cause. It remains to be seen if they’ll be able to get their mojo back or if it’s going to be a long slow decline. Given their warchest of hundreds of millions, it would seem unwise to bet against them, but on the other hand, the pattern has been observed with other companies in the same position.

The title from their homepage “How people build software” - is what GitHub could’ve become. But it hasn’t, and there are no signs that it will be. Instead they might now be facing increased competition, specially with such a low barrier for users to switch services.

The Shadow of Atlas(sian)

GitHub’s bet in the Enterprise market faces strong competition from Atlassian, who IPO’ed at the end of 2015. After an initial decline in the stock-price at the beginning of the year, it has now gone back close to its previous heights.

In terms of product, while JIRA is the king of project management, it is not supreme. And the once reigning Hipchat has taken quite a hit from Slack. But Atlassian products are still solid and it has had over a decade to ingrain itself in the enterprise world.

While Atlassian has never stuck out as the flashing innovator that the Bay Area adores, it has always looked like a consistent fighter. And still flush with the IPO money, who knows what they might buy.

GitLab

GitHub’s mightiest competitor might simply be another startup: GitLab. Backed by YC and with a fresh $20M series B, GitLab has a clearly defined vision 7 - that I always thought GitHub should be doing - which is executing at a rapid pace.

They have understood that they should target the development pipeline, i.e. how people build software, and make the tools for that. It is to be seen if GitLab’s strategy is the right one, but the fact that the CEO and others are listening and talking with their users bodes well for them.

You know, kinda like what GitHub’s CEO used to do.