I started up my own instance and now I have realized that there’s no reason anyone would join mine instead of any other instance.

That’s no good. What neat stuff would the Fediverse like to see in a Lemmy instance?

  • Follow RSS feeds in your Lemmy feed? I have that already, in a way, but it would be nice to be able to do it for any feed automatically without it being clunky.
  • Follow Mastodon users? Or tags?
  • Embedded video? That seems costly.
  • Hackability? The ability to run your own customized front end? Or good scripting features in the browser console?
  • A better looking UI? This one is functional but it’s not pretty.
  • Better moderation? I have heard the Lemmy tools aren’t that good.
  • Something else?
  • @rglullis@communick.news
    link
    fedilink
    English
    24 months ago
    • Proof of Humanity. There is some work about using Zero Knowledge Proofs as a way to be able to indicate that the owner of a key can also prove ownership of another set of credentials without having to reveal these credentials to third parties. This would allow us to really get rid of bots and sockpuppets.
    • The ability for users to bring their own cryptographic keys and actor id. This way even if a server goes down people could port their whole account over to a different server.
    • Multi-protocol federation.
    • Get rid of downvotes/upvotes and replace it with multi-dimensional scoring/ranking system.
    • User-defined sorting/ranking. I do not want to completely block people, but I do wish to have a system that could boost/de-emphasize posts by certain people on certain topics, and completely ignore them in others.
    • Cooperative media storage and distribution that could leverage the storage from clients as well as servers, something based on bittorrent.
    • Custom widgets that can be attached to a post/community. For example, I’d like to have a play-by-play tracker for basketball/football games.
    • RDF/Semantic Web descriptors. If people are talking about a TV show, or making a list of PC components that they want to review or anything that can be part of a knowledge graph should be linkable and browsable by a specialized browser.
    • Collaborative lists/articles/posts. With the item above, it would be trivial to create wikipedia-style posts where a community can build their “common knowledge” and would make it easier for newcomers to get general recommendations and/or a sense of the community values.
    • @PhilipTheBucket@ponder.catOP
      link
      fedilink
      English
      24 months ago

      This is by far my favorite set of suggestions. This is the kind of hackability fun instance that I would love to be a part of.

      Proof of Humanity. There is some work about using Zero Knowledge Proofs as a way to be able to indicate that the owner of a key can also prove ownership of another set of credentials without having to reveal these credentials to third parties. This would allow us to really get rid of bots and sockpuppets.

      Can you explain more? How would this do anything to prevent sockpuppets? I don’t think they are preventable. I think the closest thing that exists is Something Awful’s forums, where you have to pay $10 to participate and your user can be banned at the drop of a hat if you get out of line, and you’re out $10. So you can run as many sockpuppet accounts as you want, as long as you feel like investing in what it’ll take to keep making new ones.

      That approach works perfectly on SA and I think there’s something to it, but the $10 would be so shocking to the Fediverse mindset that I think it would be impossible for anyone to be on board with it.

      The ability for users to bring their own cryptographic keys and actor id. This way even if a server goes down people could port their whole account over to a different server.

      You can’t bring an actor ID to a new domain name, can you? I can imagine an outlandish solution with each user registering their own domain for their actor, or having one provided by a guaranteed-trustable service, and then the server supporting those “foreign” actors, but it’s definitely not easy. The idea of porting your stuff to a new server is an excellent idea but I think it’s difficult to do with ActivityPub.

      Multi-protocol federation.

      Absolutely.

      Pixelfed has support for most of the Fediverse: Lemmy’s communities, Mastodon’s groups, and Mastodon’s microblogging. I’m thinking about messing around with Pixelfed before going any further with the Lemmy plan. Pixelfed might or might not work, but it might be a pure superset of what Lemmy can do, after some minor UI changes.

      Get rid of downvotes/upvotes and replace it with multi-dimensional scoring/ranking system.

      User-defined sorting/ranking. I do not want to completely block people, but I do wish to have a system that could boost/de-emphasize posts by certain people on certain topics, and completely ignore them in others.

      This is one of the biggest things, to me. I messed around with some code to analyze the network of votes and make global determinations about users, and it worked well. Having the scoring and selection of posts being something that just has some quick math thrown at it but mostly left alone is a big missed opportunity to me.

      Having a powerful hackable framework to customize the feed you’re seeing, or add multiple feeds you can switch between, would be fantastic.

      Cooperative media storage and distribution that could leverage the storage from clients as well as servers, something based on bittorrent.

      I messed around with this too. It’s not simple and I didn’t get very far, but this is a very good idea to me. It also helps with hackability, because once you have that backing store that’s using some model other than HTTP requests to nginx on the central instance, it’s easy to make it writable for client-side plugins. It’s a very, very ambitious thing but I like it very, very much.

      Custom widgets that can be attached to a post/community. For example, I’d like to have a play-by-play tracker for basketball/football games.

      Yes, exactly. I think once of the very next things on my list are seeing how realistically this kind of widget can be added to the Lemmy UI in a way that’s customizable by the user. I think it’s pretty easy. But all of this is work and work is hard, of course.

      RDF/Semantic Web descriptors. If people are talking about a TV show, or making a list of PC components that they want to review or anything that can be part of a knowledge graph should be linkable and browsable by a specialized browser.

      Collaborative lists/articles/posts. With the item above, it would be trivial to create wikipedia-style posts where a community can build their “common knowledge” and would make it easier for newcomers to get general recommendations and/or a sense of the community values.

      This, I didn’t think very much about. If there’s a hackable framework for client-side tools, though, someone who wants to do these things should find it pretty easy.

      This is exactly the type of thing I want to do.

      • @rglullis@communick.news
        link
        fedilink
        English
        1
        edit-2
        4 months ago

        Can you explain more? How would this do anything to prevent sockpuppets?

        Imagine something like a verification check (like Twitter’s old blue check) that is exclusively associated with your national ID. You can have only one of those. If you want to create sockpuppets, you’d have to convince someone else to (a) give them access to their ID and (b) be willing to lose their ability to prove their own identity elsewhere.

        It’s not absolutely safe against bots and sockpuppets, but it surely makes it more expensive than even a $10/account membership.

        Pixelfed has support for most of the Fediverse.

        PIxelfed is still just supporting ActivityPub. I’m talking about multi-protocol communication. A smart client should be able to let you communicate with Lemmy communities, subreddits, Facebook groups and all types of different platforms from a single unified interface. There are plenty of people that think this is something undesirable (like everyone that wants instances to block Threads), but I’d argue that building these integrations with closed platforms would eventually destroy them because they would lose the monopoly on network effects.

        You can’t bring an actor ID to a new domain name, can you?

        No, but you could have a web server that responds to multiple domains. Ideally, the server listening and responding to the AP requests should be able to work with multiple “virtual servers”, instead of having to have only one instance == one domain that we today. AFAIK, only Takahe does this for microblogging.

        • @PhilipTheBucket@ponder.catOP
          link
          fedilink
          English
          34 months ago

          It’s not absolutely safe against bots and sockpuppets, but it surely makes it more expensive than even a $10/account membership.

          I think, sadly, that either sending in your national ID or paying $10 would be unacceptable to so many people that it would make it a lonesome failure of an experiment. I’m on your side about the idea, but I think people would just take the path of least resistance and create their sockpuppets on some other instance, and your main accomplishment would be driving away legitimate users.

          PIxelfed is still just supporting ActivityPub. I’m talking about multi-protocol communication. A smart client should be able to let you communicate with Lemmy communities, subreddits, Facebook groups and all types of different platforms from a single unified interface. There are plenty of people that think this is something undesirable (like everyone that wants instances to block Threads), but I’d argue that building these integrations with closed platforms would eventually destroy them because they would lose the monopoly on network effects.

          I get it. Aren’t there projects that are working on that? Friendica and Emissary? Adding integrations with closed-source networks to those isn’t too hard. At that point, it’s not its own web app anymore, though, more akin to an email program. It’s a good idea but it’s different than what I had in mind. You will also have to deal with API limits or terms of service and legal issues, once you start looping in the closed-source networks.

          No, but you could have a web server that responds to multiple domains. Ideally, the server listening and responding to the AP requests should be able to work with multiple “virtual servers”, instead of having to have only one instance == one domain that we today. AFAIK, only Takahe does this for microblogging.

          Yes, that part’s not overly hard. I’m already doing virtual servers for ponder.cat and rss.ponder.cat, to run them both on the same VPS, and I’ll probably add more virtual servers for development of frontend tweaks if I keep going with Lemmy. Some of the ideas I had in mind for hackable frontends involved wildcard virtual servers to serve people custom “instance” sites off a subdomain that’s different from the actual actor ID instance name.

          What I’m saying is that if someone’s actor ID from the POV of the rest of the Fediverse is still https://ponder.cat/u/rglullis, and ponder.cat goes down, nothing that either ponder.cat or any new instance can do, can “catch” requests that are being directed to that actor ID. You have to make the actor ID either https://rglullis.com/u/rglullis or https://rglullis.sometrustedthirdparty.com/u/rglullis from the beginning, and arrange for ponder.cat to be handling any traffic for those domains, so that you can switch away from the ponder.cat instance later on if you want to.

          Of course, you can tell people that they can either have a ponder.cat user, or a rglullis.com user if they want to buy their own domain for their user, and they can have an actor that will be transferrable from ponder.cat to any other Lemmy server that supports the feature. It wouldn’t work with current Lemmy, but in theory it could be made to work, if someone were willing to make the right Lemmy changes. It would be tough but it might be worth it.

          Overall I think it might be better to address the same issue at the protocol level as some other federated social media networks do, so you’re not introducing crazy new requirements on both the server and user experience side in order for people to be able to transfer their users later.

          • @rglullis@communick.news
            link
            fedilink
            English
            24 months ago

            I think, sadly, that either sending in your national ID

            That’s why I mentioned the idea of “Zero Knowledge Proofs”. Using a ZK-proof, one should be able to prove ownership of an ID without having to reveal it to anyone else.

            At that point, it’s not its own web app anymore, more akin to an email program.

            Yes, exactly. I am not a fan of the current way that the Fediverse is working though, and I think it would be better to stop thinking in terms of “servers/clients” and more in terms of “distributed applilcations”.

    • Handles
      link
      fedilink
      English
      04 months ago

      Get rid of downvotes/upvotes

      This. I haven’t found a way to disable up/downvotes, even just their visibility in the UI. I understand the value of users rating post and comments, however I think the visible metrics turn Reddit and Lemmy alike into competitions for karma points rather than discussion.

      • @rglullis@communick.news
        link
        fedilink
        English
        4
        edit-2
        4 months ago

        Yes, but not just that. For example, the top comment on this thread is just a sarcastic jab at SV startups and not a real answer to the question. This makes it easy to setup a whole comment chain of (imo) completely useless comments and drowns out any chance of a more serious conversation in the context.

        This is not to say that I wish to get rid of all funny/casual commentary that might come off in a discussion, I just wish that I could have some form of context.

        Some comments could be marked as “forgettable” so that servers could just drop them after a while, others should be saved because they are important as a reference. This is what I mean by “multi-dimensional”. I think that downvotes are important to curate “bad content”, but it would be even better if people could also signal why/what that comment is bad.

        • Blaze (he/him)
          link
          fedilink
          English
          24 months ago

          I agree. A slashdot similar system would be nice

          What are tags?

          Tags are text labels you can add to a story that help categorize stories by content or category. Clicking the tag icon will open a text field for tagging. Type in a tag, then press the space bar. Repeat for all tags you’d like to add to the story.

          Note: Adding the same tag more than once does not increase its weight; once is enough. You might, though, tag a story about Western Digital hard drives “wd,” “westerndigital,” and “storage,” or a story about an MIT programming contest “programming,” “competition,” and “mit.” Tags help sort stories, and help you search for related ones. More tags help!

          Everyone can see them! Tags are public and flexible (rather than private and permanent). So one day, we might consolidate and change all “canine” tags to “dog,” say, or define new system tags and usurp more namespace. (Don’t say we didn’t warn you!) Because tags on Slashdot are public, and are used to inform the moderation system, tag abuse can hurt your karma. Please tag in good faith.

          The Firehose is powerful viewing tool for Slashdot content, from comments and journal entries to RSS feeds and story submissions. You can filter and interact with the Firehose in a number of ways. The plus/minus box on the left side of each Firehose entry lets you vote on that item. A context menu will appear when you click on the plus or minus, giving you the option of adding certain tags. You can also expand the submission if you’d like to add other tags, such as “northdakota” or “spaceflight.” Voting and tagging are helpful; they inform other Firehose users, and help the editors decide which ones make it to the front page.

          https://slashdot.org/faq

          • @PhilipTheBucket@ponder.catOP
            link
            fedilink
            English
            34 months ago

            This is a very good idea. Slashdot hit on something very good with their scoring and moderation system, and then the lessons were forgotten in the systems that came after Slashdot.

            There are so many small tweaks like this tagging idea that would improve things, that I think the way to do it is a frontend “plugin” system that can accommodate them without it being a big fandango of tweaking the core to include fifty of these little nubbins all over the codebase.

            Nothing that’s ordained from on high will ever be completely perfect. If you can have a little text box on your custom frontend, where you can tweak your own UI features, and then talk with the instance admin about importing one of those little tweak plugins for the whole site, or for your own community only, that sounds like a huge step forward to me. If you’ve ever added little tweaks to Wordpress, with the custom CSS boxes or by adding a few lines to functions.php, I envision this being similar.

            This is all much more ambitious than I was thinking of when I asked this original question, but it would be a lot of fun to work on. If the result was it going back up into Lemmy, and each instance having its own collection of tweaks and a thriving community of people working on them without needing to disrupt the pace of development on the core, that would be a pretty excellent outcome.