5 ms·
This sort of thing feeds my paranoia about GitHub being a giant single point of failure in the open-source world. I know the argument: Someone, somewhere has
by isomorphic 12y ago
This sort of thing feeds my paranoia about GitHub being a giant single point of failure in the open-source world.
I know the argument: Someone, somewhere has a copy of each repo checked out, so we (the nebulous "we") could reconstruct everything from the diaspora of ".git" directories.
It just bothers me to think how dependent OSS has become upon GitHub.
- Demiurge 12y agoI don't think it's paranoia. I think it factually is a single point of failure, which is a bad thing(tm). And GMail is a single point of failure for my (and my companies) e-mail, and that bothers me too, despite the fact that I'm not doing anything about it :)
- isomorphic 12y agoGoogle is a giant single point of failure. Others would rush to fill the vacuum, but it'd be a brutal few months (years) while we all relied upon Bing. Is there any GitHub-esque outfit waiting in the wings that provides free OSS hosting?
- Twirrim 12y agohttps://bitbucket.org/ https://bitbucket.org/ https://www.codebasehq.com/ https://www.codebasehq.com/ https://www.fogcreek.com/kiln/ https://www.fogcreek.com/kiln/ https://about.gitlab.com/gitlab-com/ https://about.gitlab.com/gitlab-com/ I must admit, I rather like bitbucket, you can get free private repositories with them too.
- smoe 12y agoI can really recommend the open source gitlab for self hosting repos. I have been running it on a ec2 micro instance for 5-10 people over years without a single problem. https://github.com/gitlabhq/gitlabhq https://github.com/gitlabhq/gitlabhq
- jessaustin 12y agoNow there is a FOSS project one might have expected to dogfood. Nothing beats free... b^)
- atomaka 12y agoThey do: https://gitlab.com/gitlab-org/gitlab-ce/ https://gitlab.com/gitlab-org/gitlab-ce/. They maintain a Github mirror to allow for easier contribution. Github is more than just a version control software; it's a community.
- sytse 12y agoThanks for mentioning GitLab, we offer unlimited private repo's and collaborators and an on-premises version too.
- petepete 12y agoWe've been happily using GitLab for months now, can't recommend it highly enough. If there was an open source bug tracking/ticket app that played nicely with it I'd switch all of our teams over to it sooner rather than later.
- technomancy 12y agoGitLab is great for lots of projects; especially internal ones. The inability to control your splash page makes it less than ideal for OSS projects trying to be welcoming to newbies though. (When you navigate to a project page, instead of displaying the readme, it just shows recent commits, etc, which is nice for people working on the project but completely irrelevant to end users.)
- hobarrera 12y agoIt has it's own issue tracking, as well as wikies and everything else github offers.
- petepete 12y agoIt does but GitLabs ticket capabilities are very, very basic.
- colechristensen 12y agoI've tried a few and as far as I can tell they're all pretty good but not quite there.
- JohnTHaller 12y agoThere's also SourceForge, which hosts SVN, Git, Hg, etc and is the largest host of FLOSS applications (Git is the largest host of FLOSS components and web code).
- mcphage 12y agoI'm not sure if it's still the case, but SourceForge used to have an approval process to get a new project / repo set up, which defeats a lot of the utility of GitHub for being able to store whatever projects you want to toss up there.
- JohnTHaller 12y agoI don't recall that ever being the case. And I've used SourceForge since 2005.
- tom9729 12y agoI remember it being the case in 2007/2008. This is the closest thing I could find to a citation. http://www.codeproject.com/Articles/4439/Getting-started-with-a-SourceForge-project http://www.codeproject.com/Articles/4439/Getting-started-wit... "To create a new project you simply register at SourceForge and then submit a new project request. Most projects are approved immediately, and you'll typically get an email notifying you of the approval in ~ 24 hours "
- JohnTHaller 12y agoIt might have happened between when I'd originally registered and the present. It does make sense as SourceForge was providing free FTP uploads for binaries at the time and the automated tools to handle abuse were pretty poor. Lots of folks were looking to abuse it for bandwidth and malware distribution. The tools are better now, which is one reason Github finally added binary releases last year.
- volent 12y agoIf Google goes down, go with duckduckgo instead of bing please :)
- pjc50 12y agoThey're an anonymising frontend to bing with a number of extra search utilities.
- josephlord 12y agoThat is an incorrect massive oversimplification from what I understand: https://duck.co/help/results/sources https://duck.co/help/results/sources
- somenewaccount 12y agoNo, they're not. They have their own crawler and everything.
- hansjorg 12y agoThere's also Gitorious: https://gitorious.org/ https://gitorious.org/ Used by projects like Qt, GnuTLS, Haiku and CMake.
- Demiurge 12y agoI really like bitbucket. They don't have as many features, but free private repos, unlimited academic repos, means I'm not actually a GitHub user, except for the OSS projects that insist on GitHub.
- shurcooL 12y agoThis planet is also a single point of failure. If a meteor strikes, all our code will be lost.
- matthewrudy 12y agoI would love to see someone offer off-planet backup facilities. Not sure who'd be recovering the data post-apocalypse, but at least it'd be there.
- Fuzzwah 12y agoAlways bet on Musk.
- raverbashing 12y agoAt one project I worked, someone created a bug "system will stop working with the end of the world on <last popular End_of_Word prophecy>" (yes, it was a joke) Fortunately the bug was closed.
- mcguire 12y agoWONTFIX?
- Sir_Cmpwn 12y agoThe counter-argument is true, though. I have a server that I'm able to log in via SSH. I just backed up one of my repositories like so: sircmpwn@homura ~/s/K/kernel master> ssh irc.sircmpwn.com git init --bare kernel Initialized empty Git repository in /home/sircmpwn/kernel/ sircmpwn@homura ~/s/K/kernel master> git remote add backup irc.sircmpwn.com:kernel sircmpwn@homura ~/s/K/kernel master> git push backup master Counting objects: 4735, done. Delta compression using up to 8 threads. Compressing objects: 100% (1765/1765), done. Writing objects: 100% (4735/4735), 7.62 MiB | 650.00 KiB/s, done. Total 4735 (delta 2954), reused 4699 (delta 2930) To irc.sircmpwn.com:kernel * [new branch] master -> master
- walterbell 12y agoThere is value in the aggregation of repositories which is separate from individual repos.
- Sir_Cmpwn 12y agoTrue, but it's anything but the end of the world if GitHub vanished from the face of the Earth right now. Everything would be running full steam within a week.
- walterbell 12y agoThere is team and org level authZ and authN data at github that is needed by companies working on cross-company projects. That data is not stored in code repos.
- isomorphic 12y agoI disagree. Many OSS projects rely upon GitHub, especially projects that package or distribute other projects. Sure, everyone would eventually work out their own hosting, but it'd be a nightmare of changing URLs and uneven servers in the interim. I think a week would be extraordinarily optimistic.
- rdtsc 12y agoGood points. There is a silly joke about that even. It usually goes like -- "Gee, I wish someone would invent a decentralized version control system".
- hobarrera 12y agoWell, if GitLab supported cross-site pull requests, we'd have just that.
- jacquesm 12y agoWhy do you think that that is limited to open source? Plenty of businesses utterly rely on github in their workflow.
- isomorphic 12y agoIt's not limited to open source, but commercial enterprises pay for GitHub's services, so at least there's some sort of service agreement. OSS depends upon GitHub's largesse (which is extensive). However, if GitHub changes its mind (deciding, for example to focus on selling code-editing software), or if something goes wrong with the commercial side, then OSS is left high and dry.
- esfandia 12y agoWould a P2P version of GitHub make sense? Each outward-facing local repo would provide a GitHub-like interface for browsing code, submitting PRs etc., and would in addition route repo search requests to neighboring repos using something like a Gnutella protocol.
- curun1r 12y agoI don't think that would work well...Github has too much momentum. But I think open protocols and folding more of the functionality that has been proven out at Github into the core SCM could have a very positive impact. To start with, pull requests could be implemented in the main git tool. They're no longer experimental and many, if not most, git users rely in them in some form or another (Github, Gitlab and BitBucket all support them). Folding them into the core would just standardize all the implementations. It would also be good to define protocols for collaboration. Off the top of my head, that could mean a fork:// browser protocol that would allow a BitBucket user to fork a Github repository and seamlessly submit pull requests back upstream. Some of that is possible today, but there would be some new requirements around federated authentication to enable this (i.e. how to allow a user who is registered with a different service to create a pull request). If the mechanics of interoperability are standardized, people will develop competitors to Github and things will get more decentralized. But, as mentioned above, Github has a lot of momentum and no incentive to cooperate with other providers. The only way they're really forced to work with others is if these changes and standards are coming from the core Git project.
- biomechanica 12y agoWell, there was a project called GitChain*; however, it seems that the project is looking for a new leader. Was a very cool idea. -> http://gitchain.org http://gitchain.org
- paulannesley 12y agoLightweight but great for LANs like the Rails Camp that it was built for: https://github.com/toolmantim/bananajour https://github.com/toolmantim/bananajour
- shurcooL 12y ago> GitHub being a giant single point of failure What is our definition of a "point"? If you have an external hard-drive backup of your laptop, that's 2 points of failure, right? If someone else has 10 external hard-drives that they keep in different places, that's 10 points, yes? But what stops you from calling all those hard-drives "a giant single point of failure"? If all of them are destroyed, the data is lost. I just don't get these arguments... The chances of all GitHub data being lost is probably less likely than BitBucket and SourceForge combined.
- isomorphic 12y agoBy "failure," it never occurred to me to mean a technical or operations failure. I'm thinking: shut down due to the business model not working, or some other business-model variant, such as gradually getting intolerably crappy like SourceForge. Cash flow isn't great; let's introduce "sponsored" code. Etc.
- luch 12y agoYou're right about the 10 hard drives : if you've bought them identically at the same time, it's likely they all gonna fail in a short time span. I've recently heard about the "3,2,1" rule concerning backup : - 3 images of your data (1 original + 2 copies). - 2 types of media (e.g. extHD and DVD) - 1 offshore location (e.g. bank vault, your parents' house,etc.) Of course it's not a golden rule, but it can prevent catastrophic failures.
- hueving 12y agoIt's organizationally a single point of failure. The company could easily decide to shutdown access to all of it's servers and everyone relying on github for issue tracking, etc would be screwed.
- Demiurge 12y agoIn this case my definition of a point is a single remote to github.com/<project> in all the OSS projects .git/config A single issue tracker with hundreds of issues for all these projects. A single database of commiter permissions. Etc.
- agumonkey 12y agoShould there be a limit on the size of any organ, to avoid this bit bus factor ? Like hierarchies starting to be needed after a group reaches 150 people.
- isomorphic 12y agoWell, the current Internet pendulum has swung to nearly the polar opposite of federated services, much to the dismay of my inner software-libre graybeard. Even a duopoly (!) would be preferable to a single vendor.
- frabcus 12y agoBitbucket is extremely good these days!
- agumonkey 12y agoTrue, I was asking this in a topic about systemd vs set of old protocols. It seems that where the universe is headed right now.
- digi_owl 12y agoI seem to recall that IEEE or some such have a rule about there being 2 independent implementations of a spec before they consider it complete.
- Macha 12y agoW3C at least has this.
- lmm 12y agoHow did CSS 2 with its zero implementations ever happen then?
- Macha 12y agoCSS 2 predates the rule. The initial drafts of CSS 2.1 on the other hand, were published in 2002, yet it was 2011 by the time it became a full reccomendation despite having been in use for a long period by that stage. CSS3 colors (i.e. rgba() etc.) also became a full recommendation on the same day. > Two months earlier, in March of 1998, CSS 2 had become a W3C Proposed Recommendation (PR) which meant that it was considered "done" and was simply awaiting a procedural W3C member review and vote. For all practical purposes, nothing else was going to get fixed in CSS 2. There wasn't a Candidate Recommendation (CR) phase back then, as evidence by the fact that no-one (including my Tasman team as part of Microsoft Internet Explorer 5 for the Macintosh) was able to implement CSS 2 as specified. The problems in CSS 2 were far more severe than mere errata - we had to develop a full revision to fix it. http://tantek.com/2011/160/b1/css-2-1-css3-w3c-open-web-standards-practices-learned http://tantek.com/2011/160/b1/css-2-1-css3-w3c-open-web-stan...
- Dewie 12y agoHow hard is it for people to switch, if they want/have to? They might be dependent on GitHub issues. That might be preventable by using some issue tracker that can actually be put under git (like Ditz), though I guess it makes collaboration with non-owners of the repository more difficult. Other than network effect, what else is it that binds people to GitHub?
- hobarrera 12y agoNot 100% accurate. Issues and pull requests (as well as their respective comments) are not in the git repository. They're not easily cloneable either. I'd love to see all that metadata in a separate git repo (just like wikies).