• OpenStars@piefed.social
    link
    fedilink
    English
    arrow-up
    4
    arrow-down
    2
    ·
    edit-2
    1 day ago

    PieFed (the non-tankie Lemmy alternative written in Python rather than Rust) allows for that. Atm it’s fairly primitive unless you make your own instance but ultimately it democratizes the moderation process to allow the end user what they want to see or not. Like instead of “remove” or “allow” content, it can automatically be “collapsed” with an option to uncollapse it whenever someone chooses. And/or labels can be placed next to usernames - like “<2 week old account” or “has 10x more downvotes than upvotes” - except it is actually icons that are used rather than such long phrases. You can put custom icons of any type next to any individual user that you want, for any reason - e.g. to help their comments stand out as you scroll, or to remind you to be careful replying, or whatever custom reason you chose to remind yourself of.

    Edit: and all that I’ve said here is already available. So I guess it’s not so primitive after all, especially when keyword filters get added (new features appear all the time - it being in Python makes its development cycle FAST!), but what I meant is that even more is planned, to further reduce the manual burden of moderation efforts. Also, the entire sidebar appears below every single post, unlike in some apps where it it quite buried behind several clicks. It’s not fully ready for the masses yet but it’s coming along nicely, and already has several features that Lemmy lacks (and vice versa unfortunately).

    Edit 2: based on db0’s comment, I should mention that PieFed also has Mastodon style tags too, on top of not only communities but on top of that too there are Categories of Communities. This is getting confusing to describe so just look at this example - the hierarchy above the post shows the Categories, the tags are below it, and the YouTube link is natively embedded in between.

      • OpenStars@piefed.social
        link
        fedilink
        English
        arrow-up
        3
        arrow-down
        2
        ·
        1 day ago

        Which will lead to faster development?

        Or are you saying that the code will be shittier as a result? I do wonder about that, but also if the errors can get made quickly enough and then resolved, the overall process could still end up being faster?:-P

        • hark@lemmy.world
          link
          fedilink
          English
          arrow-up
          4
          ·
          1 day ago

          Just joking since I’m not a fan of Python’s design choices, but I do worry that as development goes on the tech debt will pile up and will be more difficult to maintain.

          • OpenStars@piefed.social
            link
            fedilink
            English
            arrow-up
            2
            arrow-down
            1
            ·
            23 hours ago

            Is that because Python breaks everything seemingly every time it updates? I don’t know Python well, that’s just what I seem to hear people saying often.

            If so, would it really matter so much in this case, bc it’s not code running on clients so much as a handful of server machines, so couldn’t the specific library version used be mentioned and constrained to be used?

            • calcopiritus@lemmy.world
              link
              fedilink
              English
              arrow-up
              2
              ·
              8 hours ago

              More like because the hardware cost is much higher.

              Devs work on an open source project. They usually don’t expect to get paid for their time, so the fact that “python allows for more features in the same time” doesn’t play as much of a role (I don’t even think this is a fact, more like a theory).

              The hardware does have to get paid though. There’s no one out there building servers and generating energy for them for free. So less the hardware costs, the better.

              Instances AFAIK run on donations. If there are not enough donations to keep the servers up, there is no Lemmy.

              Reddit could afford to be on python because they ran on VC money and made losses year after year. I don’t think that a donation-based platform can afford that.

              • OpenStars@piefed.social
                link
                fedilink
                English
                arrow-up
                1
                arrow-down
                1
                ·
                6 hours ago

                But… how limiting are the computations themselves, at this point? Since the Rexodus, Lemmy has only gotten smaller and smaller - didn’t we start at like 50-55k total active users, while now we are <43k, and that’s in total even while each instance needs to process only a subset of those numbers.

                It’s worthwhile to think about future scalability, but features also help get the users in order to get the content in order to get the donations in order to keep the lights on.

                You could be right ofc, I was just saying here that the reasoning process of Python being able to move forward more quickly seemed to make sense to me naively. But even there, mostly bc it allows for developers to contribute with lower barriers to entry?

            • hark@lemmy.world
              link
              fedilink
              English
              arrow-up
              3
              ·
              20 hours ago

              I don’t like indentation affecting which block code belongs to, its poor type safety (with type hints being a minor band-aid), awful multithreading capabilities (being able to disable the GIL now helps but introduces its own issues), and multiple design decisions which, although make Python flexible and dynamic, make it hard to optimize running Python code and so all the performant libraries are written in something else like C and then you’re stuck having that as a dependency.

              • OpenStars@piefed.social
                link
                fedilink
                English
                arrow-up
                2
                ·
                12 hours ago

                In trying to learn more about it, I copied and pasted code the other day… ofc it broke everything I had previously built up, but invisibly ofc bc why da fuq not. Fortunately copying and pasting code is something that real programmers never, ever do, right? :-P (I use Vim btw)

                The literal creator of Python said that when first learning it, it is best to avoid an IDE. But if that would better handle a copy-paste…

                Also one of the standard tricks in any C++ style language is to purposefully write a single line or block of code that is meant to be ran once then intended to be thrown away - i.e. debugging - in a radically different indentation style so as to call attention to it, whereas in Python it absolutely must blend in with the entire rest of the code block:-(.

                In reading about the situation, Python did not “win” so much as Perl shot and killed itself with the whole 6 vs. Raku situation:-(.

                • hark@lemmy.world
                  link
                  fedilink
                  English
                  arrow-up
                  2
                  ·
                  5 hours ago

                  Yeah, the argument for the indentation in Python is to enforce good formatting, but these days an IDE will do the good formatting for you, so now all that indenting does is make copying and pasting error-prone. Maybe that’s a benefit since it’d force you to look at what you copied and pasted. I’ve also heard about the Python vs Perl thing, but also Python looks a lot more welcoming to a beginner and is easier to pick up. I’m sure Perl fumbling contributed, but a lot of newer projects would’ve probably gone with Python anyway, like the data science stuff where the easy interface is exposed through a Python library and all the messy stuff is just C or C++ underneath.

                  • OpenStars@piefed.social
                    link
                    fedilink
                    English
                    arrow-up
                    2
                    ·
                    edit-2
                    4 hours ago

                    Oh yes, but now aren’t you arguing on my side here, that Python is helpful for PieFed to gain features more rapidly than Rust might?:-D

                    One thing about Perl scripts is that if someone sent one to you and you looked it over and ran it, it would be very likely to function (edit: in the past, this used to be true). That seems no longer true nowadays though, and also the same is not true of Python either, or C++ for that matter. Even so, Python’s package management is world infamous for being annoying, and yet… what else is there that would be more worthwhile to use?

                    And against all of that backdrop, the Lemmy developers chose Rust, a language which isn’t even finished yet and is therefore even more likely to change - in MAJOR ways - than any of these others. I am not even criticizing that, just saying that with that niche covered, it will be nice to see what Python (PieFed) or Java (Sublinks) can offer as well.:-)