It’s long, but well divided into sections and worth every second of it.

  • wazowski@lemmy.ml
    link
    fedilink
    arrow-up
    1
    ·
    3 years ago

    Yes. Git repositories are, effectively, blockchains. Blockchains (understood as in the link: as data organized in linked blocks, roughly) can be useful in anti data-tampering applications. Or in auditing applications.

    well, yes, except in the ways that actually matter, for example, you can hard reset a git branch and erase all the data after that, a git repository is usually centrally controlled by the few ppl who own it or are contributors to it, git repositories don’t have any inherent hosting in and of themselves (your git repo can be created offline and never be reachable by anyone, in fact, most git repos are like this)

    so, unlike a git repository, a blockchain could allow you store data that is

    • immutable (undeletable data)

    • publicly available for anyone to read

    • publicly available for anyone to write (in a way so that it can’t be spammed to infinity and rendered useless)

    • always online

    which enables you to do things like authentication 🤷‍♀️, which you can’t do with git

    See, this is where you lose me. Adding this whole “financial” part to this is what gets us into problems. You can reward for things without using blockchains with distributed consensus mechanisms (a very special types of blockchains, that because of cryptocurrencies et al became somehow synonymous with “blockchain” in general).

    could you elaborate here? for example, how would you replace something like filecoin, which helps track where/how much/how long etc a particular piece of data is, and rewards ppl storing it with tokens?

    The problem with DAOs is that they are effectively bug bounty programs with the rewards for finding bugs up to the whole value of the DAO. Smart contracts are, effectively, immutable (one of the points made by cryptocurrency proponents over and over again and billed as a good thing, ironically). Humans make mistakes. Coding is difficult. So DAOs will contain bugs, and it happens over and over and over again, just look at Web3 Is Going Just Great.

    Not to mention the first and famous DAO exploit that led to Ethereum literally hard-forking to roll it back. The reason I keep mentioning this DAO Eth hard-fork is because it shows very clearly that all the hand-waving about cryptocurrencies, blockchains, decentralization, independence, “personal responsibility”, and all the other taking points is just that: hand waving. Where the rubber hits the road and with enough financial stake on the line, it’s all negotiable. Blacklisted wallets are another great example of this.

    it’s true for any piece of software, and there have always been dangerous exploits, this doesn’t mean we shouldn’t use software

    you’re right about the distinction that with DAOs and blockchains, bc everything exists within the digital realm and most actions are completely irreversible (unlike, say, a server, which can be hacked, but you will still always have the physical machine with you), but this is the price you pay for decentralization, and in my opinion, it’s worth it in certain scenarios

    one such scenario is a decentralised git hosting platform, where the data on which a DAO can act (the git repository) has no inherent value, that is, if you steal it, you can’t sell it, bc owners will just copy it and create another project, nothing of value is lost, except the fact that you now have to re-erect the governing structure from the ground up

    it’s a subjective point whether such risks are worth the benefits, and i think it’s fine to disagree about this one

    I’ve been looking at this scene since the BTC genesis block. I have yet to find legitimate applications of “these technologies” (blockchains with distributed consensus, roughly) that are not incidental compared to the amount of scams etc happening based on a given cryptocurrency/token/whatever. If you know any, I’m all ears.

    right of my mind would be radicle, which is a decentralized code hosting platform, or 3box, which provides authentication services, i’m a blockchain developer, so you prolly shouldn’t ask me

    to conclude my comment, i would like to reiterate that decentralized technologies like blockchain certainly have a cost to them: the fact that everything exists digitally, is therefore often irreversible and unforgiving, and you have to have some sort of investment (time, money, compute) in order to have controlled write access, and it’s up to you to decide whether these sacrifices are worth it compared to traditional technologies

    • rysiekOP
      link
      fedilink
      arrow-up
      1
      ·
      3 years ago

      you can hard reset a git branch and erase all the data after that

      First of all, that’s misleading. Yes you can do that, but only for your copy of the repo, or the remote if you can force-push to it. Other people’s copies can still contain the data you were trying to remove. Hilariously, this leads to certain difficulties Github tries very hard to ignore.

      a git repository is usually centrally controlled by the few ppl who own it or are contributors to it

      Again, demonstrably untrue. It’s trivial to fork and every copy is a full repository, with its complete history. This is exactly how people save projects that are removed from major platforms like Github, for example.

      git repositories don’t have any inherent hosting in and of themselves (your git repo can be created offline and never be reachable by anyone, in fact, most git repos are like this)

      How is this a bad thing? Not everything has to be always constantly accessible on-line.

      Also, there is no “inherent hosting” for NFTs etc either: the images they are minted for are kept off-chain, after all! Which also leads to hilarity.

      so, unlike a git repository, a blockchain could allow you store data that is

      • immutable (undeletable data)

      Demonstrably not true:

      Is it more difficult to do than with git repos? Hard to say, because git repos and their copies are independent of each other, so there is no way to enforce deletion of some data as effectively, as it was done with the cases above.

      It’s also interesting to consider who and how gets to make these decisions. At least in case of Bitcoin above it was developers pushing the change in code, and users just updating their software. Many might not have even known or noticed such a change came about.

      It’s not hard to imagine a scenario where developers push such crucial changes (or a malicious actor tricks them to do so) and users just upgrade without knowing that now history was perhaps altered.

      • publicly available for anyone to read

      Git repos can also be public, and many are. Not sure how this is a game-changer you make it seem to be.

      • publicly available for anyone to write (in a way so that it can’t be spammed to infinity and rendered useless)

      No, not everyone. On a lot of blockchains the gas fees are becoming prohibitively high. So it’s becoming a “pay to play” situation.

      • always online

      Again, demonstrably not true, even for Ethereum.

      which enables you to do things like authentication 🤷‍♀️, which you can’t do with git

      Git is not a tool for authentication. But there are better tools for authentication that do not require a blockchain at all.

      In the end, there’s going to be a database somewhere, whether on a blockchain, or a more traditional one. Blockchains are not necessary for this, and I don’t see how they bring anything useful to this particular field.

      could you elaborate here? for example, how would you replace something like filecoin, which helps track where/how much/how long etc a particular piece of data is, and rewards ppl storing it with tokens?

      You are aware that there is a whole data storage industry, right? As in, companies you can buy such service from? On plenty of levels, using plenty of protocols and software tools, with plenty different rates and plans and whatnot.

      There is little reason to bolt a blockchain to this. It’s simply wasteful, and doesn’t actually solve any problem.

      it’s true for any piece of software, and there have always been dangerous exploits, this doesn’t mean we shouldn’t use software

      No, but knowing how error-prone programming is, we should really not pretend it makes sense to make software (smart contracts are software) and deploy it in a way that updating it to fix bugs is extremely hard and prohibitively costly. Which is exactly what happens with DAOs and other blockchain-based smart-contracts.

      The problem is not that software has bugs. The problem is in insisting on trying to make software immutable and pretending this is a good idea.

      you’re right about the distinction that with DAOs and blockchains, bc everything exists within the digital realm and most actions are completely irreversible (unlike, say, a server, which can be hacked, but you will still always have the physical machine with you), but this is the price you pay for decentralization, and in my opinion, it’s worth it in certain scenarios

      Decentralization can be achieved without blockchains. Decentralized, federated protocols exists and have existed for almost half a century now. We’re using one right now to have this conversation.

      And yes, “in certain scenarios” perhaps, but there are very very few scenarios where it actually makes sense. And so far blockchains with distributed consensus have been crammed into everything, for no good reason.

      it’s a subjective point whether such risks are worth the benefits, and i think it’s fine to disagree about this one

      Sure. Although I would posit that these risks (including the slow suffocating death of humanity on this planet that we are slowly cooking ourselves on) are very very hard to justify with any perceived gains cryptocurrencies/NFTs/web3 have actually delivered so far. Meanwhile, the CO2 emitted to mine all this remains very very real.

      right of my mind would be radicle, which is a decentralized code hosting platform, or 3box, which provides authentication services, i’m a blockchain developer, so you prolly shouldn’t ask me

      I really don’t see the benefit. The problem with centralized code hosting on platforms like Microsoft Github can be solved by… federated code and issue hosting. Git already lends itself to federated MRs/PRs, and there is work being done on issue federation too.

      Blockchain-based authentication services just strike me as a solution in search of a problem. I can host my own OIDC/SAML identity service easily if I don’t want to use any of the large providers, and plenty of services are already compatible with OIDC/SAML.

      • wazowski@lemmy.ml
        link
        fedilink
        arrow-up
        1
        ·
        edit-2
        3 years ago

        my main point was partially lost in the increasingly lengthy quotation trees caused by the git tangent, which in turn resulted from my improper definition of the word blockchain, causing it to include technically correct variants of blockchain (like git), but ultimately not related to my point

        by using the term blockchain i refer to copies of series of cryptographically linked pieces of data, continually (with exceptions of contingencies, but still near 100%) and publicly hosted by multiple peers, containing a (deliberately designed and publicly known) mechanism by which entity A would be able to append a piece of data to existing series of pieces of data (following the rules of said mechanism), given that A has made an investment of some sort (money, time, computing power, space or similar, but necessarily fungible resource), and have this change propagated to all nodes, who host said copies of series of pieces of data of their own volition

        this list of parameters constituting the definition of blockchain is something no other technology i’m aware of can provide

        in my opinion, any other combination of technologies emulates this set of parameters imperfectly and with compromises which i wouldn’t want to accept, even despite all of the legitimate drawbacks you mentioned

        edit: at this point i can only propose to agree to disagree, because after spending like an hour trying to write up a meticulously crafted comment to leave no room for interpretation i did not intend for (and erasing that comment afterward), i think that there’s no objective way to quantify the overall benefits/drawbacks of any set of technologies in order to definitely prove that one set of said technologies is better/worse than another

        • rysiekOP
          link
          fedilink
          arrow-up
          1
          ·
          edit-2
          3 years ago

          by using the term blockchain (…)

          Sure. That’s what I refer to as distributed consensus blockchains.

          this list of parameters constituting the definition of blockchain is something no other technology i’m aware of can provide

          I would agree. What I question is if this particular set of parameters is actually useful in most contexts that this technology is pushed in.

          in my opinion, any other combination of technologies emulates this set of parameters imperfectly and with compromises which i wouldn’t want to accept, even despite all of the legitimate drawbacks you mentioned

          It’s not about emulating these specific parameters. It’s about asking if this combination of parameters is actually useful for something. And so far, from watching the scene for quite a while (and myself being quite excited about that tech initially), I cannot say I see how it is.

          Every problem I have seen distributed consensus blockchains have been so far used for seems to have a solution that does not require such blockchains, which doesn’t have drawbacks associated with such blockchains.

          Incidentally, the reason I do find Nano coin interesting is specifically because there is no single global distributed consensus blockchain in it. So there is no mining. There is, however, a proof-of-stake-ish solution to solving edge cases or malicious attempts at double spending, and that’s where I expect serious problems to eventually be found.

          Please don’t read this as endorsement of Nano. I am merely giving an example of a system (that happens to use blockchains, but not globally distributed consensus blockchains) that solves a problem (sending money outside of the banking system, globally), without relying on the same set of parameters you mentioned, and thus avoiding many of the problems.

          There is a world where we could focus on such projects. But there’s too much money already pumped into all the stuff on globally distributed consensus blockchains already, and too much bullshit peddling and shilling noise that crowds these out. Which is yet another reason why I am very critical of the whole crypto scene.

          • wazowski@lemmy.ml
            link
            fedilink
            arrow-up
            1
            ·
            3 years ago

            Every problem I have seen distributed consensus blockchains have been so far used for seems to have a solution that does not require such blockchains, which doesn’t have drawbacks associated with such blockchains.

            a solution which doesn’t have some problems associated with blockchains, but introduce their own problems, which do not exist with blockchain space

            for example, you mentioned federated code hosting or social media platforms (like lemme), in this case, you eliminate certain problems exclusive to blockchains, but simultaneously introduce other problems, like more centralisation and potential for censorship (instances in the fediverse are controller by individual ppl, who have virtually complete control over that instance, and these instances are accessed using http and dns, the former of which having little resistance to censorship and the latter being mostly very centralised), which are problems already solved by blockchains

            so once again, it’s a question of what you value more and what’s you’re ready to sacrifice

            • rysiekOP
              link
              fedilink
              arrow-up
              1
              ·
              3 years ago

              for example, you mentioned federated code hosting or social media platforms (like lemme), in this case, you eliminate certain problems exclusive to blockchains, but simultaneously introduce other problems, like more centralisation and potential for censorship (instances in the fediverse are controller by individual ppl, who have virtually complete control over that instance, and these instances are accessed using http and dns, the former of which having little resistance to censorship and the latter being mostly very centralised), which are problems already solved by blockchains

              These problems are not solved by blockchains.

              Between developers pushing updates that users might not necessarily even be aware of or understand the consequences of, proof-of-stake blockchains being open to abuse due to concentration of ownership and thus voting power, proof-of-work blockchains experiencing mining pooling which concentrates effective power in the hands of people who control the pools - centralization of power effectively still remains a problem. It happens differently, on a different level, but it’s far from “solved”.

              And federated solutions might even be more resilient to such secondary centralization simply by virtue of operating on the level of communities built around specific instances instead of the whole network.

              The basic unit of sustainable human life is a village, not a singular human being. That is still surprisingly valid in the digital world. That’s what blockchain people seem to get wrong.