Gitea/Gitlab are crazy easy to set-up nowadays, especially with a fully working CI/CD setup (I use Gitea+Drone and I love it, Gitlab comes with its own)
That way you can use 3rd party integrations, and be part of the Github ecosystem 99% of the time, but when they do something like this, you have an emergency place to work from?
Of course it could also be in a database thingy for querying and stuff.
Some people say it is because Github wants to lock you in. I don't really believe that, but I am equally sure they don't mind if you lock yourself in.
Switching domain registrar and re-routing DNS is a simple and cheap thing if it ever becomes necessary.
A sensible policy is to look at the risks you can do something about, try to assess how likely each threat is and what damage it would cause if it actually happened, and then make your plans taking into account how much you want to control those risks and what it costs you to do so.
On this scale, something like the total collapse of law and order or the failure of the core infrastructure of the modern Internet and its governance processes is obviously less likely than one commercial service provider pulling the plug on unspecified or unreasonable grounds.
We're not going to change the DNS registrar system overnight. But by drawing attention to the issue, we might, eventually, make it a bit more robust with regards to things like registrars becoming unresponsive to small players, or losing data.
For example if people could register with two or three independent registrars in order to have robust control and ownership in the event any one registrar fails them, that might help as a technical solution for robustness. No doubt there are other non-technical things that may help as well.
Separate from changing DNS, I think it's sensible to recognise that risks with cloud hosting or using SaaS, as happened to OP with their GitHub account, also exist with DNS, so for anyone who would find that a problem, they should evaluate whether relying on a single domain, or even on DNS itself, is the right thing to do. For example, high-value IoT devices in the field that can't be updated easily might look for their server at more than one DNS name, and specifically on separate domains (not subdomains) held by distinct registrars, and validate the server's identity. Or they might keep track of IP addresses that have worked recently (in addition to DNS) and fall back to those. (I have worked on devices where this was helpful because DNS on some deployed sites turned out to be unreliable.)
The culture and economics behind a lot of tech SAASes that we talk about here all the time make them inherently vulnerable to discarding or abusing users, even those who have been with them a long time and maybe paid them quite a lot of money, in the name of the almighty growth curve. The incentives there are not necessarily aligned with supporting even long-standing and loyal users.
In contrast, there is little to gain for a DNS provider to screw a paying customer or get embroiled in some tedious arguments about rights to some domain name. They can't entirely avoid that because of the environment they operate in, but they are generally going to make the most money when they have lots of happy customers who can briefly engage with the provider's almost entirely automated systems and pay some registration fees for the privilege through another almost entirely automated system and then everyone can get on with their day happy with the trade.
Especially if you registered under a pseudonym, as then you can't prove legal ownership of the domain either. But even if you register under your real name, you may need a court case to compel transfer if the old registrar won't cooperate.
Yeah, but it's much, much, much less likely than some script at GitHub getting triggered and shutting your account down. And even the cheap hosting providers do have ultra-premium-platinum-support compared to Google, GitHub, Amazon etc.
It is an odd thing to think that GoDaddy may have more merit as a solution than Github for hosting code...
If you self-host your repository, you don't have a hosting provider. There is no-one to "pull the plug" on the server at my business's office except the people who work in the building who could literally pull the plug, and I suppose the electricity and phone companies and our ISP.
What you are talking about isn't self-hosting, it's hosting in the cloud on VMs you're renting directly. This is an intermediate step between self-hosting and using a fully hosted service like GitHub.
With cloud-hosting, you are probably still subject to the whims of your hosting service. For example, you might be subject to occasional forced restarts of a long-lived instance if your hosting service needs to restart or replace the underlying physical server.
However, in most cases, unless you're doing something illegal using their equipment or compromising their system in some way, these hosting services don't much care what you're running on your virtual box. This option is still far less risky than using a fully-hosted service, not least because you retain full control over the underlying data so there is almost nothing that can happen because of your hosting provider that a reasonable backup strategy can't fix within a relatively short amount of time.
1. Always have independent and automatic data backup. A storage medium attached to a raspberry pi is plenty enough
2. Always choose a setup that you can deploy and migrate trivially
It wouldn't matter what the hosting provider does if you have the power to pack up your bags and move elsewhere when they misbehave.
You should reconsider it no matter what; you're putting your business in someone else's hands and relying on their goodwill not to completely fuck you over.
Using Github can be a tolerable risk when your company has hundreds of more-likely reasons to fail in the next month and needs every little bit of saved time it can get. But once the business has it's feet under itself, the github contract of adhesion is a pretty stupid risk to take.
When you pay a professional for a service, you should be able to expect that the service is provided.
And if you can't handle your business relying on contractually and legally defined interconnections with other entities then you really shouldn't be running a business.
The notion that customer support, just like security, is just a sunken cost needs to stop.
2. It is a free product. Would you spend 7 million a year supporting a free product?
3. 99% of complaints would be of the nature "GitHub is broken. HELP!" and really be some person who did not set the origin before pushing.
That is roughly the fully-loaded cost to employ a senior software developer in much of the world. A decent but first-line tech support agent would cost a fraction of that amount almost anywhere outside the US.
2. It is a free product. Would you spend 7 million a year supporting a free product?
Presumably for the same reasons you spent far more than that to buy and continue to operate the service at all.
3. 99% of complaints would be of the nature "GitHub is broken. HELP!" and really be some person who did not set the origin before pushing.
Then 99% of the complaints will be dealt with quickly using standard replies and references to FAQs. These aren't going to be the ones attracting hundreds of comments and presumably thousands more readers on prominent online forums for software developers.
Basically the same deal as "educational licenses" for expensive software suites. It isn't a freebie at all; it's an investment into future customer acquisition through lock-in. That's how you're paying for it.
I for one pay for GitHub. I've never had a ticket that wasn't answered in under a day, but I'd be almightily annoyed with them if I submitted a ticked like this and didn't have a response within hours.
No, front-line support staff might scale that way, but organizational costs scale superlinearly with the size of the bottom of the pyramid, so even if it did, total cost would be super linear with userbase.
It's unclear if the poster had a paid for account.
Putting all my eggs in GitHub's basket is evidently too much risk for me to bear.
But if GitHub bans you, good luck with that. They're not just deleting your data; they are removing you from your own community, because they control its environment.
Edit: And the domain name system, unlike services like GitHub, actually has processes and mechanisms in place for recovering access and filing disputes.
Lambs to the slaughter. Did you really believe that Microsoft suddenly did a 180 and that all the people that thought EEE and hamstringing Linux through proxy lawsuits and outright lies were just fine have left the company?
It seems that I may be wrong.
This is really obvious from the parts that they choose not to open-source, such as https://github.com/MicrosoftDocs/intellicode/issues/201
He should do as he is told by MS.
Which is not something unheard of when dealing with large companies.
If true,that they did not respond, that would be much more worrisome to me than whatever the reason for the ban might have been.
That was the time to start sharing “your side”.
Time and time again we see large companies from all markets only respond when public interest is triggered and more than just the individual user starts to question the actions of the company
This is the sad reality we are in, if you tie your work, your income, etc to a large corporation you likely will be screwed at some point unless you can cause a public backlash.
I guess abuse-related tickets can’t be handled by the usual responsive team(s).
However this is just vendor management. You have to balance risk and productivity, and it's even more important now with how many different services a typical business uses.
Most people are better off using third-party services with proper support contracts rather than trying to plan for an edge case while ignoring all the other new challenges it brings to do it all yourself.
I don't think we have enough information to definitively prove that his email address is still accurate on the account. If the account was taken over by a malicious user (hopefully not because they claim MFA was enabled), then the new user's email address may be the one that was notified.
Going back to the OP's post, if you leave a vendor for a single 1-sided account of a negative experience, you'll never deal with another company again.
The safe default seems to me to believe these stories at face value unless evidence to the contrary has been provided.
Regardless I don't see what the issue is in waiting for the full story.
In other words are we just assuming Digital Ocean/Hetzner or wherever one 'self-hosts' is less likely to auto ban you for no reason? I would say yes, but I hope others are atleast considering this aspect when comparing this moving to Gitlab or whatever
Long story short: don't give your time and money to evil corporations.
I meant, nothing to do with Github's acquisition by Microsoft.
I don't know what the precise cause of this bad support is, but I would wager that an acquisition by Microsoft will shift GitHub's priorities away from Support and towards Enterprise Sales.
I'm sure they're pedalling Azure, but other than that Github is still very much independent.
- Doesn't have excessive server side dependencies or resource requirements
- Doesn't have unnecessary client-side requirements (should be fully usable without JS, should not load a million resources to render a single page)
- Doesn't make any external requests (except for things like third-party logins where there is no other way)
- Has decent UX and visuals
We have example templates for most common languages and frameworks: https://docs.gitlab.com/ee/ci/examples/.
You can read here for all the supported ways you can create pipelines and define the CI jobs: https://docs.gitlab.com/ee/ci/yaml/
A TL;DR is that all you need is a base docker image and a list of commands to run. Jobs will run in parallel for each stage, or you can define dependency between then, so they run as an independent DAG.
(You can easily import all your projects with a few clicks: https://docs.gitlab.com/ee/user/project/import/github.html#i... and we get everything from issues, merge requests, to labels milestones, comments, etc.)
To anyone reading from GitHub, this is making me rethink my choice of GitHub as a platform, and I'm sure the same is true for other people reading this post. Your reputation is very much at stake.
To anyone reading this from Gitlab, how easy is it to migrate CI/CD off of GitHub Actions to Gitlab?