GitHub acquisition: An analysis of Microsoft’s direction through product
It’s pretty old news now that Microsoft has acquired GitHub for $7.5 billion. But I think it’s interesting to take a look at the direction that Microsoft wants to move towards with this acquisition, specifically looking at the product that GitHub provides Microsoft’s ecosystem.
Let’s take a look at what products GitHub offers. For the sake of time, I’m not going to rehash the many articles explain what GitHub does. First and foremost, their core product is a managed store of code, “repositories”. The interesting thing is, GitHub is built on top of the Git version control system, which is completely free and open too. The beauty of Git is it’s distributed, meaning there’s every developer has a full copy of the Git project they work on. That then means there is very little friction for a developer to move their code from GitHub to some other place (like BitBucket or GitLab).
Now we’ve determined that the core feature, storing developers’ code, is nothing unique and that alone provides a pretty small competitive moat. So what’s the big deal with GitHub? How does GitHub attract new users and retain them? By hyper focussing their vertical features and products on top of Git towards the open source community.
First, let’s talk a little about the economics of open source. Yes, open source is literally giving away your code (there are different types of open source licenses which I won’t get into here). But there is still lots of money to be indirectly from open source software. Following the freemium model, if I open source an amazing database, I drive demand via the free version. Then, I place plenty of power user, convenience, and managing features behind a paid wall. With this specific database, I now have a user locked into the ecosystem (it’s pretty high friction to migrate large amounts of production data off a database) and the longer a user uses my software, the more likely they will want advanced features to solve their long term problems. This then results in paying customers.
That’s how releasing free, open source software can generate money for a developer, but how does GitHub make money off of that? Interesting question. GitHub doesn’t really. Their money making machine is selling control over code repositories, such as making code private or being able to manage an enterprise amount of software through permissions. The interesting thing is their focus of all the free features (more on those in a bit) to get more users to create open source projects and increase collaboration is the antithesis to who would actually use GitHub’s paid product. I think it’s pretty clear Microsoft isn’t buying GitHub for their executive level management or for the “money printing machine” GitHub is (hint: it probably doesn’t make a lot in profit off of just paid users). To understand why Microsoft is acquiring GitHub, I think we need to dive a little deeper into the free product features.
To reiterate, as a whole, GitHub has a lot of interesting free features that any user can use but I think the biggest ones that I want to look at are related to collaboration. Specifically, I believe the ability to submit pull requests, the ability to quickly and easily fork code repos, and having integrated issue trackers are the biggest features that acquire new users and retain existing ones. Note that all those features aren’t new or groundbreaking ideas. But GitHub was the first to offer unlimited public code repos for free and the first to add all those features for free, which allowed them to gain a big network affect as the place to go to find new open source projects and to contribute/collaborate with others on existing open source projects. GitHub realized at the time that open source projects were a big opportunity but no one was servicing community based code collaboration but instead focussing on the “immediate money” of enterprise code collaboration, where the target market is clear and all the customers pay. The main pain point GitHub realized was there wasn’t even a platform or a toolset for open source contributors! What I think GitHub ultimately got wrong was their pricing strategy (and target market; GitHub’s main financial growth is from GitHub enterprise) but that is where I believe Microsoft can leverage GitHub.
First and foremost, Microsoft is making a big push in not just empowering creators in general but also empowering software developers. The Steve Balmer mantra of “developers, developers, developers” is still not lost to this day but I think there’s two key strategies Microsoft is taking here — a (deeper) focus on enterprise developer tools and a way to leverage the large open source developer community.
Looking at the developer tools, it’s pretty clear Microsoft wants to hit it hard to compete against the big names, such as Atlassian. As said before, GitHub’s fastest growing product in terms of paying users is GitHub enterprise, which is interesting because it’s not their apparent target market. But the numbers don’t lie and plenty of businesses need on-premise, managed code hosting solutions. Microsoft already has big deals and contracts with many businesses and just like they do with Microsoft Teams to undercut Slack and Microsoft Azure to undercut AWS, they can offer GitHub enterprise at a free or reduced rate to incentivize companies to be “locked in” to the Microsoft ecosystem. Looking at the competitors, there is Atlassian Bitbucket and GitLab, the two biggest competitors. If I had to guess, Microsoft wants to steal market share from Atlassian and GitLab and fast.
What Microsoft (probably) realizes is that GitHub has many open source projects that people love to fork (create a copy) but people need easy ways to deploy that code. This is where I believe Microsoft can leverage the existing open source communities to push Microsoft Azure with easy and simple GitHub integration (especially with Docker Containers. Microsoft Azure is pretty behind AWS right now and one big way to catch up is to reduce the friction between code in GitHub and code running in Azure. I think Azure could take a page out of the freemium/open source model and allow users to not only fork public repos, but also easily spin up an Azure cloud server with that code. It would reduce developer friction, boost Azure in the race to catch up to AWS, and increase the friction for developers to move off Azure.
All in all, it’s hard to say in the immediate term what Microsoft’s plan is with GitHub and just how worth the $7.5 billion GitHub really is. It’s pretty clear that Microsoft is buying GitHub more for the audience than for the product direction if anything. Do I think Microsoft stands to break into the enterprise developer toolset that Atlassian has a firm grip on? Definitely, especially if it can leverage it’s existing contracts. Do I think Microsoft stands to use GitHub as a way to leverage Azure numbers? Maybe, I think this is a little harder and even if it does succeed, it will be a relatively small increase for Azure compared to AWS. I definitely think Microsoft bought GitHub to leverage all their users and open source projects, the better question is just how. The real question is if GitHub is worth $7.5 billion.
Disclaimer: I own some Microsoft stock