This isn’t an essay trying to convince you that Microsoft is bad or that they will ruin GitHub. You can find other discussions online about Microsoft’s history and whether they’ve changed their approach towards acquisitions over the past years. None of that actually matters here. Consolidation of service providers is bad for everyone, regardless of how much we like those providers. Microsoft may very well improve GitHub in the short term. The point is that we have no control over whether they do, or whether they choose to maintain it at all. We can argue that a particular action is in their best interests, but there are so many factors at play that we can never be certain it will happen. Let’s take control back.
I am grateful for one thing this acquisition has done. For many of us, it’s clearer now how much implicit trust we placed in one website that could have disappeared at any time. I often find myself doing this with other Internet services; it’s human nature to trade freedom for convenience. Yes, doing things yourself is more work, but it doesn’t have to be that hard. The beauty of decentralized git is that moving away from GitHub needn’t be a sudden jump. Run some mirrors for a while! Accept PRs on GitHub and GitLab and keep open issues in sync. There are tools for this. We can reduce our dependence on a single service, and reduce Microsoft’s power over us, while embracing what makes git so cool. Then, when the day comes to switch off GitHub—either because Microsoft did something egregious, or because it’s simply time—we are immediately prepared.
I’ve switched benkurtovic.com to be self-hosted, which was only about five minutes of work. I’ve also taken down my personal private GitHub repositories and some forks. These are easy changes you might be able to make right now. To go a step further, try running a self-hosted Gitea instance for your private repos. Try starting new projects on Bitbucket instead. Experiment with alternatives and find what works for you; don’t simply accept that GitHub is the only option.
We don’t need to drop GitHub as a service. But it’s crucial that we have the power to do so.