By now most people have heard about the acquisition of GitHub by Microsoft. The deal is reportedly worth $7.5 billion, and should be closed by the end of the year. So, how does that make you feel? I certainly have a healthy amount of skepticism, and have witnessed Microsoft’s acquisition and destruction of open source projects. I remember when Ballmer called Linux a cancer, and also when Microsoft became a platinum Linux Foundation member.
Why the Skepticism?
I have had the privilege of working in open source since the late 90s, when it was a fringe activity not to be taken seriously. Back then most projects developed their own tools, hosted their own source code, bug trackers, etc. Smaller projects would use things like SourceForge, but many of the services came and went along the way. Many of us pursued independence from any one company or vendor, I was a big supporter of Gitorious and Gerrit when moving to Git.
For me I realized that Git was different in the decentralized nature of the protocol, offering an ease of hosting a repository on multiple services not seen in the previously centralized version control systems. GitLab was a relative latecomer, and my employer uses it to self-host a number of projects both internally and publicly. I had been developing some projects since before I joined, and we had moved them to GitHub with mirrors on Gitorious at the time.
I realized, at least in my opinion, that the social aspect was an important aspect, and that self-hosting might not always be ideal. Added to the fact that people already have accounts, their familiarity with the interface, platform, and software process are important factors. Nothing is forever, but being on the platform with a critical mass of developers is important. I think Microsoft realize this too, and it figured into their valuation/business proposition.
I witnessed Microsoft tempt Daniel Robbins (founder of Gentoo Linux) into a career developing open source in the early 2000s, their embrace, extend, extinguish tactics. For me one of the saddest episodes was the Microsoft, Nokia, MeeGo, Windows phone, Qt fiasco. I was at a Qt developer conference, and got an N9 while it was clearly doomed. These are just a few memories that are bouncing around people’s heads I am sure.
I have started to believe that Microsoft realized that open source was indeed winning, and they could either adapt or die. As Red Hat displays in many places “First, they ignore you. Then they laugh at you. Then they fight you. Then you win.” I remember a lot more laughing when giving talks, there is certainly still some fighting, but I think some sectors are in the final stage now.
I also think that Microsoft realize that much of the value of the GitHub platform is in the user base, the goodwill, and the trust built up since GitHub was founded. While the platform is not open, I have seen GitHub contribute to quite a few projects, and they have bought many a developer a drink. I have also met a few great people who work at GitHub, and who have been empowered to do great work to improve the state of open source.
Don’t get me wrong, if Microsoft start screwing up the platform I will be one of the first to move on. I reserved names on other platforms years ago, and have a deep mistrust of Microsoft that they earned over many years. Windows is perhaps one of the least developer friendly platforms I work on (although Apple is giving them a run for their money now), but I hope that the acquisition will genuinely enhance the GitHub platform.
At the end of the day the acquisition demonstrates what many of us talk about every day in open source… If it is not open, you have less control of your destiny. I have dedicated my career to developing open source software for scientific research, and I think it is extremely important that we do not let a few big companies control our software. For me this absolutely includes the platforms we use to host and develop our projects, but there are always compromises that we must make.
GitHub has done a great job of making coding more social, and I would liken them to platforms built by Twitter, Facebook, and Google. Many people are on these platforms, but we can maintain control of the content. The tweets/posts/shares might disappear, but the blog posts will remain. The facilitation of interaction is an important aspect of coding, even if we move our source code repositories to another platform in a few years as Microsoft sits in the charred remains of GitHub. We will still have the code that benefited from those interactions, the CI, the issue tracking, etc.
I sincerely hope Microsoft does not screw it up, but if they do others will fill the void. GitLab was having some serious scaling issues this morning showing internal server errors, and has been bragging about increased traffic. I will be following developments with interest, and keeping my fingers crossed that the new direction we have been seeing from Microsoft continues.