I think I needed this whole day to digest the big news about GitHub being bought by Microsoft. I discussed about it with colleagues, among Slack communities, I listened to opinions by insiders, read posts, announcements, tweets and comments.
Let's start by summing up why this deal should be a good thing:
- GitHub was in financial troubles and now it's not anymore, thanks to Microsoft's deep pockets;
- GitHub will keep its autonomy inside Microsoft's ecosystem: I expected nothing less, actually;
- Microsoft has been really good to OSS recently and its CEO Satya Nadella has a great attitude towards it;
- GitHub's feature pool was stagnating, probably due to its slim budget which was barely enough to pay for the servers: with Microsoft's huge army of developers at disposal, we will finally see something new.
In the end, I don't think we'll see anything of this anytime soon:
- login only with a Microsoft account;
- repositories being deleted on Microsoft's whim;
- the web interface accessible with Edge only;
- company accounts being forced to pay;
- Clippy for GitHub;
- in short, the end of GitHub as we know it.
Personally, I trust Satya Nadella. I believe Microsoft's developers when they say they care deeply about OSS. I follow some of Microsoft's most vocal and representative OSS developers, and they're all a valuable inspiration. So, I think things will remain more or less unchanged in the foreseeable future for OSS.
And still, I'm still annoyed.
A thing I quite liked about GitHub is that, while it hosted small and big projects by small, big and even huge companies, like Facebook, IBM, Amazon, Apache, Google and of course Microsoft, it still was an independent company, whose core business was providing a reliable platform for VC.
Therefore, GitHub, Inc. couldn't help but keeping on providing a reliable, open and well-known service to everyone, or it would be the end of it.
And that made it the perfect candidate for open source projects. Reliable alternatives were the like of Sourceforce (rapidly falling out of grace), Bitbucket (independent until was acquired by Atlassian in 2010) and Google Code (which wasn't independent at all): just not as good.
Microsoft won't probably make a dime out of GitHub. Not directly. It will save some by hosting GitHub's repositories on Azure rather than AWS, but that's it. Not that this will be of any problem, as GitHub's operational costs are probably pocket change in comparison to Microsoft's humongous revenues.
I wouldn't be surprised if Microsoft will allow free private repositories for all, a-la Bitbucket.
But that's the problem: if GitHub has no monetary value, Microsoft can let it sink if they want. Granted, they don't want that. It would mean a huge backlash from the development community, which include many, many developers from Microsoft itself.
Redmond has been great to OSS in recent years. And Satya Nadella has confirmed that "Microsoft is all-in on open source". I have no reason to not believe him at the moment.
So, Microsoft is committed to open source. We all know it's not always been like this: it once used to despise open source, disparaging it as unsafe, unreliable and unprofessional. And even that attitude worked great for its business, as Microsoft has always been an IT giant since the late '80s.
Now things have changed. And that's great. But Microsoft isn't a company whose objective is open source. It's not like Mozilla or Apache. It is, and it has always been, a company whose primary objective is to make profits. A company listed in stock exchange markets, with shares and shareholders.
Nothing wrong with that, of course. But if things have changed, it's because the vision of Nadella and the other open-minded developers and managers inside Microsoft wasn't rejected by its shareholders. And they will remain changed as long as the shareholders will think it's a good thing.
In short, it could take little to replace Nadella with another Ballmer.
Microsoft's commitment to open source is an intent, not a mission. Microsoft won't cease to exist without it.
A name that's often reported as an alternative buyer for GitHub is Google. Of course, Google wouldn't be any different for me, for the above reasons. It does have a longer story of open source commitment, but on the other hand it has issues at staying committed to its own projects for long!
And anyway, if Google was fine for the open source community, we would have used Google Code instead of GitHub a long time ago.
I wouldn't be ok if it was Facebook either. Or Apple. Or IBM. Or Amazon. Or - heavens forbid! - Oracle 😱.
No. A platform like GitHub, so dear to OSS, shouldn't be in the hands of any company. In my opinion, GitHub should be ideally funded and managed by an open consortium of companies, big and small, that rely on OSS for their businesses.
This way, all those companies could take advantage of OSS, and they're guaranteed that nothing will be screwed up without them knowing.
Bit GitHub's problem is actually common. Much of the industry nowadays rely on privately owned, although widely popular, software repositories maintained by small and often financially troubled companies. First of all, npm - the largest package repository of all by a long shot. Or Packagist/Composer for PHP.
Meanwhile, Maven is supported by the Apache Software Foundation, and PyPI by the Python Foundation. So this is a viable option.
Microsoft will probably work to integrate GitHub into its vast set of services. Think about deploying to Azure, CI/CD with Portal, collaboration with Teams, integration with VS/VS Code. Maybe even connecting LinkedIn to GitHub.
And that would be good. What will be less good is that, GitHub being a Microsoft thing now, is that we probably will not see the same for AWS, Google Cloud or Digital Ocean. (I could be wrong, though. Color me pleasantly surprised if it will happen).
That will be the first sign of a long gone independency.
On a longer term, GitHub will serve Microsoft's purpose to gather the development community to its court.
Other major companies, like Google or Facebook, will be a bit awkward about having their projects on a Microsoft service, but won't probably won't move anything because a lot of users rely on the fact that they're on GitHub anyway.
But on the other hand, I think other, more devoted to free software foundations will move out of it, because their workflow must stay on independent platforms, not ifs and no buts. They won't accept that the space their projects are on is a kind concession by a corporation like Microsoft.
What about other, minor OSS contributors then?
Most will probably stay. Some are migrating to GitLab or Bitbucket as I'm writing. Personally, I won't move anything - it'd be a bother anyway - but I might consider using an alternative for my next project, maybe just to explore new solutions.
But if you, open source contributor, decide to move to other platforms, please don't do it overnight:
GitHub, Inc. isn't just GitHub, the VC hosting service. GitHub also created software projects, like Electron and Atom, and platforms like Gitter.
Electron is the base for the widely popular editor VS Code, so it's here to stay. On the contrary, it could receive a great impulse from Microsoft. And that would be a good thing.
On the other hand, I don't see a meaningful future for Atom. Once a great choice for an editor, nowadays it's not up to par to the mentioned VS Code, even if it's built over Electron as well. Still, competition is always good. But I don't see Microsoft investing on Atom anymore.
Update: as Nat Friedman (new CEO of GitHub) said in his Reddit AMA following the acquisition, Microsoft "will continue to develop and support both Atom and VS Code". So things won't change for now, I'm still dubious about the long-term support.
More or less the same applies to Gitter, as there's already Teams for that. It will probably take longer, but I think it won't stay for long. Gitter was actually acquired by GitLab on March 2017 - thanks @mnivoliez for reminding.
Yes, Microsoft is committed to open source. I've read it countless times already. But still I haven't ready anything that convinced me that it will be forever like that.
Because there's nothing about that, really. Nobody knows what the future will save for us. And that's why I can't be happy about Microsoft buying GitHub.
It's not like I'm mad. Maybe I'm even a bit relieved. But not really happy.
(open source and trusted by devs everywhere ❤️)