I’ve been thinking lately about the concept of the fediverse and repurposing it toward the goal of creating a free and open, decentralized, federated network of vendors that run instances or groups of vendors that run one instance together. These instances would broadcast inventory updates to each node that they federate with. It would start off niche and gain traction that way before branching out into other retail types.

Is this a feasible idea? Has any pulled this off? Wayfair, Amazon, Shopify, and Etsy are already suffering from enshittification. Someone needs to take the inventory out of the walled gardens and back into the customer’s hands. I shouldn’t have to rely on Google to find products I want. There are vendors that want to sell me stuff nearby…it’s just a problem of connecting the user to the content…and this seems like a no-brainer.


I’d love to have a discussion about this. I am seriously considering creating a rolling fork of Lemmy that would maintain parity but also add this functionality but I want to talk to experts and weigh the pros and cons before embarking on such an ambitious project.

edit: I also started a community ( https://infosec.pub/c/federated_inventory ) dedicated to the discussion of this idea. I’m trying to get vendors in a budding local industry to fund the creation of this system, which would branch out into all retail industries eventually along with the network effect.

  • rho50@lemmy.nz
    link
    fedilink
    arrow-up
    25
    ·
    11 months ago

    It’s an interesting idea! I think there are many such applications for federation protocols.

    A few thoughts/questions:

    • Ideally you’ll need a stable identifier for each specific product. Most small online stores I use have product names riddled with typos, so a way to tackle that would be nice.
    • What’s the data model? Would each store be an ActivityPub Actor? Like each one would have a username and publish inventory updates?
    • Where do these updates go (maybe something akin to a Lemmy “community”)?
    • If you’re just relying on stores’ self-reported stock levels, where’s the benefit of using a federated model? Could you just build an open source app that scrapes retailers’ websites and collates that information?
    • Is the eventual goal that this competes with Amazon et al? I.e. it becomes an actual marketplace, perhaps with a “buy” and “sell” Action, and where vendors’ instances are effectively web stores?
    • demesisx@infosec.pubOP
      link
      fedilink
      English
      arrow-up
      6
      ·
      edit-2
      11 months ago

      My goal is to cut out the middleman and allow vendors to wrestle back control from services like Amazon. I work in the film industry where we watched our suggestions to studio heads get ignored.

      To give you an idea of how I tend to think, years ago, my idea was this to solve the fragmentation/walled garden problem in video streaming:

      • every company submits video content to a central store
      • users can watch anything they want. They just have to pay a monthly fee
      • that fee gets divvyed up to the companies that produced the media watched. Money only goes to companies that had content that was viewed and is a direct percentage of the monthly revenue of each user.

      • Ideally you’ll need a stable identifier for each specific product. Most small online stores I use have product names riddled with typos, so a way to tackle that would be nice.

      Ideally, I’d start in a budding industry, slowly building and iterating upon an industry stylebook for their retail items that can be iterated upon by all users who are able to submit merchandise. I’m thinking of a whole separate place where the structure of each industry’s API can be tuned and made polymorphic with related but different item types.

      • What’s the data model? Would each store be an ActivityPub Actor? Like each one would have a username and publish inventory updates?

      That’s the current vision, though I could also see an ecosystem of incentivized crowd-sourcing of out-of-reach inventories. That’s another idea I have concerning decentralized oracles but, if crypto tied into this retail thing eventually, a lot of the cool new technologies that crypto offers (digital identity, oracles, SPO’s that operate alongside instances, and so, so much more) could certainly come along for the ride.

      • Where do these updates go (maybe something akin to a Lemmy “community”)?

      A lot like a Lemmy community but reformatted to work with inventories. Think of any web store. It could be identical to that but the data could be coming from multiple sources at once. I think there could be so many different possibilities for how this data could be mapped onto a front end that that I’d hate to pigeonhole this based on my preconceived notions…the flexibility might even be part of the beauty of this idea.

      • If you’re just relying on stores’ self-reported stock levels, where’s the benefit of using a federated model? Could you just build an open source app that scrapes retailers’ websites and collates that information?

      I was actually attempting to do that but then quickly came up with this idea instead because it felt like I wold be further contributing to enshittification in an entirely enshittified dystopian hellscape if I just did the same thing as everyone else again. So many other sites contain warchests of scraped metadata. Very few are truly egalitarian like the fediverse can be, IMO.

      • Is the eventual goal that this competes with Amazon et al? I.e. it becomes an actual marketplace, perhaps with a “buy” and “sell” Action, and where vendors’ instances are effectively web stores?

      Buying and selling features will be essential to draw people away from Amazon. Problem is, that’s one of the hardest probems to tackle in an elegant, dependable way. I can see similarities to OpenBazaar using a atomic wallets that accept any kind of crypto and convert it to any other…but I intend to spin this tech up with existing technologies to start.

  • Hexasphertate@sh.itjust.works
    link
    fedilink
    arrow-up
    18
    ·
    11 months ago

    A federated marketplace could be interesting but there are some fundamental issues that would need to be addressed.

    If the vendor and vendee are on different instances how will payment be securely transmitted? What if there is a dispute, which instance Admin would have final say? Will the instance operator get a cut, if so how does that work? What’s stopping my competition from opening an instance to check my stock level? What if I want to buy multiple items that are on different instances, do I have to check out on each instance?

    If you can iron out the kinks this idea could make a lot of sense as a DNM as there wouldn’t be a centralized server to shut down and being FOSS would allow for auditing of the marketplace which just isn’t possible currently.

    • dfyx@lemmy.helios42.de
      link
      fedilink
      arrow-up
      1
      ·
      11 months ago

      That kind of scenario is exactly what cryptocurrencies were originally designed for. Too bad that didn’t work out and now they are mostly used by scammers.

          • Carighan Maconar@lemmy.world
            link
            fedilink
            arrow-up
            6
            ·
            11 months ago

            It is a very inefficient database that in return has a potentially unlimited distribution. Importantly however, unlike normal distributed databases it does not gain any performance benefit from its distribution, only redundancy. There are implementations for “normal” databases of course that also only focus on redundancy, but in that case the database itself is already orders of magnitude faster than any distributed ledger like crypto currencies are.

            Since such a system would ultimately need a single or a finite number of known access points anyways (API access for the vendor software systems) any benefit from being freely distributable is immediately lost. Likewise, the fact that the data is “shared ownership” has no meaning in the actual world as legally such a concept is not recognized, and we’d just be looking at companies willingly openly sharing their data, which they could already do by simply providing public interfaces.

            In other words, just having a regular database is - as always - far more efficient and suffers 0 downsides in the particular use case. And it’s incredibly difficult to find any use case for crypto ledgers that have any benefits at all, nevermind actually meaningful ones.

    • demesisx@infosec.pubOP
      link
      fedilink
      English
      arrow-up
      5
      ·
      edit-2
      11 months ago

      Perhaps eventually, they’ll need to once the network effect takes hold.

      But I asked myself the same question. I think vendors could distinguish themselves by offering special deals to people who specifically sign up for their instance, a tiered membership plan, payed memberships, etc. Maybe exclusive items for members only.

      I’d be interested to hear more ideas but right now, that’s the gist of the benefits I can see. The other obvious benefit I can think of is the inclusivity of it all. If this idea took hold, it eventually wouldn’t be wise for vendors to abstain from using this service once customers are using it to find places to shop….and since it’s free, it isn’t something that businesses have to worry about like they do with other services like this that charge those businesses in order to list them.

          • CallumWells@lemmy.ml
            link
            fedilink
            English
            arrow-up
            2
            ·
            11 months ago

            Spell checking doesn’t help with that either, since it actually is a word. Though with the amount of people I see use “payed” instead of “paid” and the dictionaries being mostly descriptive instead of prescriptive (as far as I know) it’ll probably end up being a recognized conjugation (is that the right word?) of that version of “to pay”

    • howrar@lemmy.ca
      link
      fedilink
      arrow-up
      11
      ·
      11 months ago

      You have a problem with commercializing commerce? I don’t understand.

      • rigatti@lemmy.world
        link
        fedilink
        English
        arrow-up
        12
        ·
        11 months ago

        Yeah, this seems like it would take one layer of profit out of commerce, which would be good for consumers, assuming it works well.

    • demesisx@infosec.pubOP
      link
      fedilink
      English
      arrow-up
      7
      ·
      11 months ago

      You make a great points…and I’m actually a Communist…but I’m a starving communist.

      I am a software engineer who has been out of the film industry on comp for the past 6 months (broke my foot on the job). I have been teaching myself Haskell and Purescript because that’s what I like. Anyway, I had this idea because I couldn’t find any products I was looking for locally. I came up with this because I didn’t see what I wanted as a consumer.

      I can either go back to work breaking my back, hauling feeder cable for the film industry or I can create something that helps wrestle control away from Amazon while also making me some money. I’m sorry that I live in a capitalist society but I do. Also, I think you might agree that I could have gone ultra-greedy with this idea but I carefully considered enshittification (that we see time and again when greedy bastards look for profit motives) and decided to try and spin up a free and open source system to wrestle control away from assholes like Amazon etc WITHOUT those same enshittification factors built in.

  • aodhsishaj@lemmy.world
    link
    fedilink
    arrow-up
    8
    ·
    11 months ago

    Look at Enterprise Resource Planning software as they handle inventories with millions of skus. You’ll have to build a database so you’ll want to look at federation there as well. I know you can do distributed clusters. This would also be a good use of blockchain as you’d be able to have historical pricing that way.

    A good place to start may be the below article

    https://www.dolthub.com/blog/2022-05-27-decentralized-database/

    • demesisx@infosec.pubOP
      link
      fedilink
      English
      arrow-up
      2
      ·
      edit-2
      11 months ago

      Thank you so much for your help. I’ll definitely look into it.

      A few thoughts: true decentalization, as your article says, brings with it many requirements for trustlessness. That’s particularly why I think that “instance operators” or the retailers listing the goods would be the only users with the permission to submit inventory items at first. That would solve the trust part of the trilemma until sufficiently decentralized technologies (crowd sourced oracles that list goods) are mature and understood enough to slowly and methoidcally be slotted in to replace them.

  • MomoTimeToDie@sh.itjust.works
    link
    fedilink
    arrow-up
    8
    ·
    11 months ago

    The biggest issue would be that of security. Unlike a platform like Amazon marketplace, where you have Amazon processing the payment, and providing a fair bit of guarantee, this would be the wild west since anyone, anywhere could spin up an instance and start defrauding people and stealing their card info. Hell, even just flooding bogus listings would severely cripple usability.

  • hitwright@lemmy.world
    link
    fedilink
    arrow-up
    6
    ·
    11 months ago

    I have had the exact same idea, ever since I found out about fediverse. It’s just difficult to find ways to trust of the network. Never managed to think of a way for easy self-moderation. Money does bring an insane perversion to try and game the system.

    I’m guessing the federation part if done correctly with moderation might bring more trust to the network. Since this is an idea about physical commerce, I’m guessing that having a “store” gps location could be useful for partitioning the network node search priority. Highest chance that you would like to buy from your neighbour and not from across the continent first. Otherwise with the amount of items that will be scanned is nightmare-ish.

    Somewhere in the comments there is a mention about dropping crypto as a source of trust. If the store needs trust of a user, it doesn’t sound unreasonable to have your national identity there.

    Other source of trust and identity, could be friends. It’s easy to trust direct friends and friend of friend. Knowing that it most likely will have up to 5 jumps, that could be a way to “check” if you are trusted on the network. That does bring the bootstrapping problem

    Hope my ramblings will be somewhat useful.

    • demesisx@infosec.pubOP
      link
      fedilink
      English
      arrow-up
      3
      ·
      edit-2
      11 months ago

      I’m guessing my idea is slightly different because I had been considering tying crypto to Lemmy then a bunch of people talked me out of it and I sort of agree (one guy mentioned the cobra effect then walked away and I was like 😧…he’s right). Crypto doesn’t always need to be tied into everything though e-commerce is an obvious one. There are so many issues with crypto though: for one, which technology would you choose? Because I would choose Cardano and immediately that would ignite some tribalism where someone else thinks it needs to be on an ERC-20 token or a DAO or both.

      Even though I am an actual DApp developer, I’d rather create the pure technology to allow vendors to broadcast their inventories and create small pockets of vendor alliances in the form of a multi vendor instance with membership perks. I intend to try my small, less ambitious, non crypto idea in niche, budding industries to gain network effect.

      Also, I’d think DID’s would corrupt the system even more since which central arbiter is chosen has a centralizing effect, anonymity goes away, trustless payments become optional rather than by default, and governments can use that information to track someone. Maybe my approach is to take it one step at a time and yours is to completely strip out all technologies for decentralized ones. Again, I sincerely love crypto but I want to make sure the simplest part of my idea is the focus for a minimum viable product.

      The GPS coordinates thing is certainly a good point.

      I think it could be a lot like the other fediverse apps where the front end of the app is actually where the distinction often lies…which is up to independent app devs to innovate on.

      I’d be creating my MVP for small, local, budding industries to help work out the kinks in preparation for something as vast and comprehensive as the vision you have is. Also, I’d think, since it can be niche products and industries at first, perhaps inventories could be batched based on (as you say) geography, type, industry, etc. You certainly wouldn’t want a firehose of every Lemmy community and perhaps this would be no different. It’s all in how you consume it, I’m guessing.

  • TotallyHuman@lemmy.ca
    link
    fedilink
    arrow-up
    5
    ·
    11 months ago

    In terms of the trust problem, one easy way to solve it would be to just require real names. Instance admins (maybe also moderators) must post an address, a name, and a (redacted) ID. A registered corporation would also work. Then, they would provide escrow, taking the payment but only giving it to the seller once receipt has been confirmed. The concern would be fraud on the part of the purchaser. There’s no foolproof way to fix that, but if both buyers and sellers have “reputation” scores it would be pretty easy to tell if someone’s lying.

    The admin could also skim 1-2% off every transaction, and then put that into a fund to pay buyers in the case of complaints. That way both the seller and buyer are satisfied, and reputation scores can be used to boot probable fraudsters.

    Either way, the system would also allow buyers and sellers to arrange payment in-person, in which case there would be no guarantee needed and the admin wouldn’t take a cut.

    This system centralizes power in a small number of people who can be sued. Everyone else stays anonymous, and if they’re bad actors the admins deal with them. If an admin is a bad actor, their name and address is posted publicly for the world to see. Obvious problem here is that fewer people would want to be admins, but maybe it would be possible to set up a corporate structure where the owner’s identity is revealed only if they’re being sued – I’m not a lawyer and you’d have to talk to one. Maybe there could also be a way for them to post records of every transaction in a verifiable yet anonymous fashion, to prove they aren’t skimming anything off the top (beyond whatever they say they’re taking for server fees).

      • Valmond@lemmy.mindoki.com
        link
        fedilink
        arrow-up
        1
        ·
        11 months ago

        It’s a protocol for like anyone digging in to it and post stuff.

        If you don’t heavily secure who is talking to who, then any script kiddie can send “Choco tablets at 50 cents available in n Denver” anywhere.

        You can use it, but as it isn’t made for inventory, you’ll have to do lots of things to circumvent things just to make it work correctly. Also, it’s not a proven protocol yet so it will maybe change, and then all your fixes goes out the window, or continue to work but just become unsecure, or wrecks havoc.

        You should probably just go for a centralised (because you need control) protocol, like client server for example.

        Cheers and it’s cool of you thinking up things!

        • demesisx@infosec.pubOP
          link
          fedilink
          English
          arrow-up
          2
          ·
          edit-2
          11 months ago

          It wouldn’t be used directly for transactions because that is (IMO) an incredibly unwise idea for a pub/sub protocol since there is zero privacy. That’s not what the pub/sub protocol was invented to do and I wouldn’t be crazy enough to try and make it do that.

          I’m actually only proposing its use as an open standard to BROADCAST inventories and/or changes in those inventories. Those changes would only be allowed to be broadcast by authenticated parties to prevent too much data being sent out at once.

          Each item’s metadata may contain links to the url of that item in the vendors web store/instance but it would never actually be used to directly execute a transaction. It’s like trying to get a train to fly. It’s just not designed for it.

          The only decentralized payment technology that could or even should be paired with this technology would be a very robust cryptocurrency technology like Cardano, IMO. But I think it wise to work on the inventory broadcast aspect because crypto has such a bad reputation at the moment and I’d hate to mess with an idea while it is on the vine.

          • Valmond@lemmy.mindoki.com
            link
            fedilink
            arrow-up
            1
            ·
            11 months ago

            Well I told you why it’s a bad idea, but I feel you really want to use the tech so go ahead and good luck I guess!

            • demesisx@infosec.pubOP
              link
              fedilink
              English
              arrow-up
              2
              ·
              edit-2
              11 months ago

              I feel that you really don’t understand what I’m getting at.

              I have 0 intention to use this technology to process or handle financial transactions.

              I intend to use this technology to create an open standard for the

              broadcast

              of changes to an inventory.

              They are two completely different but closely related things.

    • demesisx@infosec.pubOP
      link
      fedilink
      English
      arrow-up
      4
      ·
      edit-2
      11 months ago

      I like OpenBazaar a lot but when people hear the words crypto, they run the other way. Don’t get me wrong. I’m a huge proponent of crypto (I moderate a ton of crypto communities) but I just don’t think it’s necessary in this case. I think this idea doesn’t necessarily need incentivized computation or many of the amazing features that crypto could offer (which also introduce some tradeoffs as well). Of course, if this were to go 100% crypto-based, it would be a lot easier for me to spin up digital transactions and incorporate them to the system but for now, this idea is a bit more like OpenBazaar minus crypto and adding a bit of centralization and federation.

      Thanks for the downvote. I can see you’re just here to be disingenuous.