News for hackers. Stuff that matters.
Re:GitHub is down by masklinn on Tuesday April 05, 2016 @05:08AM (#11428965)
That sounds like a joke, but that's exactly the problem: the VCS has been distributed, but not all the services enmeshed around it: all the discussions (issues, pull requests, design debates, …).

Github makes it easy to host git repositories, but so do a bunch of other services and it's not that hard to host your own either way or to set up trees of repository or multiple mirrors or what have you. The reason people use a central hub is all the meta-information and exchange about the code and the contributor communities.

The repository on its own has very little value.

And lest you think it's different for the kernel or whatever, a mailing list or an IRC channel are still centralised SPOF[0], when the ML provider goes down so does the project.

[0] though possibly more resilient and easier to switch out of ones

Re:GitHub is down by TeMPOraL on Tuesday April 05, 2016 @05:37AM (#11429104)
> The repository on its own has very little value.

Depends for who. When I'm a user of a project, I don't care at all about anything other than the repository. The source code is the only thing that matters.

Anyway, you can't really avoid centralization in most of the projects. Barring some extreme social experiments, a project always has identity, a "canonical version". That's your SPOF right there. Of course we have tons of experience with mitigating potential issues - from caching and mirroring to not doing stupid shit like telling your CI server to download dependencies from GitHub every time it builds your project. Temporary GitHub outages seem to be a problem mostly for people doing the latter kind of stupid shit.

What would be interesting to see though is some kind of torrent network for Git repos. The kind of where I ask for a particular commit of a particular project, and I get a way to download it from some random computer that has it (with all the magic crypto code signing for confirming the code was not maliciously changed, etc.). Node.js developers have local mirrors of third of GitHub anyway, so that would pretty much solve "GitHub is down" issues.

Though it would not solve the problem of people too lazy to have a local cache of their dependencies...

Re:GitHub is down by masklinn on Tuesday April 05, 2016 @09:18AM (#11430089)
> Depends for who. When I'm a user of a project, I don't care at all about anything other than the repository. The source code is the only thing that matters.

The repository doesn't have any more value for that use case, tarballs would be just as good if not better.

Re:GitHub is down by morsch on Tuesday April 05, 2016 @05:26AM (#11429063)
Has anybody tried to store a project's metadata (issues and PRs) within the project's git repository itself? Seems like a logical step.

If you don't want special git semantics around it, you'd have to be clever about how you store it so you don't have conflicts within the metadata. I.e. a naive design just adding a markdown file per issue or for all issues will require manual merging all the time. Still, it seems doable.

Re:GitHub is down by masklinn on Tuesday April 05, 2016 @05:30AM (#11429077)
> Has anybody tried to store a project's metadata (issues and PRs) within the project's git repository itself? Seems like a logical step.

There were a number of tentative distributed bug trackers a few years ago, they sucked and fizzled out. IIRC Fossil is an attempt at an entire distributed project management system, I don't know how it fares.

> I.e. a naive design just adding a markdown file per issue or for all issues will require manual merging all the time. Still, it seems doable.

That only works for your own personal project where you're the only user and contributor. Bug reporting by editing a markdown file (or even something actually usable like an org-mode file or an sqlite or BDB file) isn't going to scale very high and is way more effort than most bug reporters (even technical ones) will be willing to put in.

And even if your users were willing to subject themselves to that, they still need a way to send back those contributions somehow.

Re:GitHub is down by procrastitron on Tuesday April 05, 2016 @10:08AM (#11430470)
git-appraise (https://github.com/google/git-appraise) does this for reviews and there is a tool (https://github.com/google/git-pull-request-mirror) for importing pull requests into the git-appraise format.
Re:GitHub is down by JohnDoe365 on Tuesday April 05, 2016 @05:16AM (#11429011)
What about BitTorrent DHTs?

Or dat http://dat-data.com/

Or Camlistore? https://camlistore.org/

Re:GitHub is down by masklinn on Tuesday April 05, 2016 @05:27AM (#11429067)
The problem of content-addressing — aside from the opaqueness to "shallow" contributions (nobody is going to install a content-addressed distributed filesystem just to report a bug to your software, don't kid yourself) — is what content-addressing means for resource updates. How do I get the most recent comment on the most recent bug report on one of my projects? In fact how do I even discover their existence from knowledge of the project's existence?
Re:GitHub is down by panic on Tuesday April 05, 2016 @06:06AM (#11429213)
You could have separate centralized servers for each project, though, instead of one big point of failure for all the projects.
Re:GitHub is down by icebraining on Tuesday April 05, 2016 @06:12AM (#11429228)
That would make the downtime less correlated, but if it was higher in aggregate, would it be a net benefit?
Re:GitHub is down by panic on Tuesday April 05, 2016 @07:26AM (#11429530)
I'm talking about a traditional sort of model, where each project hosts its own issue tracker, code review, etc. Unless you're working across multiple projects, you'd only care about downtime for your own server, not other people's (except perhaps for dependencies, which should be cached locally anyway).
Re:GitHub is down by systoll on Tuesday April 05, 2016 @10:02AM (#11430412)
So where's the 'big point of failure'?

Unless you're working across multiple projects, it doesn't matter to you that a GitHub outage takes out everyone else's projects at the same time.

Can you beat GitHub's uptime with a self-hosted solution? Sure. But you'll waste more time setting it up & managing it than you'd lose from GitHub downtimes.

Re:GitHub is down by alemhnan on Tuesday April 05, 2016 @05:14AM (#11428993)
Could Ethereum (or a similar concept) be the solution of this kind of problems?
Re:GitHub is down by 7373737373 on Tuesday April 05, 2016 @06:24AM (#11429272)
Together with systems such as ipfs.io, possibly yes. Have a look at https://github.com/whyrusleeping/gx

But there still are many open problems: - incentivised file storage - fair name spaces - search and indexing and more.