Hacker News new | ask | show | jobs
by merqurio 3792 days ago
I feel it was good incident for the Open Source community, to see how dependent we are on GitHub today. I feel sad whenever I see another large project like Python moving to GitHub, a closed-sourced company. I know, GitLab is there as an alternative, but I would love to see all the big Open Source projects putting pressure over GitHub to make them open their source code, as right they are big player in open source, like it or not.
4 comments

Git is a distributed version control system. Github is simply a place to host a repository and some issues. There is nothing stopping anyone from pushing to another remote hub for redundancy.

So you want Github to open source where they put your git repo and issues? Who cares about that? It's unimportant because regardless they're still the central endpoint to many open source projects, opened or closed source. If you want open source use Gitlab or any other service that sprinkles extra features around git.

I'll never understand this outrage of dependence on Github when you have a distributed version control system. It's not like it should be on github to setup third party repositories for you.

From a developers point of view, you're right. But there are package management systems and other stuff depending on being able to download from Github.

Ofc, Github isn't to blame for this, rather the ones that thought Github would be great to use as a CDN.

I agree with you that is an issue for the package manager. A package manager should never have such a single point of failure. I know bower, for example, would fail (at least last I checked unless they added a caching system since then) but it at least can point to specific git repositories so it can be moved if necessary.

Honestly if anyone is working on something important enough where they must be able to rebuild at a moment's notice then they should either be checking in dependencies from these package managers or setting up their own copies of what they need. But that's like backing up; most don't realize they needed to be doing that until they have an issue so I can understand the anger when Github does go down.

"But there are package management systems and other stuff depending on being able to download from Github."

Rust program building, for example, seems to require that Github be up.

Only if you need to fetch new dependencies.
Or do a clean rebuild.
During the outage I was not able to push and that's all. I can build everything locally and push to Heroku from my machine. You can always add an upstream repository to Bitbucket or something like that.
In my case at least is not outrage, it's just that I would love to feel that they are more responsive to their community and that I think that I'm not the only one who thinks that GitHub community would gladly help to make the product even better. I see it like a win win situation. Maybe not and it's just business.. dunno
If github opensource all of their stuff, this still wouldn't prevent issues like this for the projects that want to use a hosted service instead of hosting it themselves, and many projects don't want to host these services them selves anymore.

When I worry about dependency on GitHub, I'm thinking about not the inconvenient hours of downtime but the larger threat that they might disappear or turn evil.

What I would like to see even more than opensource github would be a standard for spreading over more services. For instance, syncing code, issues, pull requests, wiki, pages, etc between self-hosted gitlab and gitlab.com, or between gitlab.com and github.com. Further, I'd like to see it be easier to use common logins across services.

I don't think we can rely on Github giving us this, but if GitLab would add it between gitlab.com and gitlab ce, that would be a compelling reason to think of switching.

You propose GitLab syncing between on-premises installations and GitLab.com. Sync is pretty hard. What we currently plan to do is import/export https://gitlab.com/gitlab-org/gitlab-ce/issues/3050 We are thinking about distributed code reviews and issues https://gitlab.com/gitlab-org/gitlab-ce/issues/4084 and federated merge requests https://gitlab.com/gitlab-org/gitlab-ce/issues/4013
The problem with git is that it's decentralized but has no model for automatic consistency. Which means we've basically ignored the issue in tooling.

That said we probably don't need to solve it - we just need a way to keep read remotes online that's separate from any one server. The DHT git project was a good move in the right direction.

Was it a good incident to see how dependent we are on GitHub? Every time there's a GitHub outage, a vocal group of people will voice their opinions that we are too dependent on GitHub, we should be using open source alternatives, GitHub should be open source, etc. Then, within a few days, everybody goes silent and we return to our normal lives.

I don't think outages at GitHub are very frequent. This one was lengthy, so it's definitely been on a lot of peoples' minds, but this conversation always comes up when it happens.

    I don't think outages at GitHub are very frequent
And yet, some of the entitlement around this outage is incredible. It's as though a community's want to see Github online, is far more relevant than the lack of SLAs and thousand dollar service fees.
Of course it was. I don't know if everybody goes silent after a few days, It's the first outage I'm aware of, but some people at university made see the hypocrisy of using GitHub for open source projects and I feel that if there is a community strong enough to make some impact on GitHub that could be hackernews. Maybe I'm wrong.
If you look back through the years and find a few other stories of "GitHub is down", you'll see that this conversation happens every time. Some people tread into the HackerNews thread and say "More people should be using self-hosted GitLab instances" or "if GitHub would just open source their code, we wouldn't need to be so dependent."

But then the conversation stops within days because, the fact is, hosting your own git servers and getting people to actually use them is a huge pain in the ass. More simply put: people just like using GitHub.

Furthermore, GitHub's a business. They're selling private repositories. They do open source quite a bit of code, but they're not going to open source their actual product.

hosting your own git servers and getting people to actually use them is a huge pain in the ass. More simply put: people just like using GitHub.

Given that this is the case, I fell like GitHub is entrenched enough that they could open source their codebase and not lose any customers. People are paying them for the convenience of someone else hosting their git repository.

Technically you dont need a server. You just need access to remotes. That could be your team's repos. Then PRs just mean pulling from a coworker to your repo.

But yes, most of us are most comfortable with the central repository model.

Sure ! And I think it's a great business and I'm a happy customer too. My comment wasn't against the enterprise at all!

I just wanted to point that now that you guys are well stablished and have huge impact in the open source community, adopting a more open approach with your end users can be very beneficial for both, GitHub and the user base. I'm sure that lot of people would contribute to your codebase and thing like this: https://github.com/dear-github/dear-github would be less frequent and notorious.

But if the enterprise edition is really the source of income, open sourcing it doesn't have any sense. I agree on that. Maybe, another way to be more open to contributions from the community ? I dunno

> I feel sad whenever I see another large project like Python moving to GitHub, a closed-sourced company.

What would you rather have? A dependency on a bunch of projects with variable hosting of whatever means or all your dependencies hosted with the uptime of GitHub? Having an install fail because some host is down somewhere deep in your nest of dependencies is going happen a lot more if you have more hosts to worry about.