14 ms·
It's interesting that the HN community continues to make reference to the prospect of a decentralized internet when Git was built to be decentralized in the fir
by nyxtom 8y ago
It's interesting that the HN community continues to make reference to the prospect of a decentralized internet when Git was built to be decentralized in the first place. In spite of this, we all have congregated around GitHub for the community and are shocked when the centralized source we've been using gets acquired by a company we don't trust. That's sort of the whole point of centralization, you can't trust it. Maybe this event will finally shift things back into a decentralized direction.
- naiveai 8y agoThe whole world's demanding it. No one really knows how to do it efficiently, it seems.
- toyg 8y agoIt’s not just about efficiency, it’s about responsibility. I love decentralization when I can avoid dealing with BigCo, I hate it when I’m responsible for fighting spam, ensuring my services stay up, not getting hacked, and so on. All of these tasks are a requirement as soon as collaboration is in the picture.
- naiveai 8y agoYou've got a point there. I'm just so sick of all this. The Internet's a great thing, but it just seems to be going downhill with corporate interests.
- QML 8y agoI disagree. The popularity of GitHub amongst the programming community means that ease of use / convenience is more important than the notion of “decentralization”. Otherwise, people would already be setting up their servers for hosting git repos.
- naiveai 8y agoThat's really what I meant by efficiency. Ease of use increases that for businesses, that's the only reason they really care about ease of use of products they want to buy.
- acidburnNSA 8y agoGood point. It's not too crazy to have people behind major open-source efforts get their own VPS's and run Phabricator or Gitlab. With a universal login akin to OAuth maybe it's doable.
- jaegerpicker 8y agoThat's insane, not only do developers and maintainers devote a huge part of their life to major open-source efforts, now they are expected to spend more time and money setting up, admining, and securing their own private servers? That's a great way to destroy Open Source projects. Very few people would be able/willing to put that much effort into it.
- acidburnNSA 8y agoI could envision pre-configured vps images maintained in the open by volunteers to make it more practical. They could have unattended-upgrades configured for major patching and the community could help migrate between major LTS releases. It isn't ideal but it might be doable at least for some projects. Maybe devops people want new ways to contribute to open source too!
- nyxtom 8y agoIsn't Gitlab pretty much that already?
- StudentStuff 8y agoHow is running a bit of infrastructure so lethal? Most of my libre projects aren't on Github, and running your own Git server isn't terribly difficult.
- kakwa_ 8y agoRunning your own git server is far from impossible. But you have to take into account various items. 1) the cost of the server, you don't need a powerful one, a 5 or 10$ a month box is more than enough, but it constitute a barrier for some, not necessarily because they can't afford it, but because they don't think their projects is worth it. 2) You have to maintain it properly, applying security fixes, having backups and maybe some basic monitoring. It's not high and complex maintenance, but it's far from a fire and forget thing. 3) Contribution from external sources becomes harder, you generally don't have basic "fork" and PR buttons in the simpler hosting git options, and if you opt for something like gitlab or gogs, external contributors as to register in your instance. 4) Github is really convenient if you are searching for open source tools that does a specific task in a specific language. Having various self hosted git servers makes it harder to discover new tools. I do run my own Gogs instance which mirrors my github repositories, it's not heavy maintenance, but it's not exactly nothing. And I'm pretty sure nobody, except bots, knows it exists.
- youseecomrade 8y agoI think the network effect is too great to ignore. I would guess the number of potential contributors you get just by using GitHub, where many people have an account and know the workflow/UI, is bigger than any other place. 5 years from now when GitLab is acquired by Google we'll have to migrate again.
- shmerl 8y agoAt least Gitlab can be forked in case of disaster. You can't do it for Github.
- gsich 8y agoWell you don't need to. You can use gitlab or gitea.
- rurban 8y agoBut how do you transport your issues and CI integration and deployment? The googlecode to github transport was already a desaster. Code is easy, it's the rest which has the value.
- gsich 8y agohttps://developer.github.com/v3/issues/#list-issues https://developer.github.com/v3/issues/#list-issues then reimport it with whatever your target system provides. Edit your CI scripts. Your CI should not be dependent on Github to work, besides maybe pulling code from it. But then it's just a simple change.
- rurban 8y agoIssue importing rarely works. It needs a lot of related changes all over, which cannot be automated. I edit my CI scripts almost daily, until the workflow is acceptable. I try all the others constantly, but it's a headache and needs weeks of time until it works good enough. Github only hosts the results and releases, but still. Just last week I spent again a full day to get the encrypted auth working for github deployment from some random new CI. My CI's do work together with connected hooks, e.g. if appveyor and travis passes, merge to master, then appveyor deploys the binaries to github, then the release is published, which sets a tag, which triggers travis to make distcheck and deploy to the very same release on github. On github I have static pages with custom domain names for free. On github I can host releases and dailies for free. Someone needs to pay for it. Better a big company which backs this. I'm a bit sceptical with Microsoft as I'm sceptical with Google. You can never trust PM's in big companies. But so far I give them the benefit of doubt, they clearly love github (unlike google which didn't love code.google), and we'll all see.
- beenBoutIT 8y agoTremendous point.
- saurik 8y ago> Maybe this event will finally shift things back into a decentralized direction. People say this every time stuff like this happens, and yet people never learn :/.
- troy786 8y ago> Talks about a decentralized environment Keeps his tools related to Cydia closed-source...
- jtl999 8y agoWhat's the story with that?
- troy786 8y agoBasically Cydia is an apt manager for jailbroken iOS devices and while Cydia itself is open-source, the tools required to get tweak injection (Mobile Substrate) are not, making Cydia itself useless for newer jailbreaks released. Making Cydia not only a monopoly but centralizing the tools required to make it useful at all.
- skratlo 8y agoWhere is the Github on Blockchain project?
- more-coffee 8y agoThis. As with so many things, laziness has driven developers to be using Github as single point of truth. And it is cringeworthy to see how few developers actually know what git is and that Github is just a company monetizing opensource software. About time everyone got a wakeup call.
- skohan 8y agoTo be fair, github provides a lot of value-add on top of plain git. Having UI for access control and integration with issue tracking and CI tools gives you a lot that you would not get out of the box with git. That said, I have always been uneasy with one central player hosting a huge percentage of open source projects.
- st26 8y agoCentralization has an undeniable fundamental attraction. Everything, really, seems to naturally trend towards centralization, and then major scandals reverse the trend. We will probably swing back and forth between the two in perpetuity. The whole darn internet was built to be decentralized. And yet we all use GMail, the same handful of DNS servers, the same short list of major trunk hubs, the same shrinking list of bitcoin mining pools, etc.
- zzzcpan 8y ago> Centralization has an undeniable fundamental attraction. Everything, really, seems to naturally trend towards centralization How so? Centralization is merely enforced by the government and incentivized by the system it exists in.
- danso 8y agoMany humans are social creatures and like to congregate.
- stupidcar 8y agoIf centralisation only occurs due to government enforcement, then how did government itself come into existence? It's the purest example of centralisation, after all. There must be something that incentivised centralisation even in the absence of government.
- apozem 8y agoBen Thompson at Stratechery has been banging the centralization drum for a while. His take is the sheer scale of the internet imbues tremendous value to any centralized service that can organize it (e.g. what Google does for web pages or Facebook does for your friends). If this is the case then the internet may end up more centralized than previous forms of media and communication. I hope that's wrong, but it seems to be happening right in front of us.
- diplocorp 8y agoSo that's how Stratechery is spelled! I have been listening to Exponent for a while and failed to find the site on Google.
- closeparen 8y agoThe decentralization advantage of Git over prior VCSes is technical, not political. You could always stand up a competing SVN instance.
- trevor-e 8y agoI think that's quite a stretch, the reasons for decentralized version control (practical use) are far different than a decentralized internet (humanitarianism).
- matthewmacleod 8y agoWell, centralisation also has a huge number of benefits, so it's not really a surprise. The more important thing is to be in a position that makes it harder to be locked-in to a centralised provider. Fortunately Git makes that relatively easy – I could switch all of my work to Gitlab or Bitbucket with relatively little work. There's more obviously a problem where Github is being used for issue tracking, PRs, and the general open-source community. I'm sure there will be a few scripts available to make migrating issues etc. to another provider relatively painless, since there's no great distributed solution for this at the moment. That just leaves the community aspect, which is going to be the hard bit…
- pera 8y agoIndeed. It would be awesome if GitLab could make use of ActivityPub to create such decentralized network (à la Mastodon)...
- Libbum 8y agoThis is currently being investigated: https://gitlab.com/gitlab-org/gitlab-ee/issues/4517 https://gitlab.com/gitlab-org/gitlab-ee/issues/4517
- EastSmith 8y agoTotally agree. For me decentralized means desktop clients or own cloud. Own cloud is more expensive to maintain. Desktop app are more expensive to develop and maintain too.
- AaronFriel 8y agoHumans* aren't built for decentralization. We can only keep so many unique names in our head a time, only so many connections. I don't have any papers to link to on this, but I think it's safe to say that's how things are - if not we wouldn't have created cities, national identities, and of course, newsgroups, message boards, centralized package managers and distributions, and yes, source code repositories. There is something nice about knowing, with a high degree of certainty, that any given open source project (or any thing) is in one of a few places, and if I don't know where that is I can ask for help to find those places by their names.
- zAy0LfpBZLC8mAC 8y agoThat's mixing up a whole lot of concepts. Centralization is about power. Cities generally have very little centralization. Almost no interactions in a city go through a central entity, similarly for countries. Concentration is something different than centralization. Newsgroups have very little centralization. Everyone reads and writes through different servers, and you can trivially switch servers without any impact on who you can communicate with. Agreeing on names and federation is something different than centralization. ... There is absolutely no need to have software development happen on one proprietary platform in order to be able to search for software project in one centralized location. What you need for that is a search engine. Or even multiple competing search engines that can all index the same set of software projects.
- AaronFriel 8y agoJust because cities, countries, and newsgroups allow lots of different entities to participate doesn't mean they aren't centralizing. The strong incentives to place like with like result in forums with topics, subforums with subtopics. Districts become heterogeneous and we get things like Chinatown or the Castro District. And these agglomerations of like with like occur spontaneously at pretty much every scale. You're quite literally missing the forest for the trees.
- zAy0LfpBZLC8mAC 8y ago
- madeofpalk 8y agoIf Git/Github is the epitome of the developer's centralised experience, then I full heartedly welcome that. As others have mentioned, there's certainly advantages to centralised systems like Github's network graph, issues, etc. But at the end of the day, everyone on GitHub still cares a whole lot more about the code, and due to the very nature of the protocol that's something that'll always be able to be taken elsewhere. It's not like "if they announce shut down you can export your data", there's a very high lightlyhood you have already done that and you have the full repo on your local machine. I feel like Github is the best possible compromise - centralised network and features that's built on a decentralised protocol and easily able to be taken elsewhere.
- TheAceOfHearts 8y agoYou can easily migrate your repo to a different service, so having lots of developers rely on GitHub isn't really a big deal. Many large projects have GitHub mirrors. I'd say the biggest issue is that Git doesn't include better built-in support for issues, wikis, PRs / code reviews, and releases. Compare that to Fossil [0], which lets you bundle up everything into a single file. If there was better built-in support you could migrate everything more easily to self-hosted alternatives like Gitea [1]. Regardless, it's possible to migrate manually, even if it's a bit more work. [0] https://www.fossil-scm.org/index.html/doc/trunk/www/index.wiki https://www.fossil-scm.org/index.html/doc/trunk/www/index.wi... [1] https://gitea.io/en-US/ https://gitea.io/en-US/
- Fice 8y agoI'm glad to see Fossil mentioned here. Yet the real problem is not in the technical aspects and possibilities of project hosting migration, it's the dependence of the majority of open-source developers on GitHub's centralized social network.
- komali2 8y agoHopefully if this turns GitHub evil, other social networks can be leveraged to assist in a population migration. Like, someone posting a link on Twitter to wherever the repo will exist in the future. This makes me wonder how hard it is to securely host a git server on my own. I'll start googling but I bet the answer is gonna be "hard."
- mistersquid 8y agoThe only hard part is securing your server, since setting up a remote git server only requires two things: 1. Running git. 2. Providing SSH access. But even securing the server is not necessarily difficult, depending on the level of risk acceptable for your purposes. Put another way, reasonable security is not too hard and AWS makes reasonable security fairly easy. Even self-hosted *nix servers can be pretty secure. However to seriously harden a service against skilled and determined attackers requires an experienced team and even that may not be enough.
- EpicEng 8y ago>Maybe this event will finally shift things back into a decentralized direction. Absolutely no chance, and I'm fine with that. Sorry, but I don't feel like spinning up a slhit server and managing all that goes along with it. I just want my code hosted somewhere that others can access. These meta issues are just noise and don't bother me (or 95%+ of the people using GH) one bit.
- Kalium 8y agoDecentralization is a wonderful idea. It brings with it benefits that are technical, architectural, and social. Yet is also carries with it its own set of costs and risks. Bluntly, I doubt this will shock the world of software development into being less centralized. The practical benefits of centralization are, apparently, too large to be readily overcome.
- yrashk 8y ago(shameless plug) I recently built a tool (SIT, https://sit.fyi https://sit.fyi) that has decentralizes issue tracking and similar workflows, giving full days ownership and independence of storage and transport. Can be (and actively being) used with Git, or other SCMs.
- Kalium 8y agoVery nice! Looks cool. What does your tool offer to make sure I never have to deal with abusive users, server patches, or a split-brain scenario?
- yrashk 8y agoIt doesn't rely on servers (it's striving to be a "true serverless" application) so server patches are perhaps taken care of with this :) Split-brain is the "normal mode" of operations for SIT -- it's a decentralized tooling so it expects something to not be available to you until it has been received by you -- at that point it is sitting in its entirety on your computer and you don't need an internet connection. Abusive users -- depends on a scenario and "gatekeeping" checks -- known/vouched for GPG keys can be used to enforce some policies. Admittedly, this being a new tool, this angle hasn't been worked on extensively (if at all) -- but the way SIT is architectured is to potentially allow for all kinds of scenarios thanks to its flexibility and simplicity.
- Kalium 8y agoI could thank you for your time, for your effort, for humoring me. Etc. etc. etc. I'll cut to the chase. Your answer is basically "You have to do extra work". Which is the wrong answer when trying to replace tools whose major selling is reducing the amount of maintenance work I have to do. This response, unfortunately, commits the basic error of trying to solve a social problem with a technological solution. I don't want to take on the work of guarding the gates. I don't want to guard against potential abuse. I want these things done for me, so I can focus on the parts I care about. The ability to put in work to monitor abuse and access control in a decentralized manner is not a significant improvement over the ability to do so in a centralized manner. Oh, and if it interacts with other computers at all then I have to worry about server maintenance. A machine is only truly serverless in isolation. Which would make your tool interesting, but potentially less than maximally useful.
- Iv 8y agoI think we all trusted github because of git: we know that worst case was that github disappeared overnight, erasing all repositories, and in that case we all would still have distributed backups to restart it. So we had limited trust in the centralized missions we gave it: communications, issues, pull requests. I am sure that as soon as a good tool allows to do that in a decentralized fashion, we will switch to it.
- interfixus 8y ago> In spite of this, we all have congregated around GitHub Nearly all. I never got into the swing of it - always expecting a thing like this to happen sooner or later. Honestly, I shall not be sad if the world starts beating a path to somewhere else now.
- nyxtom 8y agoSaw this on another post related to gitlab proposal for federation support. That would bring us closer to a much nicer ecosystem https://gitlab.com/gitlab-org/gitlab-ee/issues/4517 https://gitlab.com/gitlab-org/gitlab-ee/issues/4517
- thomastjeffery 8y agoMost ISPs don't let you forward ports, so decentralization is difficult for most people. Most people also don't have a server running constantly, so a centralized service is convenient.
- carapace 8y agoAnd there it is. "Git" "hub" could be considered an oxymoron. The adoption of this proprietary closed-source veneer over git by FOSS developers has always been ironical to the point of farcical. Now the other shoe has dropped.
- auslander 8y ago> Git was built to be decentralized in the first place Git was built to track changes and resolve collisions, if I get it right.
- kuberstone 8y agoThis is why GH is popular it's vakue is in supporting a central hub for oss projects