How GitHub blocked me (and all my libraries) Nikolay Follow Mar 11 · 10 min read

My name is Nikolay. I’m a web developer from Moscow, Russia. My hobby is writing Open Source libraries (libphonenumber-js, react-phone-number-input, relative-time-format, javascript-time-ago, react-responsive-ui, read-excel-file, virtual-scroller, imageboard, captchan universal imageboard frontend) and I really enjoy it. Like others, I’ve been happily using GitHub (@catamphetamine) as the primary way of publishing the source codes and communicating with the users. Until recently.

A Google-cached version of my GitHub profile, until it was blocked.

On March 9th, 2020, GitHub banned my account without any notice for an unknown reason. I found out about that only when people started sending me emails telling me that my hosted libraries have stopped working and asking me why did I delete my GitHub account (I didn’t). Apparently, for any person other than me, when navigating to any of my libraries’ page, GitHub simply displayed a “404 Not found” page. Not even a “user account suspended” page, just as if the person didn’t exist, and all their libraries too.

The ban resulted in tens of thousands of people using the libraries I maintained not being able to access the source codes, not being able to report bugs or seek assistance when they’re stuck. Some of the libraries also relied on “GitHub Pages” for hosting “static” assets (for example, country flag icons), and those have stopped working properly as a result.

The only hint from GitHub was when I navigated to their website and (only for me) it showed a notification at the top saying: “Your account has been flagged. Because of that, your profile is hidden from the public. If you believe this is a mistake, contact support to have your account status reviewed”. I’ve sent a support request to GitHub, Inc. as soon as I found out about the issue (Ticket ID: 594578). It has been almost a week and they haven’t responded yet. (spoiler: they did respond after this article was posted on Hacker News)

“Flagged”? So this is how you call “disposing of someone” in a “politically correct” manner nowadays.

What could possibly be the reason of the ban? Maybe one of my repos contained a mysterious “blacklisted” word? Or was it a hyperlink to some “blacklisted” website somewhere deep in the source codes? Or maybe I’ve called someone a moron on the internet recently? (spoiler: that finally turned out to be the case) Whatever it could be, it doesn’t justify immediately blocking off public access to a bunch of useful open-source projects tens of thousands of people rely on in production.

Also, apparently, all my comments in all issues in all other repos have instantly disappeared for anyone other than me, and some of those comments contained some valuable information/knowledge/solutions. While git version control itself makes sure that you don’t lose your code when GitHub, Inc. decides to block you, the same isn’t true for all your other intellectual assets in the form of the comments you’ve posted in issues/pull-requests/commits/etc (including your employer’s private repos). It’s funny how GitHub’s marketing is all about “sharing” and “co-creating”, and at the same time look how easily they strip the community of the source codes and knowledge base the people (not them) have collectively created with their time and effort (several people have contributed to my repos both in the form of code commits and issue comments) just to maniacally hunt down one guy who just happened to fall out of favor for an unknown reason. Is it what’s called a “loose cannon”, trusted with all our sources?

This incident has teached me that corporations are still corporations, even when proclaimed the heart of open source, even when they’ve played a huge role in growing the open source community to its current state. The main focus of every corporation are good “public relations” image and smooth operation. This giant machine can be your best friend as long as you’re good for the business. But if you accidentally happen to get in its way, it’ll simply screw you over and won’t even notice. If tomorrow a corporate lawyer decides they need to cover their corporate ass more tightly — be it international sanctions, dodging any potential lawsuits from vocal minorities, or anything else — they won’t think twice: they’ll readily dispose of anyone and betray any “ideals” you might have thought they stand for.

The issue I see here is a private corporation hijacking the good name of Open Source and using it for their own profit, at the same time not sharing the ideals the Open Source movement emerged from — the spirit of Freedom.

And I don’t blame them for that — they’re a private corporation after all. It’s just that their marketing strategy is very misleading, making people think that GitHub, Inc. is an idealistic nonprofit organization while in reality they’re a private for-profit corporation under US jurisdiction, having its own policies and opinions. And that’s what I personally find unfair towards the regular people who sincerely praise and promote GitHub on social media.

GitHub, play fair: Open Source is a free trademark, don’t try to make it seem like you invented it. If you provide people with the means to publicly host their open-source projects, that doesn’t also mean that you own them and their code. You can’t just make it all disappear at will. Well, legally, you can, but you shouldn’t behave in this manner. Remember: “With great power there must also come great responsibility”.

Anyway, I guess it’s goodbye, GitHub. We’ve had a wonderful relationship, but seems like our views have diverged too much, you getting obsessively political with every passing year. I’m leaving. I’ll start moving everything to GitLab. Competition is vital for maintaining a healty ecosystem. When it becomes a monopoly, it quickly descends into stagnation and authoritarianism. I’m for preserving the “diversity” of everything in this beautiful world, so you can call me a GitLab fanboy now.